В WooCommerce отзывы к товарам включены по умолчанию и отображаются на страницах продуктов. Иногда возникает необходимость отключить отзывы полностью, чтобы сделать сайт более лаконичным или по другим причинам. В этой статье мы рассмотрим, как отключить отзывы в WooCommerce без использования дополнительных плагинов, используя только код в теме или дочерней теме WordPress.
Почему стоит отключать отзывы без плагинов
Использование сторонних плагинов для отключения отзывов может привести к конфликтам, увеличению нагрузки на сайт и появлению лишних обновлений. Если задача простая — убрать отзывы, то лучше сделать это через функции темы, чтобы сохранить лёгкость и контролируемость сайта.
Кроме того, такой способ работает быстрее и надёжнее, так как не добавляет лишних зависимостей.
Отключение отзывов через functions.php
Самый простой способ — добавить несколько строк кода в файл functions.php вашей активной темы (лучше использовать дочернюю тему, чтобы не потерять изменения при обновлении).
Добавьте следующий код:
function wpdownload_disable_woocommerce_reviews() {
// Отключаем поддержку отзывов на уровне продукта
remove_post_type_support( 'product', 'comments' );
}
add_action( 'init', 'wpdownload_disable_woocommerce_reviews' );Этот код удаляет поддержку комментариев (отзывов) для типа записи product, что приводит к исчезновению блока отзывов на страницах товаров.
Убираем вкладку с отзывами на странице товара
Даже после удаления поддержки комментариев вкладка "Отзывы" может продолжать отображаться. Чтобы убрать её, добавим следующий код:
function wpdownload_remove_reviews_tab( $tabs ) {
if ( isset( $tabs['reviews'] ) ) {
unset( $tabs['reviews'] );
}
return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'wpdownload_remove_reviews_tab', 98 );Этот фильтр удаляет вкладку с отзывами из набора вкладок на странице товара.
Отключение комментариев в админке WooCommerce
Чтобы не путаться и не видеть отзывы в админке, можно убрать метабокс с комментариями для товаров. Добавьте следующий код:
function wpdownload_remove_comments_metabox() {
remove_meta_box( 'commentsdiv', 'product', 'normal' );
}
add_action( 'add_meta_boxes', 'wpdownload_remove_comments_metabox', 99 );Теперь редакторы и администраторы не увидят блок с отзывами при редактировании товара.
Полное отключение отзывов на сайте
Если вы хотите отключить отзывы глобально, включая системные уведомления и шаблоны, можно дополнительно добавить:
add_filter( 'woocommerce_product_review_comment_form_args', '__return_false' );
add_filter( 'woocommerce_enable_review_rating', '__return_false' );
add_filter( 'comments_open', '__return_false', 20, 2 );
add_filter( 'pings_open', '__return_false', 20, 2 );Эти фильтры полностью отключат функционал отзывов и рейтингов.
Проверка результата и очистка кэша
После внесения изменений обязательно очистите кэш сайта и браузера. Проверьте страницы товаров — блок и вкладка с отзывами должны исчезнуть.
Если у вас включены кэш-плагины или CDN, очистите их кэш, чтобы увидеть изменения.
Альтернативные плагины для управления отзывами
Если в дальнейшем понадобится гибко управлять отзывами, стоит обратить внимание на плагины, которые позволяют настраивать отзывы без кодирования:
- Clearfy Pro — плагин для оптимизации WordPress, включая управление отзывами;
- WPRemark — для расширенного управления комментариями и отзывами.
Однако если требуется именно полное отключение без лишних функций, лучше использовать код из статьи.
Итоги
Мы рассмотрели, как отключить отзывы в WooCommerce без использования плагинов, используя несколько простых функций в functions.php. Такой подход позволяет убрать отзывы с сайта быстро, без дополнительной нагрузки и конфликтов.
Используйте данный способ, если отзывы вам не нужны, либо хотите временно убрать их, не удаляя функционал полностью.