Je suis tombé sur une fonction qui affichait exactement le code SQL utilisé. Dans une boucle par exemple, mais je ne m'en souviens pas.
Quelqu'un peut-il me dire cette fonction?
Bonjour Keith Donegan:
Si je comprends bien votre question, je pense que c’est ce que vous recherchez?
<?php echo $GLOBALS['wp_query']->request; ?>
$wp_query
est une variable globale qui contient la requête en cours exécutée par la boucle. Si vous exécutez le code ci-dessus à tout moment alors que la boucle est toujours active ou même juste après, elle devrait vous donner le code SQL de la boucle. Assurez-vous simplement de l'inspecter avant de laisser fonctionner quelque chose qui utilise à nouveau query_posts()
.
Si vous avez exécuté une requête basée sur WP_Query
, c'est ceci:
$customPosts = new WP_Query($yourArgs);
echo "Last SQL-Query: {$customPosts->request}";
Si vous n’êtes intéressé que par Loops, c’est ce que j’utilise habituellement:
add_filter( 'posts_request', 'dump_request' );
function dump_request( $input ) {
var_dump($input);
return $input;
}
Voir cette réponse: Meilleure collection de code pour votre fichier functions.php
Ajoutez ensuite? Debug = sql à n’importe quelle URL WP, et la liste complète des requêtes exécutées sera affichée. (Et oui, ça fait peur ...)