Olen uusi tulokas verkkokehitykselle, koska viime päivinä olen kamppaillut kirjaudu sisään php-koodilla. PHP-koodini on seuraava:
//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();
kun PHP-koodi suoritetaan palvelimella, saan alla olevan virheen.
Fatal error: Uncaught Error: Kutsu määrittelemättömälle funktiolle do_action_ref_array () hakemistossa / Users / meenalgupta / Sites / wordpress / mysite / wp-include / user. php: 57 pinon jäljitys: # 0 /Users/meenalgupta/Sites/wordPress/omasivusto/wp-admin/mypage.php(38): wp_signon (Array, 0) # 1 {main} heitetty / Käyttäjät / meenalgupta / Sites / wordpress / mysite / wp-include / user.php rivillä 57
WordPress-versioni on 4.4.1.
Anna tiedän mitä tehdä?
Kommentit
vastaus
Sinun tulisi sitoa koodit toimintaan (voit käyttää plugins_loaded
ensimmäiselle vaiheelle):
add_action("plugins_loaded", "my_func"); function my_func(){ // ======== HERE YOUR CODES =========// }
ps tiedosto on sisällytettävä oikein!
include_once(ABSPATH."wp-includes/user.php");
Vastaa
Luultavasti soitat wp_signon
liian aikaisin. Sinun on ensin annettava koko WordPress-ytimen ladata ennen kuin soitat sille.
Kommentit
- kiitos vastauksesta, mutta voitko auttaa minua miten antaa kaikkien WordPress-ytimien latautua?
- @MeenalGupta, teet kysymyksesi kommentista vain väärin, sinun ei pitäisi lisätä mitään WordPress-ydinhakemistoihin, eikä sinun pitäisi käyttää suoraan tiedostoja joka ei ole wordpress-juurihakemistossa tai ajax-päätepisteessä. Ilman enemmän asiayhteyttä siitä, mitä todella haluat tehdä, on vaikea olla tarkempi.
wp-admin/mypage.php
mikä se on?wp-admin
ja yrittää ladata WordPress-sovelluksen manuaalisesti. @Meenal Gupta MIKSI TEET TÄTÄ !?