Как удалить или заблокировать регистрацию пользователей в WordPress

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

Почему важно контролировать регистрацию пользователей в WordPress

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

Оставленная открытой регистрация часто становится причиной:

  • Спам-ботов, создающих тысячи бесполезных аккаунтов.
  • Злоумышленников, пытающихся получить доступ к админке.
  • Увеличенной нагрузки на сервер.

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

Отключение регистрации через настройки WordPress

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

  • Если на сайте уже есть страницы регистрации, они останутся доступными.
  • Регистрация может быть открыта через REST API.
  • Некоторые кастомные формы регистрации могут работать независимо от этой настройки.

Поэтому далее рассмотрим, как программно и с помощью плагинов заблокировать регистрацию полностью.

Блокировка регистрации пользователей через functions.php

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

function wpbit_disable_user_registration() {
    if ( isset($_GET['action']) && $_GET['action'] === 'register' ) {
        wp_redirect(home_url());
        exit;
    }
}
add_action('login_init', 'wpbit_disable_user_registration');

Этот код проверяет, если пользователь пытается открыть страницу регистрации (wp-login.php?action=register), его перенаправляют на главную.

Отключение регистрации через REST API

WordPress REST API также может позволять регистрацию, если она включена. Чтобы её заблокировать, добавим фильтр:

function wpbit_disable_rest_user_registration( $allowed ) {
    return false;
}
add_filter( 'rest_user_can_register', 'wpbit_disable_rest_user_registration' );

Это гарантирует, что внешние REST-запросы не смогут зарегистрировать пользователя.

Удаление или переадресация страницы регистрации с помощью плагинов

Если вы предпочитаете готовые решения, обратите внимание на следующие плагины:

  • Disable User Registration — простой плагин для отключения регистрации. Он автоматически скрывает страницы регистрации и блокирует REST API регистрацию.
  • WP Cerber Security — мощный плагин безопасности, который позволяет детально настраивать регистрацию, блокировать спам и ботов.
  • Clearfy Pro — плагин оптимизации и безопасности, в котором есть функция отключения регистрации и защиты от спама. Подробнее на wpshop.ru.

Эти плагины подходят как для новичков, так и для опытных разработчиков, позволяя гибко управлять доступом.

Удаление ссылок на регистрацию и формы из темы

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

Для удаления ссылок, например, в меню, можно воспользоваться фильтрами меню или настроить меню в админке. Для удаления виджетов с формами регистрации — удалите соответствующие виджеты в Внешний вид > Виджеты.

Если регистрационные формы встроены через шорткоды или PHP-код, их можно отключить через override функций темы в functions.php:

function wpbit_remove_registration_shortcode() {
    remove_shortcode( 'register_form' );
}
add_action( 'init', 'wpbit_remove_registration_shortcode' );

Дополнительные меры безопасности при отключении регистрации

После отключения регистрации рекомендуется:

  • Ограничить доступ к wp-login.php и wp-admin через .htaccess или IP-фильтры.
  • Использовать двухфакторную аутентификацию для администраторов.
  • Мониторить попытки входа с помощью плагинов безопасности, например, WP Cerber.

Пример ограничения доступа к wp-login.php по IP (в .htaccess)

<Files wp-login.php>
    order deny,allow
    deny from all
    allow from 123.45.67.89
</Files>

Замените 123.45.67.89 на ваш IP-адрес.

Итоговые рекомендации

Отключение и блокировка регистрации пользователей в WordPress — важный шаг для многих сайтов. Используйте сочетание настроек, кода и плагинов для комплексной защиты. Если хотите гибко управлять регистрацией и безопасностью, советую обратить внимание на Clearfy Pro, который упрощает многие задачи.

WooCommerce: как автоматически изменять статус заказа по условиям
29.05.2026
Как удалить категории без записей в WordPress автоматически
19.02.2026
Как автоматизировать удаление черного списка IP в WordPress
14.02.2026
Автоматическое удаление непроданных товаров WooCommerce по времени
26.05.2026
Как автоматически изменять заголовки постов WordPress по шаблону
10.03.2026