Skip to content

Всё для WordPress, веб-разработки — и не только

🔕 Как отключить комментарии WordPress на всем сайте: пошаговое руководство

🔕 Как отключить комментарии WordPress на всем сайте: пошаговое руководство

Комментарии в WordPress, палка о двух концах. С одной стороны, живое обсуждение под постом повышает вовлеченность и depth-метрики. С другой, открытые комментарии притягивают спамеров как магнит. Десятки, а то и сотни автоматических «отличный пост, заходите на мой сайт» в сутки. И это не считая откровенно токсичных или неуместных комментариев.

Если сайт корпоративный, лендинг-портфолио или просто блог без активного комьюнити, раздел комментариев не приносит пользы. Он создает лишнюю работу по модерации и раздувает базу данных.

Хорошая новость: отключить комментарии во всем WordPress можно за 5 минут. Без плагинов, без правки шаблона вручную. И в этом руководстве мы разберем все рабочие способы, от встроенных настроек до хирургически точного кода.

💡 Быстрый обзор:

  • Настройки обсуждения: снимите флажок «Разрешить комментарии», форма исчезнет для всех новых публикаций, а опция авто-закрытия с 0 дней заблокирует старые.
  • Плагин Disable Comments: установите с WordPress.org, он убирает раздел комментариев полностью, включая REST API и XML-RPC, одной кнопкой.
  • Код в functions.php: добавьте фильтр add_filter('comments_open', '__return_false'), программное отключение без единого плагина.
  • Массовое удаление: «Комментарии → Действия → В корзину», очистите базу от спама, накопившегося за годы.

Способ 1. Настройки обсуждения (встроенный, без плагинов)

Штатный механизм WordPress закрывает комментарии без единой строчки кода. Минус в том, что он работает только для новых публикаций, старые записи останутся открытыми, пока вы не примените настройку задним числом.

Зайдите в админ-панель: Настройки → Обсуждение. Найдите блок «Настройки статьи по умолчанию» и снимите галочку «Разрешить комментарии». Нажмите «Сохранить изменения».

Страница настроек обсуждения WordPress

Теперь для всех новых постов и страниц форма комментариев не появится. Но старые публикации останутся с открытыми комментариями. Чтобы закрыть и их, прокрутите чуть ниже до опции «Автоматически закрывать комментарии к статьям старше X дней». Поставьте галочку и введите 0 в поле дней.

Ноль означает «закрыть мгновенно», все существующие посты потеряют форму комментариев сразу после сохранения. Этот же параметр заблокирует комментарии на любых будущих публикациях.

Плюсы: бесплатно, встроено, никаких плагинов. Минусы: не убирает ссылки «Комментарии закрыты» из интерфейса; не удаляет уже оставленные комментарии.

Способ 2. Плагин Disable Comments (полный контроль)

Когда нужно не просто закрыть форму, а полностью стереть любой след комментариев с сайта, Disable Comments на WordPress.org решает задачу за минуту. Плагин активен более 10 лет, обновлен в мае 2026 (версия 2.7.0) и стабильно работает с последними версиями WordPress.

После установки в меню «Настройки» появляется пункт Disable Comments. Интерфейс состоит из одного экрана: вы выбираете, где отключить комментарии, везде (Everywhere) или только для определенных типов контента (посты, страницы, медиафайлы).

Плагин делает три вещи разом:

  • Убирает форму и ссылки комментариев из фронтенда;
  • Скрывает раздел «Комментарии» в админке;
  • Блокирует комментарии через XML-RPC и REST API, спамеры не пробьются даже напрямую.

🔗 Disable Comments на WordPress.org

Плюсы: полное удаление следов комментариев; защита API; мультисайт. Минусы: дополнительный плагин (хоть и легкий, ~50 КБ).

Способ 3. Код в functions.php (без плагинов, максимальный контроль)

Если не хотите ставить плагин ради одной функции, закройте комментарии фильтром. Добавьте этот код в functions.php активной темы (или через плагин Code Snippets):

1// Полностью отключаем комментарии на всем сайте
2add_filter('comments_open', '__return_false', 20, 2);
3add_filter('pings_open', '__return_false', 20, 2);
4
5// Скрываем существующие комментарии из админ-панели
6add_action('admin_menu', function () {
7 remove_menu_page('edit-comments.php');
8});
9
10// Убираем ссылки «Комментарии» из админ-бара
11add_action('init', function () {
12 if (is_admin_bar_showing()) {
13 remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
14 }
15});

Что здесь происходит: фильтр comments_open принудительно возвращает false для любого поста или страницы. pings_open отключает пинги и трекбеки (тоже лазейка для спама). Два следующих блока убирают меню «Комментарии» из админки и админ-бара, чтобы интерфейс не отвлекал.

Код вставляется в конец functions.php (перед ?> если он есть) или через плагин Code Snippets. Перед правкой сделайте бэкап файла, если допустите синтаксическую ошибку, сайт упадет в белый экран.

