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

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

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

Пожалуй самый простой и быстрый способ, который не требует знаний программирования от слова совсем.

  • Войдите в административную панель WordPress.
  • Перейдите на страницу «Настройки» (Settings) -> «Общее» (General).
  • Снимите галочку с опции «Любой может зарегистрироваться» (Anyone can register).
  • Нажмите кнопку «Сохранить изменения» (Save Changes) внизу страницы.
Отключение регистрации пользователей в WordPress через админку сайта

Преимущества:

  • Простота и быстрота исполнения.
  • Не требует технических знаний или доступа к файлам сайта.
  • Не создает риска сломать что-либо на сайте.

Недостатки:

  • Ограниченная гибкость; не предлагает дополнительных параметров управления регистрацией.

Отключить регистрацию wordpress для пользователей через файл wp-config.php

Чтобы отключить регистрацию в wordpress необходимо выполнить следующие дейстия:

  • Откройте файл wp-config.php в корневой директории вашего сайта с помощью FTP клиента или через файловый менеджер в панели управления хостингом.
  • Добавьте следующий код в файл wp-config.php:
define('DISALLOW_REGISTRATION', true);
  • Сохраните и закройте файл wp-config.php.

Обратите внимание, что данный метод (через wp-config.php) является более продвинутым и требует доступа к файлам вашего сайта. Если вы не уверены в своих технических навыках, лучше использовать первый метод через административную панель WordPress.

Преимущества:

  • Предлагает уверенное и надежное решение.
  • Работает на уровне конфигурации сайта, обходя пользовательский интерфейс.

Недостатки:

  • Требует технических знаний и доступа к файлам сайта.
  • Риск сломать что-то, если не выполнить этот шаг правильно.

Убираем регистрацию через плагины wordpress

В WordPress существует множество плагинов, которые позволяют управлять регистрацией пользователей. Некоторые из этих плагинов:

  • User Registration
  • User Profile – Profile Builder
  • WP User Manager
  • RegistrationMagic

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

Преимущества:

  • Легко настраивается через пользовательский интерфейс.
  • Может предложить дополнительные функции и параметры управления регистрацией.
  • Не требует технических знаний для установки и настройки.

Недостатки:

  • Может замедлить работу сайта, если плагин плохо спроектирован.
  • Существует риск конфликта с другими плагинами или вашей темой.

Удаление регистрации на сайте wordpress через файл wp-signup.php или wp-login.php

Очень рискованно удалять главные файлы, которые отвечают за авторизацию и регистрацию в вордпрессе и я не рекомендую этот пункт для новичков которые еще боятся кода. Хотя конечно способ действенный, особенно если у вас отключено обновление ядра WP (а если включено, то в следующем обновлении удаленные файлы опять подгрузяться с сервева ВП и смысла в действии не будет) и вы тогда можете смело удалять или переименовывать файлы логина и входа на сайт. Совету изначально установить чистую wordpress на локалку или хостинг и поиграть с данным методом чтобы ничего не упоороть на рабочем проекте.

Преимущества:

  • Эффективно блокирует регистрацию пользователей.

Недостатки:

  • Есть риск сломать сайт.
  • Требует технических знаний и доступа к файлам сайта.
  • Не рекомендуется, так как это может вызвать проблемы при будущих обновлениях WordPress.

Функция отключения регистрации пользователей в WP

Данную функцию нужно добавить в файл вашей темы wordpress в файл function.php в любое удобное место, но лучше в самый низ файла.

add_action('init', 'disable_user_registration');
function disable_user_registration() {
    if ( is_admin() ) {
        update_option('users_can_register', 0);
    }
}

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

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

add_action('init', 'disable_user_registration');
function disable_user_registration() {
    // Проверьте, есть ли параметр "special_token" в URL и соответствует ли он вашему секретному токену
    if ( isset($_GET['special_token']) && $_GET['special_token'] == 'your_secret_token' ) {
        // Если специальный токен присутствует и верен, разрешите регистрацию
        update_option('users_can_register', 1);
    } else {
        // Во всех остальных случаях отключите регистрацию
        update_option('users_can_register', 0);
    }
}

В этом примере your_secret_token — это секретный токен (можете написать любое название), который вы создаете для разрешения регистрации. Каждый раз, когда кто-то посещает ваш сайт с этим специальным токеном в URL (например, https://yoursite.com/register?special_token=your_secret_token), регистрация будет разрешена. Во всех остальных случаях регистрация будет отключена.

Преимущества:

  • Предлагает гибкий способ управления регистрацией пользователей.
  • Позволяет дополнительно настроить поведение сайта.

Недостатки:

  • Требует знаний по PHP и WordPress.
  • Может быть сложным для новичков.

Использование .htaccess для блокировки доступа к странице регистрации WordPress

Данный метод очень простой, но он подойдет для тех у кого хостинг сервер на apache. Для тех, кто не вкурсе, сейчас хостинги используют 2 типа сервера:

  • Apache — наиболее популярный, в основном используется на базовых тарифах хостингов, поддерживает конфигурации файлов .htaccess
  • Nginx — более мощный и производительный, используется для сложных проектов и не поддерживает конфиг файла .htaccess

Перейдите на свой сайт, откройте панель разработчика с помощью F12, перейдите на вкладку Network и обновите страницу, найдите файл в самом верху (обычно файл — это название вашего сайта или название конкретной страницы), затем найдите строку сервер и справа будет написано apache или nginx. Если у вас сервер на Апаче, то можете смело использовать данный код.

<Files wp-login.php>
Order Deny,Allow
Deny from all
</Files>

ПРИМЕЧАНИЕ! некоторые хостинги скрывают файл конфигурации .htaccess и делают его невидимым, он по дефолту находится в корневой папке вашего сайта.

Преимущества:

  • Эффективно блокирует доступ к странице регистрации на уровне сервера.

Недостатки:

  • Требует хостинг сервер под управлением Apache
  • Ошибка в файле .htaccess может поломать вам сайт.

Финалочка

В статье условно 6 методов отключения регистрации на сайте, я бы сразу не рекомендовал использовать плигны, так как я не доверяю большинству плагинов, кроме тех что написал я (потому что я не пишу дич код и не вешаю лишние стили и скрипты, которые потом тормозят сайт и вызывают конфликты). В остальном же можете использовать любой удобный для вас метод. Я больше склоняюсь к редактированию конфига wp-config.php — одна строчка кода и у вас нет регистрации + удалить файлы и будет вам счастье.

И всегда помните: чтобы вы не делали на своем сайте, всегда делайте бекапы файлов и базы данных и удачи вес в освоении новых навыков).

Для отправки комментария вам необходимо авторизоваться.

Популярные статьи: