Erreur fatale: Erreur non interceptée: Appel à la fonction non définie do_action_ref_array () lors de lutilisation de la fonction wp_signon

Je suis nouveau dans le développement Web, depuis quelques jours, jai du mal à connectez-vous via le code php. Mon code PHP est le suivant

//my php code @include_once "../wp-includes/user.php"; $creds = array( "user_login" => "abc", "user_password" => "abc", "rememember" => false ); $user = wp_signon( $creds, 0 ); if ( is_wp_error($user) ) echo $user->get_error_message(); 

lorsque le code PHP est exécuté sur le serveur, jobtiens lerreur ci-dessous.

Erreur fatale: Erreur non interceptée: appel à la fonction non définie do_action_ref_array () dans / Users / meenalgupta / Sites / wordpress / mysite / wp-includes / user. php: 57 Trace de pile: # 0 /Users/meenalgupta/Sites/wordPress/mysite/wp-admin/mypage.php(38): wp_signon (Array, 0) # 1 {main} jeté dans / Users / meenalgupta / Sites / wordpress / mysite / wp-includes / user.php en ligne 57

Ma version wordpress est 4.4.1.

Sil vous plaît laissez je sais quoi faire?

Commentaires

  • wp-admin/mypage.php quest-ce que cest?
  • @toscho OP a clairement créé un fichier aléatoire dans wp-admin et essaie de charger WordPress manuellement. @Meenal Gupta POURQUOI FAITES-VOUS CECI!?
  • mypage.php est juste un fichier pratique que jai créé dans wp-admin.Je veux me connecter au serveur, afin de pouvoir publier sur mon site wordpress local .

Réponse

Vous devez LIER les codes en action (vous pouvez utiliser plugins_loaded pour la première étape):

add_action("plugins_loaded", "my_func"); function my_func(){ // ======== HERE YOUR CODES =========// } 

ps vous devez inclure le fichier correctement!

include_once(ABSPATH."wp-includes/user.php"); 

Réponse

Vous appelez probablement wp_signon trop tôt. Vous devez dabord laisser tout le noyau de wordpress se charger avant de lappeler

Commentaires

  • merci pour la réponse, mais pouvez-vous maider sur la manière laisser tout le noyau de wordpress se charger?
  • @MeenalGupta, à partir de votre commentaire sur la question, vous vous trompez, vous ne devez rien ajouter aux répertoires de base de wordpress, et vous ne devez accéder directement à aucun fichier qui nest pas sur le répertoire racine de wordpress ou le point de fin ajax. Sans plus de contexte sur ce que vous voulez réellement faire, il est difficile dêtre plus précis.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *