comment voir la requête en cours d'exécution dans wordpress?

12

Je travaille sur wordpress, ce qui est nouveau pour moi Maintenant, j'ai reçu un site entièrement conçu en wp Mais le problème est que je ne peux pas rechercher la fonctionnalité pour chaque page / page que j'ai trouvée

$wpdb->get_results

utilisé pour obtenir le résultat de la base de données, cela ne fonctionne pas non plus

$wpdb->queries

Existe-t-il un moyen d'imprimer chaque requête en cours d'exécution?.

Veuillez aider.

Sparkx
la source
Voulez-vous voir la requête SQL en cours d'exécution?
Rutwick Gangurde
Non pas que je découragerais d'apprendre à connaître les internes, mais cela fait allusion à une autre question dont la réponse serait très différente. Quel problème essayez-vous de résoudre?
Annika Backstrom

Réponses:

10

Pour $wpdb->queriestravailler, vous devez configurer dans wp-config.php:

define('SAVEQUERIES', true);

Ceci est fortement déconseillé pour la production (hit à hautes performances) et donc désactivé par défaut.

Rarst
la source
C'est le moyen idéal ... +1!
Rutwick Gangurde
6

Je le fais souvent lorsque j'ai besoin de vérifier la requête actuelle:

add_action( 'wp_head', 'show_current_query' );

function show_current_query() {
    global $wp_query;

    if ( !isset( $_GET['q'] ) )
        return;
    echo '<textarea cols="50" rows="10">';
    print_r( $wp_query );
    echo '</textarea>';
}

Pour afficher la requête actuelle, ajoutez simplement ?ql'URL actuelle.

Cela montrera la requête actuelle (stockée dans la variable globale $ wp_query), y compris la requête SQL et toutes les autres variables de requête.

Anh Tran
la source
0

Le global $wp_querycontient tout sur la requête en cours, y compris les arguments, les résultats, le contenu des résultats et la requête elle-même.

$wp_query->request devrait faire le travail pour vous ici.

David Gard
la source
0

Vous pouvez également utiliser le plugin WPDB Profiling qui affichera toutes les instructions SQL qui ont été exécutées pour générer la page sur laquelle vous vous trouvez actuellement, en bas de la page.

Kevin Langley Jr.
la source
0

Vous pouvez utiliser le plugin Wp Pear Debug . Il vous montrera une liste des requêtes exécutées dans la page, le nombre de secondes que ces requêtes ont pris pour s'exécuter et la fonction php qui a lancé la requête. Veuillez noter que vous devez enregistrer les paramètres au moins une fois avant qu'il ne commence à fonctionner.

Garvin
la source
0

Pas besoin d'installer de plugin, vous pouvez utiliser ceci:

$queried_object = get_queried_object();
var_dump( $queried_object );

Source: Codex

Miguel Garrido
la source
0
<?php $wpdb->show_errors(); ?>  // use syntax just before your query 
<?php $wpdb->print_error(); ?>  // user after your query execution

C'est à dire.

<?php $wpdb->show_errors();
      $id=$wpdb->update('table_name',$array,$condition);
      $wpdb->print_error();
?>
Vijay Lathiya
la source