Bagaimana cara menampilkan query SQL yang berjalan dalam query?


104

Saya telah menemukan fungsi sebelum itu menampilkan kode SQL yang digunakan. Dalam satu lingkaran misalnya, tetapi tidak dapat mengingat.

Adakah yang bisa memberitahuku fungsi itu?

Jawaban:


137

Hai @Keith Donegan:

Jika saya memahami pertanyaan Anda dengan benar, saya pikir ini yang Anda cari?

<?php echo $GLOBALS['wp_query']->request; ?>

$wp_queryadalah variabel global yang berisi kueri saat ini dijalankan oleh loop. Jika Anda menjalankan kode di atas kapan saja ketika loop masih aktif atau bahkan tepat setelah loop itu harus memberi Anda SQL dari loop. Pastikan Anda memeriksanya sebelum membiarkan hal lain berjalan yang menggunakan query_posts()lagi.


Bagaimana cara mendapatkan kueri $wpdb? $GLOBALS['wpdb']->requesttidak bekerja
mpsbhat

1
Bekerja bahkan pada permintaan kustom, $my_query = new WP_Query([ /* ...some args... */ ]);=>$my_query->request
jave.web

58

Jika Anda menjalankan kueri berdasarkan WP_Query, ini dia:

$customPosts = new WP_Query($yourArgs);
echo "Last SQL-Query: {$customPosts->request}";


21

Jika Anda hanya tertarik pada Loops, inilah yang biasanya saya gunakan:

add_filter( 'posts_request', 'dump_request' );

function dump_request( $input ) {

    var_dump($input);

    return $input;
}
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.