Аякс загрузка комментариев
Помогите с созданием аякс загрузки всех комментариев.
По умолчанию хочу выводить 20 комментов а все остальные нужно уже вывести при нажатии кнопки "показать все комментарии"
Вот нашел код, который помогает это реализовать с помощью GET запроса
Реализовать на аяксе такой функционал было бы просто шикарно, но боюсь, что сам я не справлюсь.
if( isset($_GET['all_comments']) ) $args['per_page'] = 0; // тут вызов функции wp_list_comments( $args );
Здравствуйте.
Ajax принципиально состоит из трех частей - это:
В общем что хочу донести. Дать вам готовый код всего этого хозяйства трудоемко. Советую попытаться самому сделать, и, если что-то не получится, отточить фрагменты тут совместно
Вот что получилось и даже работает, но нужна тонкая настройка
Вывожу первые 10 комментов стандартной функцией wp_list_comments
Дальше идет аякс при клике на h5
Показать все комментарии
Вот функция которая срабатывает и выводит следующих 10 комм. при клике
function gid_load() { $comments = get_comments(array( 'post_id' => 7322, 'status' => 'approve' // комментарии прошедшие модерацию )); // Формируем вывод списка полученных комментариев wp_list_comments(array( 'callback' => 'mytheme_comment', 'page' => 2, 'per_page' => 10, // Пагинация комментариев - по 10 на страницу 'reverse_top_level' => false // Показываем последние комментарии в начале ), $comments); wp_die(); }Ну в общем и сам скрипт
jQuery(document).ready(function($){ $('h5').click(function(){ $.ajax({ type: "POST", url: gidurl.url, data: { action: 'gid_action', }, success: function(res){ var j = $("#archi"); j.html(res); }, error: function(){ alert('Error!'); } }); return false; }); });Теперь это до ума довести нужно
Первое и самое главное
Функция должна выводить все оставшиеся коменты начиная со второй страницы.
Значение 'per_page' => 10 можно указать какое угодно, но если указать значение 20, то срабатывать оно будет лишь в тех записях, где есть 20 и более коментов, если комментов меньше 20 ничего не работает.
Было бы классно сделать, как в админке при клике на ссылку Показать ещё комментарии выводит следующих 10 комментов, а потом еще 10 и т.д.