WPArticles

Как отключить комментарии в WordPress полностью или только на отдельных типах записей

Если комментарии на сайте больше не нужны, их лучше отключить сразу и правильно: иначе спам, лишняя модерация и пустые формы будут висеть на страницах даже после закрытия обсуждений. В WordPress это можно сделать двумя способами: полностью убрать комментарии со всего сайта или отключить их только для отдельных типов записей, например для страниц, записей блога или кастомных типов контента.

Ниже разберём рабочие варианты без лишней теории: через настройки, массовое отключение для уже опубликованных материалов и точечное отключение для конкретных типов записей. Отдельно покажу, как не сломать шаблон и что проверить после изменений.

Когда достаточно настроек WordPress, а когда нужен код

Если вам нужно просто перестать принимать новые комментарии на будущих публикациях, часто хватает штатных настроек. Но у WordPress есть важная особенность: отключение комментариев в настройках не убирает их с уже опубликованных материалов автоматически. Старые записи и страницы нужно обработать отдельно.

Код нужен в двух случаях:

  • если комментарии надо отключить только для части типов записей;
  • если тема всё равно выводит блок комментариев, хотя они уже закрыты;
  • если на сайте есть кастомные типы записей, и вы хотите управлять ими точечно.

Как отключить комментарии на всём сайте для новых записей

Если вы не хотите, чтобы комментарии появлялись на новых материалах, откройте админку WordPress и перейдите в Настройки → Обсуждение. Здесь есть опция, которая разрешает комментарии для новых статей.

Снимите галочку с пункта, который разрешает оставлять комментарии к новым записям. После этого WordPress не будет включать комментарии по умолчанию для новых публикаций, но уже существующие записи останутся без изменений.

Это безопасный способ, если сайт только запускается или вы хотите постепенно отказаться от комментариев. Но если на сайте уже много материалов, этого шага недостаточно: старые записи всё ещё могут принимать комментарии.

Как отключить комментарии у уже опубликованных записей и страниц

Чтобы убрать комментарии с существующего контента, удобнее всего использовать массовое редактирование. Это штатный способ, который не требует плагинов и не трогает код темы.

Сделайте так:

  1. Откройте раздел Записи или Страницы.
  2. Отметьте нужные материалы галочками.
  3. В выпадающем списке Массовые действия выберите Изменить и нажмите Применить.
  4. В появившемся блоке найдите параметр комментариев и установите значение Закрыть.
  5. Сохраните изменения.

Если материалов много, WordPress покажет только часть из них на странице списка. Тогда придётся повторить действие для следующих страниц списка. Это нормально и не означает ошибку.

После этого новые комментарии к выбранным материалам оставлять уже не получится. Но если на записи были старые комментарии, они не исчезнут сами по себе — они просто перестанут приниматься дальше.

Как отключить комментарии только для отдельных типов записей

Это самый практичный вариант, если на сайте есть и блог, и страницы услуг, и, например, портфолио. Комментарии можно оставить только там, где они действительно нужны, а в остальных местах убрать.

Для стандартных типов контента логика простая: комментарии можно отключить для записей, страниц или обоих типов. Для кастомных типов записей способ зависит от того, как они зарегистрированы в теме или плагине. Если тип записи поддерживает комментарии, их можно отключить программно.

Ниже пример кода, который убирает поддержку комментариев у нескольких типов записей. Его можно добавить в файл functions.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' );
        }

        if ( post_type_supports( $post_type, 'trackbacks' ) ) {
            remove_post_type_support( $post_type, 'trackbacks' );
        }
    }
} );

В этом примере комментарии и трекбеки отключаются для записей и страниц. Если вам нужно изменить другой тип записи, замените значения в массиве $post_types на нужные slug'и, например portfolio или services.

Если вы не уверены в slug типа записи, его нужно посмотреть в коде темы или плагина, который этот тип создаёт. Название в админке и slug — это не одно и то же.

Как полностью убрать комментарии и не оставить лишних блоков в шаблоне

Отключить комментарии в настройках — это только половина дела. На некоторых темах после этого на странице всё равно остаётся заголовок блока комментариев, форма или пустая область внизу записи. Это происходит потому, что шаблон темы продолжает вызывать вывод комментариев, даже если обсуждения закрыты.

Если вы хотите убрать комментарии полностью, проверьте три вещи:

  • в настройках WordPress комментарии отключены для новых материалов;
  • для уже опубликованных записей и страниц комментарии закрыты массово;
  • тема не выводит отдельный блок комментариев вручную в шаблоне.

В большинстве случаев достаточно первых двух пунктов. Если же тема сделана аккуратно, она сама скрывает блок комментариев, когда обсуждения закрыты. Если нет — придётся править шаблон темы или использовать дочернюю тему, чтобы не потерять изменения при обновлении.

Удалять файлы темы без понимания структуры не стоит: можно сломать вывод записей или потерять изменения после обновления. Если правите шаблон, сначала сделайте резервную копию.

Как проверить, что комментарии действительно отключены

После изменений откройте несколько страниц сайта в режиме обычного посетителя. Проверьте не только наличие формы комментариев, но и поведение на старых материалах.

Что именно смотреть:

  • внизу записи нет формы добавления комментария;
  • нет ссылки или блока с количеством комментариев, если тема выводила его отдельно;
  • в админке у материала статус обсуждений закрыт;
  • новый комментарий отправить нельзя.

Если форма исчезла, но счётчик комментариев остался, значит тема отдельно выводит число комментариев в шаблоне или в метаданных записи. Это уже вопрос к теме, а не к штатным настройкам WordPress.

Что делать, если комментарии не отключаются

Иногда пользователь меняет настройки, но комментарии всё равно видны. Обычно причина одна из трёх: изменения сделаны только для новых записей, тема выводит блок комментариев вручную или на сайте используется плагин, который добавляет собственную форму обсуждений.

Проверьте по порядку:

  1. Отключены ли комментарии в Настройки → Обсуждение для новых записей.
  2. Закрыты ли комментарии у уже опубликованных материалов.
  3. Не добавляет ли тема или плагин отдельный блок комментариев независимо от стандартной функции WordPress.

Если проблема в теме, проще всего сначала проверить сайт на стандартной теме WordPress. Если на ней комментарии исчезают, значит дело в шаблоне текущей темы. Тогда уже нужно править именно её вывод.

Какой способ выбрать в вашем случае

СитуацияЧто делать
Комментарии не нужны на новых публикацияхОтключить их в настройках обсуждения
Нужно убрать комментарии со старых записей и страницИспользовать массовое редактирование
Комментарии нужны только для части типов записейОтключить поддержку комментариев через код
Форма не исчезает после настроекПроверить шаблон темы и дополнительные плагины

На практике чаще всего хватает комбинации из настроек WordPress и массового закрытия обсуждений у старых материалов. Код нужен тогда, когда вы хотите управлять поведением точечно и не зависеть от ручной правки каждой записи.

Если подойти к задаче именно так, комментарии можно отключить без лишних побочных эффектов: сайт не сломается, админка останется рабочей, а лишние формы и спам перестанут мешать.

×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее