Гость
Обновленные темы Популярные темы Активные пользователи
Создание типовых квестов 3 30.03.2020 в 15:13 от 2024end S.T.A.L.K.E.R. - UE4 0 29.03.2020 в 16:19 от Бармен S.T.A.L.K.E.R - Группа Cтрелка 0 22.03.2020 в 16:41 от Бармен Школы для The Sims 4 0 20.03.2020 в 09:36 от 2024end Хроники Кайдана 0 16.03.2020 в 00:17 от Бармен Игра Душ - Новое Начало 0 15.03.2020 в 13:28 от Бармен «Doomed to Eternal Torment» - Обречённый на вечные муки 1 15.03.2020 в 12:53 от Бармен Иконки групп для synthira 18 14.03.2020 в 23:53 от LENA_D Красивые анимированные кнопки Action rip Бармен 0 11.03.2020 в 02:24 от Бармен Моды от Dumbaby The Sims 4 modder | 18+ mods 32 27.02.2020 в 09:33 от 2024end
2024end 3869

  • Страница 1 из 1
  • 1
Форум — Synthira.Ru » Web-Раздел » Wordpress » Ajax отправка комментариев в Wordpess без плагинов (by Apocalypse)
Ajax отправка комментариев в Wordpess без плагинов
Администраторы
Кол-во постов: 3869
Репутация: 14
Регистрация: 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
Поиск: