Cómo: inspeccionar variables globales en WordPress

21

La gente a menudo está confundida acerca de cómo obtener datos de objetos / variables globales

Pregunta: ¿De qué manera puedes inspeccionar las variables globales?

Esta Q fue escrita porque se necesita bastante a menudo aquí en WA. Solo quería tener como un enlace para vincular aquí (la gente a menudo no echa un vistazo a los enlaces de github gist).

Siéntase libre de modificar el ejemplo si algo está mal o si cree que a la explicación le falta algo. Si desea agregar otras cosas útiles, agregue cada una como una sola respuesta. Gracias.

    
pregunta kaiser 25.06.2016 - 15:57

3 respuestas

4

Cómo inspeccionar los datos:

Use esto para obtener una visión de lo que puede usar de la solicitud actual / 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

Por cierto:

    // 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.

Cómo obtener realmente los datos:

// 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'];

Ejemplos
¿Mostrar todos los nombres de la barra lateral?
(Genere un objeto desplegable / seleccionado con todas las barras laterales dentro de global $wp_registered_sidebars )     
respondido por el kaiser 13.04.2017 - 14:37
12

O, si es perezoso, simplemente instale el complemento Debug Bar .

Agrega un botón a la barra de administración que, cuando se hace clic en él, revela un panel con todo tipo de información útil, incluidos avisos de desaprobación, variables WP_Query y un registro de consultas SQL.

    
respondido por el scribu 25.03.2011 - 15:37
0

Dependiendo de dónde se encuentre el proceso de cargar los scripts y representar la salida final, es posible que algunas de las variables mencionadas anteriormente no estén presentes. Si desea una vista bastante inclusiva, quizás un poco extrema, intente:

var_dump($GLOBALS);

var_dump también es bueno porque te dice el tipo y el formato de los datos un poco.

    
respondido por el Jahmic 15.08.2013 - 14:08

Lea otras preguntas en las etiquetas