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