Как создать автоматический отзыв в WordPress на основе плагина Quizle

Автоматизация сбора и публикации отзывов — одна из важных задач для сайтов на WordPress, особенно если вы хотите повысить доверие пользователей без постоянного ручного контроля. В этой статье разберём, как с помощью плагина Quizle и собственного кода организовать автоматическое создание и публикацию отзывов на вашем сайте.

Почему именно автоматические отзывы важны для сайта

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

  • Сократить время на модерацию и публикацию отзывов;
  • Обеспечить регулярное обновление отзывов на сайте;
  • Увеличить вовлечённость пользователей через интерактивные опросы и квизы;
  • Получать структурированные данные, которые можно использовать в SEO и маркетинге.

Плагин Quizle отлично подходит для создания интерактивных опросов и может пригодиться для сбора отзывов с автоматическим их отображением.

Установка и базовая настройка плагина Quizle

Для начала установим плагин Quizle с официального сайта WPShop.ru. После установки и активации:

  1. Создайте новый квиз с вопросами, которые помогут получить полезные отзывы (например, оценка качества услуги, комментарии, рекомендации). Можно настроить типы вопросов – рейтинги, открытые поля, выбор из списка.
  2. Настройте отображение квиза на странице или в виджете.
  3. Подключите опцию сохранения результатов и уведомления администратора.

Теперь у вас есть инструмент для сбора отзывов в интерактивном формате.

Автоматическое создание отзыва на основе результатов Quizle

Чтобы автоматически создавать отзывы на основе собранных данных, добавим PHP-код, который будет обрабатывать результаты квиза и создавать записи в кастомном типе «Отзывы».

Создание кастомного типа записи для отзывов

Добавим регистрацию типа записи wpsnippets_review в файл functions.php вашей темы или в отдельный плагин:

function wpsnippets_register_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' => 'В корзине отзывы не найдены',
        'menu_name' => 'Отзывы'
    );

    $args = array(
        'labels' => $labels,
        'public' => true,
        'has_archive' => true,
        'supports' => array('title', 'editor', 'author'),
        'show_in_rest' => true
    );

    register_post_type('wpsnippets_review', $args);
}
add_action('init', 'wpsnippets_register_review_cpt');

Обработка результатов квиза и создание отзыва

Предположим, что плагин Quizle сохраняет результаты опроса в своей таблице или через хук. Используем хук, к примеру, quizle_after_quiz_completed (пример, уточните в документации плагина). Добавим обработчик:

function wpsnippets_quizle_create_review($quiz_results) {
    // Пример структуры $quiz_results
    // [
    //   'user_name' => 'Иван Иванов',
    //   'rating' => 5,
    //   'comment' => 'Отличный сервис!'
    // ]

    $post_data = array(
        'post_title' => 'Отзыв от ' . sanitize_text_field($quiz_results['user_name']),
        'post_content' => sanitize_textarea_field($quiz_results['comment']),
        'post_status' => 'publish',
        'post_type' => 'wpsnippets_review',
        'post_author' => 1 // Можно назначить системного автора или пользователя
    );

    $post_id = wp_insert_post($post_data);

    if ($post_id && !is_wp_error($post_id)) {
        update_post_meta($post_id, 'wpsnippets_rating', intval($quiz_results['rating']));
    }
}
add_action('quizle_after_quiz_completed', 'wpsnippets_quizle_create_review');

Этот код автоматически создаст отзыв с заголовком «Отзыв от [Имя]», сохранит комментарий и рейтинг в метаполе.

Вывод отзывов с рейтингом на сайте

Чтобы показать отзывы, создадим шорткод, который выводит последние отзывы с рейтингами звёзд:

function wpsnippets_show_reviews_shortcode($atts) {
    $atts = shortcode_atts(array('count' => 5), $atts, 'wpsnippets_reviews');

    $args = array(
        'post_type' => 'wpsnippets_review',
        'posts_per_page' => intval($atts['count']),
        'post_status' => 'publish'
    );

    $reviews = new WP_Query($args);
    $output = '<div class="wpsnippets-reviews">';
    if ($reviews->have_posts()) {
        while ($reviews->have_posts()) {
            $reviews->the_post();
            $rating = intval(get_post_meta(get_the_ID(), 'wpsnippets_rating', true));
            $output .= '<div class="review-item">';
            $output .= '<h3>' . get_the_title() . '</h3>';
            $output .= '<div class="review-rating">' . str_repeat('⭐', $rating) . '</div>';
            $output .= '<div class="review-content">' . get_the_content() . '</div>';
            $output .= '</div>';
        }
    } else {
        $output .= '<p>Отзывов пока нет.</p>';
    }
    $output .= '</div>';
    wp_reset_postdata();

    return $output;
}
add_shortcode('wpsnippets_reviews', 'wpsnippets_show_reviews_shortcode');

Теперь вы можете вывести отзывы на любой странице, используя шорткод [wpsnippets_reviews count="3"].

Дополнительные советы и рекомендации

Фильтрация и модерация отзывов

Автоматическое создание отзывов удобно, но не забывайте про модерацию. Можно добавить статус pending и вручную проверять отзывы перед публикацией. Для этого измените параметр post_status в wp_insert_post на 'pending'. Также полезно добавить капчу в квиз Quizle, чтобы снизить спам.

Интеграция с другими плагинами WPShop

Для расширения функционала можно использовать плагин Expert Review, который специализируется на управлении отзывами и рейтингами. В связке с Quizle можно создать мощную систему сбора и показа отзывов.

Оптимизация и кеширование

Отображение большого количества отзывов может замедлить сайт. Используйте кеширование, например, с плагином Clearfy Pro, чтобы ускорить загрузку страниц с отзывами. Также можно настроить пагинацию с помощью ABC Pagination.

WordPress: как удалить или изменить shortcode без плагинов
26.12.2025
WooCommerce: как отключить повышение суммы платежа при изменении заказа
23.04.2026
WordPress: как изменить метод отправки формы AJAX на REST API
16.01.2026
WooCommerce: как исключить повторную отправку письма при изменении статуса заказа
20.05.2026
Как изменить метод AJAX обработки формы на REST API в WordPress
30.03.2026