Отзывы с оценками — важный элемент, который помогает повысить доверие к вашему сайту и улучшить конверсию. В этой статье разберём, как создать функционал отзывов с оценками в WordPress, используя популярные и надёжные плагины. Также продемонстрируем пример реализации собственной функции для вывода среднего рейтинга с помощью кода.
Выбор плагина для отзывов с рейтингом в WordPress
Существует множество решений, которые позволяют добавить отзывы с оценками на сайт. Рассмотрим несколько популярных плагинов, которые подходят для разных задач и уровней пользователя.
1. WP Customer Reviews
Простой и бесплатный плагин, который позволяет принимать отзывы с оценками на любую страницу или запись. Отлично подходит для небольших сайтов.
- Поддержка модерации отзывов;
- Возможность включать оценки по нескольким критериям;
- Лёгкая интеграция с темой.
Для установки достаточно найти плагин в репозитории WordPress и активировать его.
2. Site Reviews
Более функциональный плагин с возможностью выводить отзывы в виде виджетов, шорткодами или блоками Gutenberg. Есть поддержка Google Rich Snippets, что улучшает SEO.
- Фильтрация и сортировка отзывов по рейтингу;
- Поддержка CAPTCHA для защиты от спама;
- Возможность отправки уведомлений администратору.
3. WP Review Pro от MyThemeShop
Премиум-плагин с расширенными возможностями: разные типы рейтингов (звёздочки, проценты, баллы), интеграция с WooCommerce, адаптивный дизайн.
- Поддержка нескольких критериев оценки;
- Вывод рейтинга в виде красивых блоков и виджетов;
- Гибкие настройки внешнего вида.
Подробнее о WP Review Pro и других продуктах MyThemeShop можно узнать на wpshop.ru.
Как добавить отзывы с оценками вручную: пример кода
Если вы хотите реализовать кастомный функционал, без использования плагинов, можно хранить оценки и отзывы в метаданных записей и выводить их на странице. Рассмотрим пример, как это сделать.
Добавление метаполя для оценки в админке
Для этого создадим метабокс с помощью хука add_meta_box и сохраним значение рейтинга.
function wp0_add_rating_metabox() {
add_meta_box(
'wp0_rating',
'Рейтинг записи',
'wp0_rating_metabox_callback',
'post',
'side',
'default'
);
}
add_action('add_meta_boxes', 'wp0_add_rating_metabox');
function wp0_rating_metabox_callback($post) {
wp_nonce_field('wp0_save_rating', 'wp0_rating_nonce');
$value = get_post_meta($post->ID, '_wp0_rating', true);
echo '<label for="wp0_rating_field">Оценка (1-5):</label> ';
echo '<input type="number" id="wp0_rating_field" name="wp0_rating_field" min="1" max="5" value="' . esc_attr($value) . '" />';
}
function wp0_save_rating($post_id) {
if (!isset($_POST['wp0_rating_nonce']) || !wp_verify_nonce($_POST['wp0_rating_nonce'], 'wp0_save_rating')) {
return;
}
if (array_key_exists('wp0_rating_field', $_POST)) {
$rating = intval($_POST['wp0_rating_field']);
if ($rating >= 1 && $rating <= 5) {
update_post_meta($post_id, '_wp0_rating', $rating);
} else {
delete_post_meta($post_id, '_wp0_rating');
}
}
}
add_action('save_post', 'wp0_save_rating');
Вывод среднего рейтинга для записей
Для вывода среднего рейтинга по всем записям можно написать функцию, которая собирает метаданные и считает среднее значение.
function wp0_get_average_rating() {
$args = [
'post_type' => 'post',
'posts_per_page' => -1,
'meta_key' => '_wp0_rating',
'meta_compare' => 'EXISTS'
];
$query = new WP_Query($args);
$sum = 0;
$count = 0;
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
$rating = intval(get_post_meta(get_the_ID(), '_wp0_rating', true));
if ($rating) {
$sum += $rating;
$count++;
}
}
wp_reset_postdata();
}
if ($count === 0) {
return 0;
}
return round($sum / $count, 2);
}
Вы можете вывести средний рейтинг в шаблоне так:
echo 'Средний рейтинг сайта: ' . wp0_get_average_rating();
Советы по улучшению отзывов и рейтингов
Чтобы отзывы и рейтинги приносили максимальную пользу, учитывайте следующие рекомендации:
- Добавьте капчу или двойную верификацию, чтобы убрать спам и фальшивые отзывы.
- Модерируйте отзывы, чтобы поддерживать качество контента и доверие.
- Используйте микроразметку Schema.org для отзывов, чтобы улучшить видимость в поиске.
- Предлагайте пользователям оставлять отзывы после покупки или использования услуги.
- Выводите отзывы и рейтинг в видимых местах сайта, например, на странице товара или услуги.
Интеграция с WPRemark для создания динамических форм отзывов
Если вы используете плагин WPRemark, можно создать кастомную форму для отзывов с оценками без программирования:
- Создайте форму с полями для имени, текста отзыва и числовым полем для оценки;
- Настройте отправку данных в произвольный тип записи или в метаполя;
- Используйте шорткод или блок формы на нужной странице.
Такой подход позволит быстро запустить сбор отзывов с минимальными усилиями. Подробнее о WPRemark на wpshop.ru.