Existe-t-il un is_user_logged_in () pour le multisite?


11

Existe-t-il une fonction is_user_logged_in () pour Wordpress MU / Multisite (3.0+) où je peux ajouter l'ID du site réseau comme is_user_logged_in(2)2serait le site_id?

Mettre à jour:

Après avoir creusé un peu, j'ai trouvé le code ci-dessous. Malheureusement ça ne marche pas.

// ne l'utilise pas. ne marche pas.
fonction mu_logged_in ($ blog_id) {
    switch_to_blog ($ blog_id);
        $ status = is_user_logged_in ();
    restore_current_blog ();
    return $ status;
}

La réponse et les commentaires d'Anu sont bons.

assurez-vous également que le domaine de cookie est correctement défini dans le fichier wp-config.php :)


Pouvez-vous expliquer le cas d'utilisation?
Chip Bennett

Réponses:


10

Oui et non!

La façon dont les utilisateurs travaillent dans un scénario multisite est qu'il existe un seul pool d'utilisateurs, qui sont ensuite associés aux blogs.

Ainsi, le statut de connexion est commun à tous les blogs, mais vous pouvez utiliser is_blog_user($blog_id)pour déterminer si l' utilisateur actuellement connecté est membre de ce blog. Un exemple:

if (is_user_logged_in()) {
  if (is_blog_user(4)) echo "Current user is a member of blog 4";
}

Page du Codex pour is_blog_user()


J'avais quelque chose d'un peu différent à l'esprit. J'ai ajouté à la question, mais je pense que la vôtre est également très utile.
cwd

Votre réponse sera probablement vraie pour tout utilisateur connecté, quel que soit le blog dont cet utilisateur est membre.
anu

Vous avez raison. Cela ne fonctionne toujours que pour le blog actuel. Mais vous voyez à quoi j'essayais d'arriver? J'ai un blog auquel l'utilisateur ne sera pas connecté, mais je souhaite afficher des informations s'il est connecté à un autre blog du réseau. Des idées?
cwd

Vous manquez le point. Le statut de connexion d'un utilisateur est «global» - c'est-à-dire une fois que cet utilisateur s'est connecté, alors cet utilisateur est connecté à tous les blogs avec «abonné» comme rôle par défaut.
anu

4
Petit indice. La fonction is_blog_user()est obsolète et les nouvelles fonctions pour obtenir ces données sont is_user_member_of_blog( $user_id, $blog_id ).
bueltge
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.