Автоматическое отображение отзывов в WordPress — это задача, с которой сталкиваются многие владельцы сайтов, желающие повысить доверие посетителей и улучшить конверсию. В этой статье мы подробно разберем, как реализовать такую функцию, используя как готовые плагины, так и собственный код для более тонкой настройки и интеграции.
Почему важно автоматически отображать отзывы в WordPress
Отзывы — это социальное доказательство, которое помогает посетителям принимать решения. Ручное добавление отзывов может занимать много времени и создавать нагрузку на админ-панель. Автоматизация этого процесса позволяет:
- Сократить время на модерацию и публикацию отзывов;
- Поддерживать актуальность отзывов в реальном времени;
- Интегрировать отзывы из внешних сервисов, например Google, Facebook или Яндекс;
- Увеличить доверие пользователей за счет прозрачности и разнообразия мнений.
Популярные плагины для автоматического вывода отзывов в WordPress
Рассмотрим несколько проверенных решений, которые можно использовать сразу без дополнительной разработки.
1. WP Customer Reviews
Плагин позволяет собирать отзывы от клиентов прямо на сайте и автоматически отображать их в удобном виде. Позволяет модерацию и вывод отзывов через шорткод или виджет.
2. Site Reviews
Очень гибкий плагин с возможностью настраивать шаблоны вывода, интеграции с Gutenberg и автоматическую проверку спама.
3. Google Reviews Widget
Если вы хотите подтягивать отзывы с Google My Business, этот плагин отличный выбор. Отзывы обновляются автоматически, а внешний вид легко настраивается.
Создаем собственный функционал для автоматического отображения отзывов
Если вы хотите иметь полный контроль над выводом и структурой отзывов, можно создать собственный тип записи и динамически выводить их на сайте.
Регистрация кастомного типа записи «Отзыв»
Добавим функцию в файл functions.php вашей темы или в отдельный плагин:
function wpstock_register_post_type_review() {
$labels = array(
'name' => 'Отзывы',
'singular_name' => 'Отзыв',
'add_new' => 'Добавить отзыв',
'add_new_item' => 'Добавить новый отзыв',
'edit_item' => 'Редактировать отзыв',
'new_item' => 'Новый отзыв',
'all_items' => 'Все отзывы',
'view_item' => 'Просмотр отзыва',
'search_items' => 'Поиск отзывов',
'not_found' => 'Отзывы не найдены',
'not_found_in_trash' => 'В корзине отзывы не найдены',
'menu_name' => 'Отзывы'
);
$args = array(
'labels' => $labels,
'public' => true,
'has_archive' => false,
'supports' => array('title', 'editor', 'author', 'custom-fields'),
'menu_position' => 20,
'menu_icon' => 'dashicons-testimonial',
'show_in_rest' => true
);
register_post_type('wpstock_review', $args);
}
add_action('init', 'wpstock_register_post_type_review');Теперь в админке появится отдельный раздел для отзывов.
Отображение отзывов на сайте с пагинацией
Создадим функцию для вывода отзывов с пагинацией, которую можно использовать в шаблонах темы.
function wpstock_display_reviews($posts_per_page = 5) {
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'wpstock_review',
'posts_per_page' => $posts_per_page,
'paged' => $paged,
'post_status' => 'publish'
);
$reviews = new WP_Query($args);
if ($reviews->have_posts()) {
echo '<div class="wpstock-reviews">';
while ($reviews->have_posts()) : $reviews->the_post();
echo '<div class="wpstock-review-item">';
echo '<h3>' . get_the_title() . '</h3>';
echo '<div class="wpstock-review-content">' . get_the_content() . '</div>';
echo '<p class="wpstock-review-author">Автор: ' . get_the_author() . '</p>';
echo '</div>';
endwhile;
echo '</div>';
// Пагинация
$big = 999999999; // уникальное число
echo paginate_links(array(
'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))),
'format' => '?paged=%#%',
'current' => max(1, $paged),
'total' => $reviews->max_num_pages
));
} else {
echo '<p>Отзывы пока отсутствуют.</p>';
}
wp_reset_postdata();
}Вызовите wpstock_display_reviews(); в нужном месте шаблона, чтобы вывести отзывы с пагинацией.
Автоматический импорт отзывов из сторонних сервисов
Для повышения удобства можно настроить автоматический импорт отзывов из популярных платформ — Google, Яндекс, Facebook. Для этого существуют плагины и API-интеграции.
Пример: импорт отзывов с помощью плагина WP Google Review Slider
Этот плагин автоматически подтягивает отзывы с Google My Business и выводит их на сайте в виде слайдера или списка. Он поддерживает кэширование и настройку внешнего вида.
Если нужна кастомизация, можно написать код с использованием Google Places API для получения отзывов и сохранения их в кастомный тип записи для дальнейшего отображения.
Минимальный пример запроса Google Places API (PHP)
function wpstock_fetch_google_reviews($place_id, $api_key) {
$url = "https://maps.googleapis.com/maps/api/place/details/json?place_id={$place_id}&fields=review&key={$api_key}";
$response = wp_remote_get($url);
if (is_wp_error($response)) {
return [];
}
$body = wp_remote_retrieve_body($response);
$data = json_decode($body, true);
if (!empty($data['result']['reviews'])) {
return $data['result']['reviews'];
}
return [];
}Дальше можно написать функцию, которая сохранит полученные отзывы в базу как записи wpstock_review с помощью wp_insert_post.
Советы по безопасности и производительности
Автоматизация вывода отзывов требует внимания к нескольким важным аспектам:
- Проверка и модерация: Обязательно фильтруйте пользовательский контент, не публикуйте отзывы без проверки, чтобы избежать спама.
- Кэширование: Для снижения нагрузки используйте кэширование запросов и страниц с отзывами.
- Оптимизация запросов: Используйте правильные WP_Query с ограничениями и пагинацией, чтобы не перегружать базу данных.
- Безопасность API: Если импортируете отзывы из внешних сервисов, храните ключи API в защищенных местах и ограничивайте доступ.
Заключение
Автоматическое отображение отзывов в WordPress — это мощный инструмент для повышения доверия и улучшения пользовательского опыта. Выбор между готовыми плагинами и собственными решениями зависит от ваших задач и ресурсов. Используйте предложенные примеры и рекомендации, чтобы создать эффективную систему отзывов на вашем сайте.
Для удобной работы с отзывами также можно рассмотреть плагины из каталога WPSHOP, которые помогут ускорить процесс внедрения и настройки.