web-dev-qa-db-fra.com

wp_logout Ne pas me déconnecter

Voici ce que je fais:

wp_logout();
var_dump(is_user_logged_in());

var_dump renvoie:

bool(true)

Pourquoi wp_logout () ne me déconnecte-t-il pas?

3
Jarred

wp_logout () appelle clear_auth_cookie () , qui expire tous les cookies d'autorisation définis. Cela ne change pas la valeur de la variable globale $ current_user . Donc, techniquement, vous êtes toujours connecté pour la durée du script.

Si vous utilisez wp_logout dans votre propre code, il vaut probablement mieux utiliser exit ou wp_redirect immédiatement après.

Vous pouvez appeler wp_set_current_user(0) après wp_logout() pour déconnecter manuellement l'utilisateur instantanément, si vous devez continuer à exécuter PHP mais ne souhaitez pas que l'utilisateur soit connecté.

5
goldenapples