Я пытаюсь создать пользовательскую страницу выхода для сайта WordPress.
Я отключил wp-login.php
, используя следующий код .htaccess
.
<Files wp-login.php>
deny from all
</Files>
Если вы получите доступ к этому, вы получите 403 Запрещенный ответ.
Теперь я хочу выполнить функцию «ДО», когда пользователь выйдет из системы.
function execute_this() {
wp_logout();
}
Дело в том, что все предложения из интернета использует следующий код.
add_action('wp_logout', 'execute_this');
Но этот хук выполняет «ПОСЛЕ» успешного выхода из системы, что в моем случае сделать невозможно, поскольку wp-login.php
недоступен.
Именно поэтому я пытаюсь выйти из системы пользователя "ДО", он идет в файл wp-login.php
.
Есть ли ловушка / действие, запускающее такой сценарий?
Я также пытался сделать такую вещь (настроить страницу выхода из системы на созданную мной страницу):
add_filter( 'logout_url', 'wpse_58453_logout_url' );
function wpse_58453_logout_url( $default )
{
return plugin_dir_url(__FILE__) . 'logout.php';
}
Тогда по моему logout.php
require_once('../../../wp-includes/pluggable.php');
wp_logout();
Я знаю, что это неправильный подход, так как выполнение PHP-файла напрямую никогда не является хорошей идеей, плюс я не могу получить доступ к хукам WordPress при выполнении чего-то подобного.
Есть ли способ обойти это?