количество публикаций с “Загрузить ещё”

Вопрос или проблема

Я использую плагин Ajax Load More для запроса постов и у меня есть система фильтров, чтобы отфильтровать посты в цикле. Я пытаюсь добавить счетчик, который будет сообщать “Ваш поиск вернул X постов”, где X – это количество отображаемых постов, соответствующих текущим критериям.

Мне удалось получить общее количество постов, но я не смог получить текущее количество постов, отображаемых через Ajax Load More. Я не нашел много информации, когда искал это.

Есть ли у кого-нибудь идея, как отобразить количество текущих постов, отображаемых с помощью Ajax Load More, а не общее количество всех постов?

Вы можете получить (текущее) количество отображаемых постов из offset.
Поскольку это ajax-загрузка постов для wp, у него должны быть номера смещения.
Таким образом, вы можете отобразить число следующим образом

Javascript

var offset = 4;
return $.ajax({
        url: ajaxurl,
        type: "POST",
        data: data,
        success: function(returnData) {
        // отобразить номер смещения в div .post-number
         $('div.post-number').html('Это количество отображаемых постов="+ offset);
        }

 }), offset += 4;

HTML

<div class="post-number"></div>

Вы можете добавить это под div loadmore


Я не очень уверен в плагине Ajax Load More.

Если вы просто хотите настроить плагин Ajax Load More, вам следует обратиться к автору этого плагина.

Ответ или решение

Подсчет текущего количества постов при использовании Ajax Load More

При работе с плагином Ajax Load More в WordPress, вам может понадобиться отобразить количество постов, соответствующих текущим критериям поиска. Это может быть вызовом, особенно когда вы уже получили общее количество постов, но не знаете, как отобразить количество постов в текущей загрузке.

Шаги для реализации

Чтобы отобразить количество текущих постов, вам нужно использовать переменную offset, которая доступна в Ajax-запросах. Давайте подробно рассмотрим, как это сделать.

  1. Настройка JavaScript: В вашем JavaScript коде, вы можете отслеживать количество загруженных постов. Используйте переменную offset, чтобы подсчитать количество постов, загруженных на данный момент.

    Пример кода:

    var offset = 0;
    var postsPerPage = 4; // Количество постов, загружаемых за один раз
    
    function loadMorePosts() {
       var data = {
           action: 'load_more', // Действие для запроса
           offset: offset,
           // другие параметры...
       };
    
       $.ajax({
           url: ajaxurl,
           type: "POST",
           data: data,
           success: function(returnData) {
               // Обновите HTML с новыми постами
               $('#post-container').append(returnData);
    
               // Обновите счетчик количества отображаемых постов
               offset += postsPerPage;  // Увеличивайте offset на количество загруженных постов
               $('div.post-number').html('Ваш поиск вернул ' + offset + ' постов');
           }
       });
    }
    
    $(document).on('click', '#load-more-button', function() {
       loadMorePosts();
    });
  2. HTML-структура: Убедитесь, что у вас есть место в HTML-коде для отображения количества постов, например:

    <div class="post-number">Ваш поиск вернул 0 постов</div>
    <div id="post-container"></div>
    <button id="load-more-button">Загрузить еще</button>
  3. Инициализация: При первой загрузке страницы, установите начальное значение offset в 0 и отобразите инициализированное сообщение:

    $(document).ready(function(){
       $('div.post-number').html('Ваш поиск вернул ' + offset + ' постов');
    });

Заключение

Таким образом, вы можете динамически обновлять количество отображаемых постов с помощью Ajax Load More. Это позволит вашему пользователю получать актуальную информацию о количестве постов, соответствующих запросу. Рекомендуется тестировать реализацию на различных устройствах и в разных браузерах для обеспечения кроссбраузерной совместимости и лучшего пользовательского опыта.

Если у вас возникнут дополнительные вопросы о плагине Ajax Load More или его настройке, обязательно проконсультируйтесь с документацией или обратитесь к разработчикам плагина.

Оцените материал
Добавить комментарий

Капча загружается...