मैं सभी किराये की संपत्तियों को दिखाने की कोशिश कर रहा हूं, पहले उन सभी संपत्तियों को किराए पर नहीं दिया गया है, और फिर उन सभी संपत्तियों को जो वर्तमान में किराए पर हैं। किराए के लिए कस्टम पोस्ट मेटा के साथ एक कस्टम पोस्ट टाइप 'रेंट' है (_price_rented) जो एक चेकबॉक्स है (यदि यह किराए पर दिया गया है तो सच है या गलत ... सच है)। मुझे उपलब्ध (गैर-किराए पर) संपत्तियों के साथ सभी संपत्तियों को दिखाने के लिए क्वेरी को बदलने की जरूरत है और पहले प्रदर्शित होने वाली किराए की संपत्तियां।
यहाँ मेरी क्वेरी है:
$ts_properties = new WP_Query(
array(
'post_type' => 'rent',
'paged' => $paged,
'posts_per_page' => -1,
'meta_key' => '_price_rented',
'orderby' => 'meta_value',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => '_price_rented',
'value' => false,
'type' => 'BOOLEAN',
),
)
)
);
किसी कारण से यह क्वेरी उन सभी संपत्तियों को दिखाती है, जो किराए पर ली गई हैं। जब मैं 'असत्य' से मान को 'मेटा' में स्विच करता हूं, तो मेटा_क्वारी में यह कोई गुण नहीं दिखाता है।
तो, फिर मैंने सोचा, वापसी मूल्य या तो गलत है (किराए पर ली गई संपत्तियों के लिए) या NULL (उन संपत्तियों के लिए जो किराए पर नहीं हैं), लेकिन मुझे यकीन नहीं है कि NULL परिणाम के लिए क्वेरी कैसे करें (गलत नहीं), मैंने एक 'जोड़ा 'meta_query के तर्क की तुलना करें और मान को'! = 'पर सेट करें, लेकिन यह काम भी नहीं किया।
संपादित करें: var_dump एक उपलब्ध, गैर-किराए के अपार्टमेंट के लिए निम्न रिटर्न देता है: string(0) ""
और एक गैर-उपलब्ध, किराए पर दिए गए अपार्टमेंट के लिए:string(1) "1"
_price_rented
वास्तव में दोनों true
और false
मूल्यों के लिए निर्धारित है , या यह केवल इसके लिए निर्धारित है true
? कृपया डेटाबेस की जाँच करें। मैंने पूछा क्योंकि एक अनियंत्रित चेक बॉक्स बिल्कुल भी पारित नहीं हुआ है POST
इसलिए मैं सोच रहा हूं कि क्या उन मामलों के लिए मूल्य बिल्कुल निर्धारित है।