6 способов получить популярные публикации из WordPress API без использования плагина

Получение популярных публикаций из WordPress — обычное требование для многих веб-сайтов. Хотя существует несколько плагинов, которые упрощают эту задачу, эту функциональность также можно реализовать, не полагаясь на какие-либо сторонние плагины. В этой статье мы рассмотрим шесть различных методов получения популярных публикаций из API WordPress на примерах кода.

Метод 1: использование WordPress REST API
WordPress REST API предоставляет конечные точки для доступа к различным данным, включая публикации. Чтобы получить популярные публикации, вы можете отправить GET-запрос к конечной точке /wp/v2/postsс параметрами orderbyи order, установленными для сортировки сообщений по популярности. Вот пример использования JavaScript:

fetch('/wp-json/wp/v2/posts?orderby=meta_value_num&meta_key=post_views_count&order=desc')
  .then(response => response.json())
  .then(posts => {
    // Process the retrieved popular posts
    console.log(posts);
  })
  .catch(error => {
    console.error(error);
  });

Метод 2: использование настраиваемых метаполей
Вы можете добавить настраиваемое метаполе к каждому сообщению, чтобы хранить данные о популярности. Затем вы можете запросить сообщения на основе значения этого метаполя. Вот пример использования настраиваемого метаполя с именем popularity_count:

$popular_posts = new WP_Query(array(
    'meta_key' => 'popularity_count',
    'orderby' => 'meta_value_num',
    'order' => 'DESC',
    'posts_per_page' => 5
));
while ($popular_posts->have_posts()) {
    $popular_posts->the_post();
    // Display the popular post
}

Метод 3: отслеживание просмотров сообщений
Вы можете отслеживать просмотры сообщений, используя комбинацию файлов cookie и специального кода. Каждый раз, когда пользователь посещает публикацию, вы увеличиваете счетчик просмотров. Позже вы можете запросить сообщения на основе количества просмотров. Вот пример использования PHP:

function track_post_views($post_id) {
    $count_key = 'post_views_count';
    $count = get_post_meta($post_id, $count_key, true);
    if ($count === '') {
        $count = 0;
        delete_post_meta($post_id, $count_key);
        add_post_meta($post_id, $count_key, '0');
    } else {
        $count++;
        update_post_meta($post_id, $count_key, $count);
    }
}
// Add this line to your single.php file to track views
track_post_views(get_the_ID());

Метод 4: использование Google Analytics
Если у вас интегрирована Google Analytics с вашим сайтом WordPress, вы можете получать популярные сообщения на основе просмотров страниц, отслеживаемых Google Analytics. Вы можете использовать API Google Analytics для программного получения этих данных.

Метод 5: использование статистики Jetpack
Если у вас установлен плагин Jetpack, вы можете использовать его встроенный модуль статистики для получения популярных сообщений. Jetpack предоставляет API, который позволяет программно получать доступ к статистическим данным.

Метод 6: использование пользовательских запросов к базе данных
Если вы хорошо владеете SQL, вы можете напрямую запросить базу данных WordPress для получения популярных сообщений на основе определенных критериев, таких как просмотры сообщений или количество комментариев.

В этой статье мы рассмотрели шесть различных методов получения популярных публикаций из API WordPress без использования каких-либо плагинов. Эти методы обеспечивают гибкость и позволяют настроить логику в соответствии с вашими конкретными требованиями. Внедрив эти методы, вы сможете улучшить функциональность своего веб-сайта, сохраняя при этом контроль над кодовой базой.