Как добавить количество просмотров записей в WordPress?
Чтобы добавить счётчик просмотров записей в WordPress с использованием Bootstrap 5, нужно создать функцию для отслеживания просмотров каждой записи, а затем вывести эту информацию на страницах записей и в архивах.
Шаги для реализации:
- Добавление кода для подсчета просмотров
Функция для добавления и сохранения количества просмотров в метаполе записей. - Вывод количества просмотров в шаблоне
Выводим количество просмотров на страницах записей и в архивах. - Опционально: стилизация с помощью Bootstrap 5
Добавляем красивые иконки и оформление счётчика.
1. Функция для подсчета просмотров
Добавьте следующий код в файл functions.php
вашей темы WordPress:
// Функция для получения количества просмотров
function get_post_views($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count == ''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 просмотров";
}
return $count . ' просмотров';
}
// Функция для увеличения количества просмотров
function set_post_views($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count == ''){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
} else {
$count++;
update_post_meta($postID, $count_key, $count);
}
}
// Удаляем функцию из основного запроса, чтобы избежать дублирования подсчетов
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 );
Эта функция будет хранить количество просмотров каждой записи в метаполе post_views_count
.
2. Увеличение количества просмотров при загрузке записи
Теперь нужно сделать так, чтобы при посещении страницы записи увеличивалось количество просмотров. Для этого используйте хук wp_head
:
// Увеличиваем количество просмотров записи при её просмотре
function track_post_views($post_id) {
if (!is_single()) return; // Если это не одиночная запись, не увеличиваем счетчик
if (empty($post_id)) {
global $post;
$post_id = $post->ID;
}
set_post_views($post_id);
}
add_action('wp_head', 'track_post_views');
3. Вывод количества просмотров
Теперь мы можем вывести количество просмотров на странице записи или на главной странице/в архивах.
Вставьте это в нужное место в файле single.php
для вывода на странице записи:
<?php echo get_post_views(get_the_ID()); ?>
Для архива записей (например, в archive.php
или index.php
):
<div class="post-views">
<i class="bi bi-eye"></i> <!-- Иконка глаз Bootstrap 5 -->
<?php echo get_post_views(get_the_ID()); ?>
</div>
4. Стилизация с Bootstrap 5
Чтобы стилизовать количество просмотров с использованием Bootstrap 5, можно добавить иконку просмотра и стили:
<span class="badge bg-secondary">
<i class="bi bi-eye"></i> <?php echo get_post_views(get_the_ID()); ?>
</span>
Не забудьте подключить иконки Bootstrap 5 в header.php
, если еще не сделали это:
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons/font/bootstrap-icons.css" rel="stylesheet">
5. Добавление стилей (опционально)
Добавьте несколько CSS-стилей для улучшения внешнего вида:
.post-views {
font-size: 14px;
color: #6c757d;
margin-top: 10px;
}
Итог
Теперь у вас есть счётчик просмотров записей на WordPress, который сохраняет количество просмотров для каждой записи и выводит эту информацию с красивым оформлением через Bootstrap 5.