Выход из WordPress везде не выводит из Discourse

Здесь WordPress настроен как провайдер единого входа (SSO) с помощью плагина WP-Discourse. В некоторых пограничных случаях нам приходится разлогинивать пользователей, чтобы обеспечить согласованность их назначений в группы и т. д.

Когда пользователь не понимает, о чём идёт речь, мы разлогиниваем его сеанс через админ-панель WordPress. Однако это не разлогинивает его в Discourse.

Есть ли способ подключить сигнал разлогинивания из Discourse в WordPress через функцию или что-то подобное, чтобы это стало возможным?

Не знаете, есть ли в WordPress действие, которое вызывается при разлогинивании пользователя через админ-панель WordPress? Плагин WP Discourse подключается к действию clear_auth_cookie, чтобы синхронизировать разлогинивание, инициированное пользователем, между WordPress и Discourse. Возможно, существует другое действие, которое можно использовать для этого и которое будет работать даже тогда, когда пользователь разлогинен администратором сайта.

Я немного покопаюсь в этом и вернусь к вам с ответом.

Я подозреваю, что используется функция wp_ajax_destroy_sessions и выполняется какая-то магия с токенами сессии в $sessions->destroy_all();. Как подключить clear_auth_cookie к этой функции?

Думаю, используется именно эта функция.

Я быстро просмотрел код WordPress и не нашёл очевидного способа заставить это работать. Если это действие выполняется вами нечасто, администраторы Discourse могут разлогинить пользователей в Discourse, нажав кнопку «Выйти», которая отображается в верхней части страницы администратора пользователя. Чтобы заставить пользователей снова войти через SSO, вы можете вручную разлогинить пользователя в Discourse, а затем разлогинить его в WordPress.

Я попробую. Если эта стратегия не сработает, я могу вернуться к этой теме через пару месяцев.