В Yelly часто нужно не просто спрятать форму комментариев, а убрать весь блок отзывов из конкретных типов контента: страниц, записей, иногда отдельных шаблонов. Если сделать это только через настройки темы или через CSS, можно оставить лишнюю разметку, пустые заголовки и следы в шаблоне. Ниже — рабочий сценарий: что проверить, где отключать и как добить остатки кодом, если тема или плагин всё ещё выводят комментарии.
Когда проблема действительно в комментариях, а не в шаблоне
Сначала стоит понять, что именно не так. В Yelly блок отзывов может появляться из трёх источников: стандартные комментарии WordPress, настройка самой темы, либо плагин, который подменяет комментарии своим блоком. Если на странице виден только заголовок «Отзывы» без формы, это уже не вопрос включения/выключения комментариев, а вопрос шаблона и условного вывода.
Что проверить в админке
- Откройте нужную запись или страницу и посмотрите, включены ли комментарии в блоке «Обсуждение».
- Проверьте, не включены ли комментарии массово для типа записей в
Настройки → Обсуждение. - Если используется дочерняя тема или кастомный шаблон, проверьте, не вставлен ли вызов
comments_template()вручную. - Посмотрите, не выводит ли блок отзывы отдельный плагин, а не сама тема.
Если комментарии отключены в записи, но блок всё равно есть на фронтенде, значит тема не учитывает состояние комментариев и продолжает печатать контейнер. Это уже решается на уровне шаблона или фильтра.
Пошаговое решение: отключаем отзывы в Yelly корректно
Самый безопасный путь — сначала отключить комментарии на уровне WordPress, а потом убрать вывод в шаблоне, если он остался. Так вы не ломаете логику админки и не оставляете пустые блоки на сайте.
Шаг 1. Отключите комментарии для нужных типов контента
Для старых записей можно сделать это массово через админку, а для новых — через настройки обсуждения. Но если нужен стабильный результат, лучше использовать код в дочерней теме или мини-плагине.
<?php
add_action('init', function () {
$post_types = array('post', 'page');
foreach ($post_types as $post_type) {
if (post_type_supports($post_type, 'comments')) {
remove_post_type_support($post_type, 'comments');
remove_post_type_support($post_type, 'trackbacks');
}
}
});Этот вариант убирает поддержку комментариев у записей и страниц. После этого в редакторе исчезнет соответствующий блок, а WordPress перестанет ожидать комментарии для этих типов контента.
Шаг 2. Спрячьте форму и список комментариев, если тема всё ещё их печатает
Некоторые шаблоны продолжают вызывать комментарии, даже если поддержка отключена. Тогда нужно добавить условие в шаблон одиночной записи или страницы. Если у вас есть доступ к файлам темы, проверьте single.php, page.php или шаблон, который используется в Yelly.
<?php
if (comments_open() || get_comments_number()) {
comments_template();
}Этот фрагмент не выводит пустой блок, если комментариев нет и они закрыты. Для большинства типовых шаблонов этого достаточно, чтобы убрать лишнюю секцию.
Шаг 3. Если нужен точечный запрет только для страниц
Иногда комментарии нужны в записях, но не нужны на страницах «О нас», «Контакты» или в лендингах. Тогда не отключайте их глобально — ограничьте только нужный тип.
<?php
add_action('init', function () {
if (post_type_supports('page', 'comments')) {
remove_post_type_support('page', 'comments');
remove_post_type_support('page', 'trackbacks');
}
});Такой подход удобен, если в проекте есть блог и служебные страницы с разной логикой взаимодействия.
Сравнение подходов: настройка, код или плагин
Если задача простая, не всегда нужен код. Но в Yelly и похожих темах лучше заранее понимать компромисс.
| Подход | Когда подходит | Плюсы | Минусы |
|---|---|---|---|
| Настройки WordPress | Нужно отключить комментарии без доработок | Быстро, без правки файлов | Не всегда убирает пустой блок в шаблоне |
| Код в дочерней теме | Нужен контроль над выводом | Предсказуемо, можно точечно ограничить | Нужен доступ к шаблонам или functions.php |
| Плагин управления комментариями | Нет доступа к коду или много типов контента | Удобно для массовой настройки | Лишняя зависимость и возможные конфликты |
Если у вас уже стоит Clearfy Pro, часть подобных задач можно закрыть через его инструменты чистки и отключения лишних элементов. Но если нужен точный контроль именно в Yelly, код в дочерней теме обычно надёжнее. Ссылка на продукт: Clearfy Pro.
Проверка результата после внедрения
После изменений не ограничивайтесь визуальной проверкой одной страницы. Нужно убедиться, что комментарии действительно отключены на уровне данных и шаблона.
- Откройте страницу в режиме инкогнито и проверьте, нет ли формы комментариев.
- Посмотрите исходный код страницы: не должен оставаться пустой контейнер с заголовком «Отзывы».
- В админке у записи не должен отображаться блок обсуждения, если вы его отключали через поддержку типа записи.
- Проверьте несколько шаблонов: обычную запись, страницу и архив, если тема выводит комментарии нестандартно.
Если блок исчез визуально, но в HTML остался, это не критично для пользователя, но плохо для чистоты шаблона. В таком случае правьте именно файл шаблона, а не только настройки.
Частые ошибки и как их исправить
Отключили комментарии только в одной записи
Это частая ситуация: в редакторе сняли галочку, а на других страницах блок остался. Причина проста — настройка действует только на текущий объект. Если нужен общий эффект, отключайте поддержку для типа записей или меняйте шаблон.
Спрятали блок через CSS
Такой способ кажется быстрым, но он оставляет форму в DOM, а иногда — и в доступности для скринридеров. Кроме того, лишний HTML остаётся в коде страницы. CSS годится только как временная мера, если нужно срочно убрать блок до правки шаблона.
Удалили вызов comments_template() без проверки условий
Если просто вырезать вызов из шаблона, можно случайно сломать вывод на тех страницах, где комментарии всё же нужны. Безопаснее оборачивать вызов в условие comments_open() и get_comments_number().
Использовали плагин, который конфликтует с темой
Некоторые плагины отключения комментариев меняют поведение глобально и затрагивают не только фронтенд, но и админку. Если после установки пропали нужные элементы в редакторе или сломалась форма на других типах контента, лучше убрать плагин и перенести логику в код дочерней темы.
Практические советы по безопасности и производительности
Отключение отзывов само по себе не ускоряет сайт радикально, но уменьшает количество лишних запросов и упрощает шаблон. Если комментарии на сайте не нужны, имеет смысл убрать и связанные функции: уведомления, аватары, лишние поля формы, если они больше нигде не используются.
- Делайте изменения в дочерней теме, а не в файлах родительской Yelly.
- Перед правкой шаблонов сохраните копию файла, чтобы быстро откатиться.
- Если используете плагин для комментариев, проверьте, не оставляет ли он собственные таблицы или метаданные после удаления.
- После обновления темы повторно проверьте шаблоны, особенно если они переопределены в дочерней теме.
Если задача шире и вам нужно не только отключить отзывы, но и убрать лишние элементы интерфейса, в экосистеме WPShop иногда удобнее комбинировать тему с точечными плагинами. Но для комментариев в Yelly чаще всего достаточно аккуратной правки шаблона и отключения поддержки типа записи.
В итоге рабочая схема такая: сначала отключаете комментарии на уровне WordPress, затем проверяете шаблон Yelly, и только после этого добираете остатки условным выводом. Это даёт предсказуемый результат без пустых блоков и без лишних побочных эффектов.