Обновленные темы Популярные темы Активные пользователи
NLC 7. Правки и модификации 10 19.10.2020 в 23:53 от Rokc55 Halloween 2020 паутина с пауком для uCoz rip Бармен 0 17.10.2020 в 14:31 от Бармен Dark Path (ОБТ) 1 14.10.2020 в 01:37 от Бармен S.T.A.Z WP 0 14.10.2020 в 01:11 от Бармен Переводы модов для Sims 4 41 10.10.2020 в 15:01 от 2024end Новый Арсенал 7 1 09.10.2020 в 03:20 от Бармен Dollchan 8: Infinity 1 08.10.2020 в 01:38 от Бармен Short story - Intruders 0 08.10.2020 в 01:02 от Бармен Обновление от 6 октября, 2020 / 1.67.45.1020 0 06.10.2020 в 20:57 от 2024end Битая ссылка 44 03.10.2020 в 11:31 от 2024end
2024end 4013
Zero 25

  • Страница 1 из 1
  • 1
Форум — Synthira.Ru » Web-Раздел » Wordpress » Ajax отправка комментариев в Wordpess без плагинов (by Apocalypse)
Ajax отправка комментариев в Wordpess без плагинов
Администраторы
Кол-во постов: 4013
Репутация: 30
Регистрация: 22.07.2017
Статус: Не в сети
 Автор темы | Суббота, 03.08.2019, 11:21 | Сообщение # 1

Данное решение выполнено на чистом jQuery. Предусмотрено всё, что я мог протестировать у себя на сайте: вывод ошибки, если комментарий не отправлен, правильная отправка ответа на комментарий, правильная подгрузка нового комментария, если до этого не было оставлено ни одного комментария

Установка:

В файле footer.php вашей темы в самый низ вставьте:
Код
<script>
// AJAX отправка комментариев WP от Apocalypse
$ = jQuery;
$(function() {
var input = $('#commentform'), submit = $('#submit');
input.submit(function() {
submit.attr('disabled', 'disabled').val('Отправка комментария...');
$.post('/wp-comments-post.php', input.serialize(), function(a) {            
}).done(function(a) {
if($(a).text().indexOf('ОШИБКА') != -1) {
submit.val('Ошибка отправки комментария').css('background-color', '#b3002d');
} else {
submit.val('Комментарий успешно отправлен').css('background-color', '#549c47');
input.find('#comment').val('').focus();
if($('.comment-respond #cancel-comment-reply-link').size() != 0) {
$('.comment-respond #cancel-comment-reply-link').click();
};
$.get(location.href, function(b) {
if($('ol.comment-list').size() == 0) {
$('#respond').before('<ol class="comment-list">' + $('ol.comment-list', b).html() + '</ol>');
} else {
$('ol.comment-list').stop().fadeTo(500, 1).html($('ol.comment-list', b).html());
}
});
};
setTimeout(function() {
submit.removeAttr('disabled').removeAttr('style').val('Отправить комментарий');
}, 3000);
}).fail(function() {
submit.val('Ошибка отправки комментария');
setTimeout(function() {
submit.removeAttr('disabled').removeAttr('style').val('Отправить комментарий');
}, 3000);
});
return false;
});
$('#commentform #comment').keydown(function(event) {
if(event.keyCode == 13 && event.ctrlKey) {
$('#commentform').submit();
return false;
}
});
});
</script>

P.S. В качестве бонуса ваши пользователи смогут отправлять комментарии при нажатии CTRL + ENTER

[grayb]Источник: https://imapo.ru/
Автор: Apocalypse[/grayb]
Форум — Synthira.Ru » Web-Раздел » Wordpress » Ajax отправка комментариев в Wordpess без плагинов (by Apocalypse)
  • Страница 1 из 1
  • 1
Поиск: