SQL क्वेरी को क्वेरी में कैसे प्रदर्शित करें?


104

मैं एक फ़ंक्शन के सामने आया हूं जो कि उपयोग किए गए सटीक SQL कोड को प्रदर्शित करता है। उदाहरण के लिए एक लूप में, लेकिन याद नहीं कर सकते।

क्या कोई मुझे वह कार्य बता सकता है?

जवाबों:


137

हाय @ कीथ डोनेगन:

अगर मैं आपके प्रश्न को सही ढंग से समझता हूं तो मुझे लगता है कि यह वही है जो आप खोज रहे हैं?

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

$wp_queryएक वैश्विक वैरिएबल है जिसमें लूप द्वारा चलने वाली करंट क्वेरी है। यदि आप उपरोक्त कोड को कभी भी चलाते हैं जबकि लूप अभी भी सक्रिय है या लूप के ठीक बाद भी यह आपको लूप से एसक्यूएल देना चाहिए। बस सुनिश्चित करें कि आप इसे query_posts()फिर से उपयोग करने से पहले कुछ और चलने दें ।


के प्रश्न कैसे प्राप्त करें $wpdb? $GLOBALS['wpdb']->requestकाम नहीं कर रहा है
mpsbhat

1
कस्टम क्वेरी पर भी काम करता है, $my_query = new WP_Query([ /* ...some args... */ ]);=>$my_query->request
jave.web

58

यदि आप किसी क्वेरी के आधार पर भागे हैं WP_Query, तो यह है:

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

21

इस उत्तर को देखें: अपनी functions.php फ़ाइल के लिए कोड का सर्वश्रेष्ठ संग्रह

फिर किसी भी WP URL में डीबग = sql जोड़ें, और यह उन क्वेरी की पूरी सूची को आउटपुट करेगा जो चलाए जा रहे थे। (और हाँ, यह डरावना है ...)


21

यदि आप केवल लूप्स में रुचि रखते हैं तो यह वही है जो मैं आमतौर पर उपयोग करता हूं:

add_filter( 'posts_request', 'dump_request' );

function dump_request( $input ) {

    var_dump($input);

    return $input;
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.