कई मेटा कुंजी और मेटा वैल्यू द्वारा ऑर्डर [बंद]


16

मैं मेटा मान द्वारा एकाधिक मेटा कुंजी क्रम कैसे सेट कर सकता हूं, क्या कोई मुझे कुछ उदाहरण दे सकता है?


4
WPSE में आपका स्वागत है - आपकी सहायता के लिए, आपको हमारी सहायता करने की आवश्यकता है। क्या आप अधिक विस्तार से वर्णन कर सकते हैं कि आप क्या करने की कोशिश कर रहे हैं, और शायद कुछ कोड नमूने पोस्ट करें।
TheDeadMedic

जवाबों:


33

meta_queryमेटा क्लाज की एक सरणी है। उदाहरण के लिए:

$q = new WP_Query( array(
    'meta_query' => array(
        'relation' => 'AND',
        array(
            'key' => 'state',
            'value' => 'Wisconsin',
        ),
        array(
            'key' => 'city',
            'compare' => 'EXISTS',
        ), 
    ),
) );

आप प्रत्येक मेटा क्लॉज के लिए एक कुंजी के साथ एक सहयोगी सरणी का उपयोग कर सकते हैं:

$q = new WP_Query( array(
    'meta_query' => array(
        'relation' => 'AND',
        'state_clause' => array(
            'key' => 'state',
            'value' => 'Wisconsin',
        ),
        'city_clause' => array(
            'key' => 'city',
            'compare' => 'EXISTS',
        ), 
    ),
) );

फिर, आप order_byतर्क के साथ उस कुंजियों का उपयोग कर सकते हैं :

$q = new WP_Query( array(
    'meta_query' => array(
        'relation' => 'AND',
        'state_clause' => array(
            'key' => 'state',
            'value' => 'Wisconsin',
        ),
        'city_clause' => array(
            'key' => 'city',
            'compare' => 'EXISTS',
        ), 
    ),
    'orderby' => 'city_clause', // Results will be ordered by 'city' meta values.
) );

या अधिक खंड:

$q = new WP_Query( array(
    'meta_query' => array(
        'relation' => 'AND',
        'state_clause' => array(
            'key' => 'state',
            'value' => 'Wisconsin',
        ),
        'city_clause' => array(
            'key' => 'city',
            'compare' => 'EXISTS',
        ), 
    ),
    'orderby' => array( 
        'city_clause' => 'ASC',
        'state_clause' => 'DESC',
    ),
) );

इस पद से मेक वर्डप्रेस कोर ब्लॉग में लिया गया उदाहरण ।


मेटा कुंजी / मान के प्रकार को जोड़ना न भूलें। यह परिणामों को प्रभावित करेगा। डिफ़ॉल्ट wp द्वारा आपके मेटा को एक स्ट्रिंग के रूप में माना जाएगा।
अलेक्जेंडर इवाशेंको

3
लेकिन क्या होगा अगर मैं केवल परिणाम वापस नहीं करना चाहता, जहां राज्य विस्कॉन्सिन है? मैं चाहता हूं कि सभी राज्यों को वापस लौटा दिया जाए और मुझे ऐसी पंक्तियां चाहिए जहां उन 2 क्षेत्रों द्वारा एक शहर या अभी भी आदेश नहीं हो सकता है। उदाहरण के लिए, जहां कोई आदेश नहीं है - सिर्फ एक आदेश द्वारा।
फेलिक्स ईव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.