Как создать отзывы с экспертной оценкой в WordPress

|

Почему важны отзывы с экспертной оценкой для сайта на WordPress

Отзывы пользователей — важный элемент доверия для любого сайта, особенно если речь идет о товарах, услугах или образовательных материалах. Однако отзывы с экспертной оценкой повышают уровень доверия в разы, так как дополнительно подтверждают качество и надежность продукта или услуги. Такие отзывы помогают не только посетителям принять решение, но и улучшают поведенческие факторы сайта, а значит, влияют на SEO.

Реализовать подобный функционал в WordPress можно разными способами: от простых плагинов до кастомных решений с использованием метаполей и пользовательских типов записей.

Используем плагин Expert Review для создания экспертных отзывов

Плагин Expert Review — удобный инструмент для добавления отзывов с оценками экспертов. Он позволяет создавать отзывы с несколькими параметрами оценки, добавлять комментарии экспертов и выводить их в привлекательном виде.

Преимущества плагина:

Для установки достаточно скачать плагин через админку 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 подойдет для быстрого старта, а собственный код даст максимальную гибкость и контроль.

Как полностью удалить остаточные файлы и записи после удаления продуктов в WooCommerce
26.05.2026
Как полностью удалить загруженные файлы из медиабиблиотеки WordPress без остаточных файлов
09.05.2026
Как создать динамические формы в WordPress с помощью AJAX
15.12.2025
Как автоматизировать управление отзывами в WordPress с помощью Expert Review
10.02.2026
Как создать выборочное отображение постов в WordPress по таксономиям с примерами кода
20.01.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше