問題描述
我以前遇到過一個函數,顯示了一個循環中使用的確切的 SQL 代碼,但不記得了。
有人可以告訴我這個功能嗎?
乾杯
最佳解決方案
嗨 @Keith Donegan:
如果我正確理解你的問題,我認為這是你正在尋找的?
<?php echo $GLOBALS['wp_query']->request; ?>
$wp_query 是一個全局變量,包含循環運行的當前查詢。如果您在循環仍然處於活動狀態或循環後立即運行上述代碼,那麼應該從循環中提供 SQL 。只要確保您檢查它,然後再讓其他運行使用 query_posts()運行。
次佳解決方案
如果您運行基於 WP_Query 的查詢,那就是:
$customPosts = new WP_Query($yourArgs);
echo "Last SQL-Query: {$customPosts->request}";
第三種解決方案
看到這個答案:Best Collection of Code for your functions.php file
然後將?debug = sql 添加到任何 WP URL,它將輸出運行的查詢的完整列表。 (是的,這很可怕…)
第四種方案
如果你只對循環感興趣,這是我通常使用的:
add_filter( 'posts_request', 'dump_request' );
function dump_request( $input ) {
var_dump($input);
return $input;
}
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。