Если на корпоративном сайте, лендинге или в блоге комментарии не нужны, их лучше отключить не только в настройках записи, но и так, чтобы форма, счётчики и блоки комментариев не всплывали в шаблонах. Иначе на сайте останутся пустые секции, а редакторы будут видеть лишние элементы в админке.
В WordPress это можно сделать несколькими способами: через настройки для новых записей, массово для уже опубликованного контента, отдельно для страниц или других типов записей, а при необходимости — через код, если нужен аккуратный контроль без плагинов.
Что именно нужно отключить
Под «отключить комментарии» обычно понимают не одну, а несколько задач:
- запретить новые комментарии к материалам;
- убрать форму комментариев с фронтенда;
- скрыть уже существующие комментарии, если они больше не нужны;
- не показывать ссылку «Оставить комментарий» и счётчик комментариев в шаблоне;
- убрать комментарии для конкретных типов записей, например только для
page, но оставить для записей блога.
Если отключить только форму, но не сами комментарии, старые обсуждения останутся видны. Если убрать комментарии только в настройках записи, тема оформления всё равно может выводить блок комментариев в шаблоне, если он жёстко прописан в файлах темы.
Самый быстрый способ: отключить комментарии для новых записей
Когда нужно просто перестать получать комментарии на новых материалах, достаточно изменить настройку по умолчанию. Это не затронет уже опубликованные записи, но сработает для новых страниц и постов, если тип записи поддерживает комментарии.
Откройте Настройки → Обсуждение и снимите галочку «Разрешить оставлять комментарии к новым записям». После этого новые записи будут создаваться без включённых комментариев по умолчанию.
Этот способ удобен, если сайт только запускается. Но если у вас уже есть опубликованные материалы, их нужно обработать отдельно — иначе на старых страницах комментарии останутся включёнными.
Как отключить комментарии на уже опубликованных записях и страницах
Для существующего контента WordPress не меняет настройку автоматически. Поэтому нужно пройтись по материалам вручную или массово.
Отключение через редактор записи
Откройте нужную запись или страницу в редакторе. В правой панели найдите блок Обсуждение и снимите галочку «Разрешить комментарии». После обновления записи форма комментариев исчезнет.
Если блока Обсуждение не видно, включите его в настройках редактора. В классическом редакторе это делается через Настройки экрана, в редакторе блоков — через меню с тремя точками и параметры интерфейса, если тема и версия WordPress это позволяют.
Массовое отключение через список записей
Если материалов много, удобнее использовать массовое редактирование. В админке откройте список записей или страниц, отметьте нужные элементы, в выпадающем списке Действия выберите Изменить и примените массовое редактирование. В параметре комментариев установите Не разрешать.
Этот способ работает не во всех экранах одинаково удобно: в стандартной админке WordPress массовое редактирование доступно для записей и страниц, но для некоторых пользовательских типов записей его реализация зависит от темы или плагинов.
Как отключить комментарии только для отдельных типов записей
Это самый частый сценарий для корпоративных сайтов: комментарии не нужны на страницах, но могут быть полезны в блоге. В WordPress важно различать типы записей, потому что у каждого из них может быть своя поддержка комментариев.
Если вы создаёте сайт с нуля или управляете темой/плагином, проще всего убрать поддержку комментариев у нужного типа записи на уровне кода. Тогда WordPress перестанет показывать соответствующие элементы в редакторе и на фронтенде для этого типа.
Для уже существующего сайта безопаснее сначала проверить, какие типы записей используются: стандартные post и page, а также возможные пользовательские типы, добавленные темой или плагином.
Чтобы отключить комментарии, например, только для страниц, можно добавить в файл functions.php дочерней темы или в собственный мини-плагин такой код:
add_action( 'init', function () {
remove_post_type_support( 'page', 'comments' );
remove_post_type_support( 'page', 'trackbacks' );
} );Если нужно отключить комментарии ещё и для записей блога, замените page на post или добавьте обе строки. Для пользовательского типа записи используйте его системное имя, например portfolio или project, если именно так он зарегистрирован.
Код лучше добавлять в дочернюю тему или отдельный плагин, а не в основную тему: иначе при обновлении изменения пропадут.
Как убрать уже существующие комментарии с сайта
Если комментарии были включены раньше, одного запрета на новые сообщения недостаточно. Старые комментарии всё равно могут отображаться под материалами, и это часто выглядит как недоделка после отключения формы.
Есть два варианта:
- скрыть комментарии — форма исчезнет, но старые комментарии можно оставить в админке и при необходимости вернуть;
- удалить комментарии — они исчезнут и из фронтенда, и из базы данных.
Для корпоративного сайта обычно достаточно скрыть форму и убрать блок вывода комментариев из шаблона. Удалять старые комментарии стоит только если они точно не нужны. Перед массовым удалением сделайте резервную копию базы данных: это необратимое действие для обычного пользователя.
Удалить комментарии можно в разделе Комментарии в админке WordPress. Там доступно массовое удаление выбранных элементов. Если комментариев очень много, операция может занять время и нагрузить сайт, особенно на общем хостинге.
Почему комментарии иногда остаются видны даже после отключения
На практике проблема часто не в WordPress, а в теме оформления. Некоторые темы выводят блок комментариев напрямую в шаблоне, и даже после отключения поддержки в записи на странице остаётся пустой контейнер, заголовок «Комментарии» или ссылка на обсуждение.
Проверьте три места:
- в самой записи или странице комментарии действительно отключены;
- в настройках Обсуждение для новых записей комментарии запрещены;
- тема не выводит отдельный блок комментариев в шаблоне без проверки
comments_open().
Если вы правите тему вручную, в шаблоне обычно должен использоваться стандартный вызов comments_template() только при открытых комментариях. Если тема не учитывает это условие, лучше исправить её шаблон или обратиться к разработчику темы, а не пытаться маскировать проблему стилями.
Как проверить, что всё отключено правильно
После изменений откройте несколько страниц сайта в обычном режиме, а не только в админке. Проверьте:
- нет ли формы добавления комментария под записью;
- не отображается ли блок уже существующих комментариев;
- исчезла ли ссылка на обсуждение в списках записей и на странице материала;
- в редакторе у нужного типа записи больше не предлагается включать комментарии, если вы убирали поддержку через код.
Если комментарии отключались только для страниц, убедитесь, что записи блога по-прежнему работают как раньше. Это особенно важно на сайтах, где блог и служебные страницы используют разные сценарии.
Что выбрать в типичном сценарии
| Ситуация | Что делать |
|---|---|
| Новый сайт без истории комментариев | Отключить комментарии в Настройки → Обсуждение |
| Нужно убрать комментарии только со страниц | Отключить поддержку комментариев для типа page через код |
| Нужно отключить комментарии на всём сайте, включая старые записи | Запретить новые комментарии, затем массово отключить или удалить старые |
| Тема продолжает показывать блок комментариев | Проверить шаблоны темы и условие вывода комментариев |
Для большинства корпоративных сайтов и лендингов достаточно отключить комментарии для страниц и убрать старые обсуждения с уже опубликованных материалов. Для блога, где комментарии не нужны совсем, проще отключить их глобально и один раз привести старый контент к единому виду.
Если нужен более «чистый» способ без ручной правки шаблонов и лишних элементов в интерфейсе, для сайтов на WordPress часто используют Clearfy Pro: он помогает отключать неиспользуемые функции WordPress и убирать связанные с ними элементы из админки и фронтенда. Но если задача ограничивается только комментариями, штатных средств WordPress и небольшого кода обычно достаточно.