Errore fatale: Chiamata a funzione non definita wp_get_current_user()
27 mar 2013, 08:22:22
Visualizzazioni: 13.6K
Voti: 4
Sto riscontrando uno strano errore o forse non ho le competenze per risolvere questo problema.
Sto sviluppando un plugin per Multisite. Quando uso is_admin()
, il mio plugin funziona bene, ma quando uso is_super_admin
mi mostra questo errore Errore fatale: Chiamata a funzione non definita wp_get_current_user()
. Ho fatto ricerche ma non sono riuscito a trovare una soluzione.
Il mio codice è questo:
if(!is_super_admin()){
add_action('widgets_init','my_unregister_widdget');
function my_unregister_widgets() {
unregister_widget( 'WP_Widget_Pages' );
unregister_widget( 'WP_Widget_Calendar' );
}
}
Ho visto questa domanda ma non mi ha aiutato.
Commenti
Tutte le risposte alla domanda
1
0
wp_get_current_user()
è una funzione pluggable e non è ancora disponibile quando il tuo plugin viene incluso. Devi attendere l'azione plugins_loaded
:
Esempio:
add_action( 'plugins_loaded', 'wpse_92517_init' );
function wpse_92517_init()
{
if(!is_super_admin())
add_action('widgets_init','my_unregister_widget');
}
function my_unregister_widgets() {
unregister_widget( 'WP_Widget_Pages' );
unregister_widget( 'WP_Widget_Calendar' );
}
Oppure sposta il controllo all'interno della funzione del widget:
add_action( 'widgets_init', 'my_unregister_widget' );
function my_unregister_widgets()
{
if ( is_super_admin() )
return;
// non è un super admin
unregister_widget( 'WP_Widget_Pages' );
unregister_widget( 'WP_Widget_Calendar' );
}

fuxia
107K
27 mar 2013 09:24:12
Domande correlate
2
risposte
1
risposte