Получение популярных публикаций из 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 без использования каких-либо плагинов. Эти методы обеспечивают гибкость и позволяют настроить логику в соответствии с вашими конкретными требованиями. Внедрив эти методы, вы сможете улучшить функциональность своего веб-сайта, сохраняя при этом контроль над кодовой базой.