Come: ispezionare le variabili globali in WordPress
-
16-10-2019 - |
Domanda
Le persone sono spesso confusi su come ottenere i dati da oggetti globali / variabili
Domanda: In che modo si può controllare le variabili globali
?Questa Q è stato scritto perché è necessario abbastanza spesso qui a WA. Volevo solo avere come un fav al collegamento qui (la gente spesso non diano un'occhiata al link github GIST).
Sentitevi liberi di modificare l'esempio se qualcosa non va o si pensa che la spiegazione manca qualcosa. Se si desidera aggiungere altre cose utili, si prega di aggiungere ciascuno come una sola risposta. Grazie.
Soluzione 2
Come esaminare i dati:
Usare questo per ottenere una vista panoramica di ciò che è possibile utilizzare dalla corrente di richiesta / WP_Query.
function inspect_wp_query()
{
echo '<pre>';
print_r($GLOBALS['wp_query'])
echo '</pre>';
}
// If you're looking at other variables you might need to use different hooks
// this can sometimes be a little tricky.
// Take a look at the Action Reference: http://codex.wordpress.org/Plugin_API/Action_Reference
add_action( 'shutdown', 'inspect_wp_query', 999 ); // Query on public facing pages
add_action( 'admin_footer', 'inspect_wp_query', 999 ); // Query in admin UI
A proposito:
// this:
global $wp_query;
$wp_query;
// is the same as
$wp_query;
// and as this:
$GLOBALS['wp_query'];
// You can do this with each other global var too, like $post, etc.
Come ottenere effettivamente i dati:
// Example (not the best one)
(Object) WP_Query -> post (stdClass) -> postdata (Array)
// How to get the data:
// Save object into var
$my_data = new WP_Query; // on a new object
// or on the global available object from the current request
$my_data = $GLOBALS['wp_query'];
// get object/stdClass "post"
$my_post_data = $my_data->post;
// get Array
$my_post_data = $my_data['post'];
Esempi
elencare tutti i nomi della barra laterale?
(Genera un / oggetto di selezione a tendina con tutte le barre laterali all'interno della
global $wp_registered_sidebars
)
Altri suggerimenti
In alternativa, se siete pigri, è sufficiente installare il Debug Bar plugin.
Si aggiunge un pulsante alla barra di amministrazione che, se cliccato, rivela un pannello con tutti i tipi di informazioni utili, tra cui le comunicazioni deprecazione, variabili WP_Query e un log delle query SQL.
A seconda di dove nel processo di caricamento di script e rendendo l'output finale, alcune delle variabili di cui sopra potrebbero non essere presenti. Se si desidera una visione abbastanza inclusiva, forse un po 'estrema, provare:
var_dump($GLOBALS);
var_dump è anche bello in vi dice il tipo e formatta i dati un po '.