Почему важны отзывы с экспертной оценкой для сайта на WordPress
Отзывы пользователей — важный элемент доверия для любого сайта, особенно если речь идет о товарах, услугах или образовательных материалах. Однако отзывы с экспертной оценкой повышают уровень доверия в разы, так как дополнительно подтверждают качество и надежность продукта или услуги. Такие отзывы помогают не только посетителям принять решение, но и улучшают поведенческие факторы сайта, а значит, влияют на SEO.
Реализовать подобный функционал в WordPress можно разными способами: от простых плагинов до кастомных решений с использованием метаполей и пользовательских типов записей.
Используем плагин Expert Review для создания экспертных отзывов
Плагин Expert Review — удобный инструмент для добавления отзывов с оценками экспертов. Он позволяет создавать отзывы с несколькими параметрами оценки, добавлять комментарии экспертов и выводить их в привлекательном виде.
Преимущества плагина:
- Удобный интерфейс для добавления и редактирования отзывов;
- Возможность добавлять несколько критериев оценки (например, качество, цена, поддержка);
- Готовые виджеты и шорткоды для вывода отзывов в любом месте сайта;
- Интеграция с популярными темами, включая тему Yelly.
Для установки достаточно скачать плагин через админку WordPress и активировать его. Далее можно создавать отзывы через меню «Expert Review».
Пример шорткода для вывода отзывов
Чтобы вывести все отзывы на странице, используйте шорткод:
[expert_review_list]Для вывода конкретного отзыва по ID:
[expert_review id="123"]Создаем кастомный тип записи и метаполя для экспертных отзывов вручную
Если нужен более гибкий и легковесный вариант без плагинов, можно реализовать отзывы с экспертной оценкой через кастомный тип записи и метаполя.
Пример кода для добавления кастомного типа записи yelly_expert_review и метаполей для оценки:
function yelly_register_expert_review_cpt() {
$labels = array(
'name' => 'Экспертные отзывы',
'singular_name' => 'Отзыв',
'add_new' => 'Добавить отзыв',
'add_new_item' => 'Добавить новый отзыв',
'edit_item' => 'Редактировать отзыв',
'new_item' => 'Новый отзыв',
'view_item' => 'Просмотр отзыва',
'search_items' => 'Поиск отзывов',
'not_found' => 'Отзывы не найдены',
'not_found_in_trash' => 'Отзывы не найдены в корзине'
);
$args = array(
'labels' => $labels,
'public' => true,
'has_archive' => true,
'supports' => array('title','editor','author'),
'menu_icon' => 'dashicons-star-filled',
);
register_post_type('yelly_expert_review', $args);
}
add_action('init', 'yelly_register_expert_review_cpt');
// Добавление метабокса с оценками
function yelly_add_meta_boxes() {
add_meta_box('yelly_expert_scores', 'Оценки эксперта', 'yelly_expert_scores_callback', 'yelly_expert_review', 'normal', 'high');
}
add_action('add_meta_boxes', 'yelly_add_meta_boxes');
function yelly_expert_scores_callback($post) {
wp_nonce_field('yelly_save_scores', 'yelly_scores_nonce');
$criteria = array('Качество', 'Цена', 'Поддержка');
foreach ($criteria as $criterion) {
$value = get_post_meta($post->ID, 'yelly_score_' . sanitize_title($criterion), true);
echo '<p><label>' . esc_html($criterion) . ': <input type="number" name="yelly_score_' . esc_attr(sanitize_title($criterion)) . '" value="' . esc_attr($value) . '" min="0" max="10" step="0.1"></label></p>';
}
}
function yelly_save_scores($post_id) {
if (!isset($_POST['yelly_scores_nonce']) || !wp_verify_nonce($_POST['yelly_scores_nonce'], 'yelly_save_scores')) {
return;
}
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
if (!current_user_can('edit_post', $post_id)) return;
$criteria = array('quality', 'price', 'support');
foreach ($criteria as $criterion) {
if (isset($_POST['yelly_score_' . $criterion])) {
update_post_meta($post_id, 'yelly_score_' . $criterion, floatval($_POST['yelly_score_' . $criterion]));
}
}
}
add_action('save_post', 'yelly_save_scores');Этот код добавляет новый тип записи "Экспертные отзывы" с тремя метаполями для оценки качества, цены и поддержки. Таким образом, можно гибко добавлять отзывы с оценками и выводить их на сайте.
Вывод экспертных оценок в шаблоне
Для вывода оценок в шаблоне используйте следующий пример:
<?php
$quality = get_post_meta(get_the_ID(), 'yelly_score_quality', true);
$price = get_post_meta(get_the_ID(), 'yelly_score_price', true);
$support = get_post_meta(get_the_ID(), 'yelly_score_support', true);
?>
<div class="expert-review-scores">
<p>Качество: <?php echo esc_html($quality); ?></p>
<p>Цена: <?php echo esc_html($price); ?></p>
<p>Поддержка: <?php echo esc_html($support); ?></p>
</div>Как улучшить отзывы с экспертной оценкой с помощью AJAX и фильтров
Для удобства пользователей можно добавить фильтрацию отзывов по оценкам на фронтенде без перезагрузки страницы. Это особенно актуально, если на сайте много отзывов.
Для этого понадобится AJAX-запрос и обработчик на стороне WordPress. Рассмотрим упрощенный пример.
Код AJAX-запроса на JavaScript
jQuery(document).ready(function($) {
$('#filter-expert-reviews').on('change', function() {
var minScore = $(this).val();
$.ajax({
url: ajaxurl,
type: 'POST',
data: {
action: 'yelly_filter_expert_reviews',
min_score: minScore
},
success: function(response) {
$('#expert-reviews-container').html(response);
}
});
});
});Обработчик AJAX в functions.php
function yelly_filter_expert_reviews_ajax() {
$min_score = floatval($_POST['min_score']);
$args = array(
'post_type' => 'yelly_expert_review',
'meta_query' => array(
array(
'key' => 'yelly_score_quality',
'value' => $min_score,
'compare' => '>=',
'type' => 'NUMERIC'
)
)
);
$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
echo '<div class="review-item">';
echo '<h3>' . get_the_title() . '</h3>';
echo '<div>' . get_the_content() . '</div>';
$score = get_post_meta(get_the_ID(), 'yelly_score_quality', true);
echo '<p>Оценка качества: ' . esc_html($score) . '</p>';
echo '</div>';
}
} else {
echo '<p>Отзывы не найдены по выбранному критерию.</p>';
}
wp_die();
}
add_action('wp_ajax_yelly_filter_expert_reviews', 'yelly_filter_expert_reviews_ajax');
add_action('wp_ajax_nopriv_yelly_filter_expert_reviews', 'yelly_filter_expert_reviews_ajax');Такой функционал позволяет пользователям быстро выбирать отзывы с нужной оценкой, повышая удобство и вовлеченность.
Заключение по созданию экспертных отзывов в WordPress
Отзывы с экспертной оценкой — мощный инструмент для повышения доверия и улучшения пользовательского опыта. Выбор между готовым плагином и кастомной реализацией зависит от задач и ресурсов проекта. Плагин Expert Review подойдет для быстрого старта, а собственный код даст максимальную гибкость и контроль.