Плюсы: ноль лишних плагинов; полный контроль над поведением. Минусы: теряется при смене темы; ошибка в коде ломает сайт.

Способ 4. Выборочное управление (посты и страницы)

Бывает, что комментарии нужны только в блоге, а на страницах «Контакты» или «Об услугах», лишние. Или наоборот. WordPress дает управлять этим на уровне каждого отдельного поста.

Откройте запись в редакторе. В Guttenberg нажмите на три точки в правом верхнем углу → Настройки → панель «Обсуждение». Снимите флажок «Разрешить комментарии». В классическом редакторе, включите блок «Обсуждение» через «Настройки экрана» вверху.

Для массового отключения на уже опубликованных постах: перейдите в «Записи → Все записи», выделите нужные чекбоксами, в выпадающем меню «Действия» выберите «Изменить» → «Применить». В открывшейся панели массового редактирования найдите поле «Комментарии» и установите «Запрещено».

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

Плюсы: гибкость; комментарии остаются там, где нужны. Минусы: ручная работа; на сотнях постов утомительно.

Удаление существующих комментариев

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

  • Перейдите в Комментарии в левом меню админки.
  • Если комментариев много (больше 20 на странице), в «Настройках экрана» увеличьте число отображаемых элементов до максимума.
  • Выделите все чекбоксом в шапке таблицы.
  • В выпадающем меню «Действия» выберите «В корзину» и нажмите «Применить».
  • Повторите для оставшихся страниц.
  • Перейдите в корзину комментариев и нажмите «Очистить корзину», теперь они удалены безвозвратно.

База полегчала, место освободилось.

Видео: отключение комментариев за 3 минуты

Если проще посмотреть, чем читать, вот наглядная демонстрация всех трех способов в одном видео. От настроек до плагина, с экрана WordPress:

⁉️🤔 Частые вопросы

Можно ли отключить комментарии только для новых постов, оставив старые?

Да. Снимите флажок «Разрешить комментарии» в Настройках → Обсуждение и сохраните. Новые посты выйдут без формы комментариев, старые останутся как есть. Галка «Разрешить» управляет будущими публикациями, а опция «старше X дней», уже существующими. Две независимые настройки.

Пропадут ли уже оставленные комментарии после отключения?

Нет. Отключение комментариев (любым способом) только убирает форму и ссылки. Уже существующие комментарии остаются в базе данных и в админке, записи в wp_comments и wp_commentmeta никуда не денутся. Чтобы удалить их полностью, используйте массовое действие «В корзину» и очистите корзину.

Какой способ лучше для корпоративного сайта?

Плагин Disable Comments. Он убирает форму с фронтенда, блокирует REST API и XML-RPC (закрывает спамерам технические лазейки в обход интерфейса) и скрывает раздел комментариев в админке. Весит меньше 50 КБ, обновляется стабильно, не конфликтует с популярными темами и билдерами.

Что делать, если комментарии отключены, но форма все равно видна?

Скорее всего, тема жестко вызывает comments_template() в обход фильтров. Проверьте single.php и page.php в редакторе темы, если видите <?php comments_template(); ?>, закомментируйте или удалите строку. Но правки слетят при обновлении темы. Как правило, плагин Disable Comments решает эту проблему автоматически, он перехватывает шаблон на уровне WordPress, а не темы.

Можно ли скрыть счетчик комментариев в админ-панели?

Да. Способ 3 из этого руководства (код в functions.php) убирает и пункт «Комментарии» из меню, и счетчик из админ-бара. Если нужен только счетчик, а меню оставить, используйте фильтр add_filter('comments_open', '__return_false', 20, 2) без remove_menu_page. Счетчик обнулится, когда все комментарии будут удалены.

Стоит ли отключать комментарии в 2026 году?

Если у вас блог с активной аудиторией, комментарии скорее плюс. Живое обсуждение поднимает время на странице и depth-метрики, а Google это учитывает в ранжировании. Но для остальных сценариев, корпоративный сайт, лендинг, портфолио, интернет-магазин на WooCommerce, комментарии это чистый балласт.

Спам-боты в 2026 стали только агрессивнее: CAPTCHA и Akismet фильтруют большую часть, но полностью проблему не решают. Каждый день модерация съедает время, которое можно потратить на контент и развитие. А если комментарии на сайте просто висят пустыми, это сигнал «здесь никого нет», что работает против доверия.

Вывод прагматичный: не уверены, что комментарии дают сайту ценность, отключайте. Способ выбирайте под задачу:

  • Нужно быстро и без плагинов → настройки обсуждения;
  • Нужно хирургически чисто → плагин Disable Comments;
  • Нужен полный контроль без лишнего кода в админке → фильтр в functions.php;
  • Нужна гибкость (где-то да, где-то нет) → ручное управление пост за постом.

Потратьте 5 минут сейчас и забудьте о спаме в комментариях навсегда.