Авторизация через социальные сети — популярный способ упростить вход на сайт для пользователей. Однако бывают ситуации, когда нужно полностью удалить или отключить эту функцию. В этой статье подробно разберём, как устранить авторизацию через социальные сети в WordPress, вне зависимости от используемого плагина, и приведём примеры кода для ручного удаления.
Почему нужно удалять авторизацию через социальные сети
Причины могут быть разными: смена стратегии сайта, проблемы с безопасностью, необходимость перейти на собственную систему регистрации или просто отказ от сторонних сервисов. Удаление авторизации через соцсети помогает:
- Повысить безопасность сайта, исключив внешние API;
- Упростить поддержку сайта, убрав ненужные плагины;
- Избавиться от ошибок и конфликтов, связанных с интеграцией социальных сетей;
- Контролировать процесс регистрации и входа полностью внутри WordPress.
Если вы используете популярные плагины, например, WP Social Login, то удаление функционала можно сделать как через интерфейс, так и вручную.
Удаление авторизации через соцсети с помощью настроек плагина
В большинстве плагинов для авторизации через соцсети предусмотрена возможность отключить отдельные соцсети или полностью деактивировать вход через соцсети.
Пример на WP Social Login
Чтобы отключить авторизацию через соцсети в WP Social Login:
- Перейдите в админ-панели WordPress в раздел «Настройки» → «WP Social Login»;
- Во вкладке «Социальные сети» отключите все активные сети;
- Сохраните изменения;
- Удалите виджет или шорткод, отвечающие за вывод кнопок авторизации;
- Опционально — удалите плагин, если он больше не нужен.
Это самый простой и безопасный способ отключения.
Ручное удаление интеграции авторизации через соцсети
Если авторизация реализована кастомно или плагин не позволяет полностью удалить интеграцию, можно прибегнуть к коду. Ниже пример, как убрать кнопки соцсетей и отключить фильтры для авторизации с помощью кода в functions.php вашей темы.
Удаление кнопок авторизации
Предположим, что кнопки выводаются через хук wpsocial_show_login_buttons. Чтобы отключить их:
remove_action('wpsocial_show_login_buttons', 'wpsocial_display_login_buttons');Если кнопки добавлены в шорткод, можно удалить шорткод:
remove_shortcode('wpsocial_login_buttons');Отключение фильтров и обработчиков входа
Чтобы полностью убрать обработку авторизации через соцсети, нужно удалить соответствующие фильтры и экшены:
remove_filter('authenticate', 'wpsocial_authenticate_user', 20, 3); // Фильтр авторизации
remove_action('wp_login', 'wpsocial_after_login', 10, 2); // Действия после входаВажно: названия функций и хуков зависят от конкретной реализации плагина или кастомного кода. Найдите их в исходниках и удалите аналогичным образом.
Удаление пользовательских данных социальных аккаунтов
После удаления авторизации через соцсети может понадобиться очистить базу данных от привязанных соцаккаунтов пользователей.
Например, если данные хранятся в метаполях пользователей с префиксом wpsocial_, можно выполнить такой код для удаления:
function wpsocial_remove_social_meta() {
$users = get_users(array(
'meta_key' => 'wpsocial_social_id'
));
foreach ($users as $user) {
delete_user_meta($user->ID, 'wpsocial_social_id');
delete_user_meta($user->ID, 'wpsocial_social_token');
// Добавьте другие метаполя по необходимости
}
}
add_action('admin_init', 'wpsocial_remove_social_meta');<Запустите этот код один раз, затем удалите его из functions.php.
Альтернативы удалению: как заменить авторизацию через соцсети
Если нужно сохранить удобство входа, но без соцсетей, можно использовать альтернативные методы:
- Внедрить авторизацию через email и пароль с улучшенной защитой (например, плагин Clearfy Pro помогает усилить безопасность);
- Реализовать двухфакторную аутентификацию с помощью плагинов;
- Добавить возможность входа через Magic Link (одноразовые ссылки на email) с помощью кастомного кода или плагинов.
Выводы и рекомендации
Удаление авторизации через социальные сети в WordPress — задача, требующая аккуратности. Всегда делайте резервные копии сайта и базы данных перед внесением изменений. Работайте через настройки плагинов, если это возможно, а если нет — используйте удаление экшенов и фильтров.
Удаление пользовательских данных социальных аккаунтов — отдельный шаг, который нужно выполнить, если вы хотите полностью очистить сайт от интеграции соцсетей.
Если понадобится помощь с плагинами из экосистемы WPSHOP, обращайтесь к их документации и поддержке. Большинство плагинов позволяют гибко настраивать функции и отключать ненужные компоненты.