À l'aide de fonctions de connexion de wordpress
Quelqu'ont aucune expérience de l'écriture d'un personnalisé WordPress page de connexion à l'aide des fonctions:
wp_signon()
and wp_set_auth_cookie()
trouvé sur http://codex.wordpress.org/Function_Reference/
Je n'arrive pas à obtenir leur travail.
Le code ressemble à ceci:
function login_wordpress($username, $password) {
$creds = array();
$creds['user_login'] = $username;
$creds['user_password'] = $password;
$creds['remember'] = true;
$user = wp_signon( $creds, false );
if ( is_wp_error($user) ) {
echo $user->get_error_message();
die();
} else {
wp_set_auth_cookie( $user, 0, 0);
}
}
Me manque quelque chose de fondamental?
OriginalL'auteur Sbad | 2011-01-19
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de changer cette ligne:
:
$user
est unWP_User
Objet n'est pas d'id utilisateur.wp_signon
retourneWP_Error
en cas d'échec, ouWP_User
sur la réussite.OriginalL'auteur Aldo
Avait vraiment du mal à moi-même... enfin réussi à le faire fonctionner..!!
(après plusieurs jours d'expérimenter et de se taper ma tête contre elle)
Une chose à faire est sûr, c'est que vous n'avez pas envoyé de sortie encore
ou le cookie de session n'est pas écrire comme il doit être dans l'en-tête.
Aussi, si vous appelez wp_signon avant le début de la séance, session
info est perdu aussi... sheesh... étrange, mais j'ai eu les deux qui se passe
pour moi. Anyhoo sans plus tarder...
//Création d'un nouvel utilisateur (par exemple)
//Assurez-vous que le nom d'utilisateur est jusqu'à ce jour... j'avais besoin de ce qu'il y avait
un crochet à user_register être appelé dans wp_insert_user mais que
hook est appelé après l'utilisateur est créé, il est donc nécessaire de la base de données
vider le cache de travailler autrement, le mauvais nom d'utilisateur a été mis en...
Ainsi, l'utilisateur est automatiquement connecté à la page pour une page seulement - le ridicule.
(Il a été Enregistrer Plus Redux faire l'accrochage btw.)
//Assurez-vous que la session utilisateur a commencé à
//Identifiant De L'Utilisateur Courant
//Vérifier qu'il a travaillé
OriginalL'auteur Tony Hayes
OriginalL'auteur user4508996
Je l'ai fait dans un projet il y a quelques années, de sorte que le WordPress code était un peu différent. Mais ce code a fonctionné pour moi:
Je n'ai pas eu à l'utiliser wp_signon à tous, mais qui ont peut-être changé.
Sont vous un message d'erreur, ou que voyez-vous lorsque vous exécutez votre code?
OriginalL'auteur arlomedia