मैं अपनी समस्याओं के समाधान के लिए इस साइट का एक बहुत उपयोग कर रहा हूं, लेकिन इस बार मैं अपनी समस्या का पता लगाने और उत्तर देने में सफल नहीं हुआ।
मुझे wp_update_post
एक फंक्शन के अंदर इस्तेमाल करने पर अनंत लूप मिलता है, जिसे कॉल किया जाता है save_post
। मुझे पता है कि यह एक सामान्य मुद्दा है, लेकिन मैं यह नहीं जान सकता कि इससे कैसे बचा जाए।
मैं अपने पदों के क्रम को बचाना चाहता हूं (जो कि पोस्ट-टाइप 'सेक्शन' का है)। इसलिए मैंने एक कस्टम मेटा बॉक्स बनाया है जिसमें कुछ सॉर्टेबल html-elements होते हैं। प्रत्येक तत्व में नाम = 'सेक्शनऑर्डर []' के साथ एक छिपा हुआ इनपुट टैग होता है। इसलिए जब मैं मानक वर्डप्रेस 'अपडेट' बटन पर क्लिक करता हूं, तो एक सरणी जिसमें पोस्ट के सभी आईडी हैं (क्रम में) POST के माध्यम से भेजे जाते हैं। इसलिए यहां वह कोड है जहां मैं सरणी को पुनः प्राप्त करता हूं, और ऑर्डर सहेजना चाहता हूं:
// Update section sort order
$sectionorder = $_POST['sectionorder'];
if (isset($sectionorder)) { // Avoid error if there is no sections added yet
foreach( $sectionorder as $no => $sectionID ) {
$post_update = array();
$post_update['ID'] = $sectionID;
$post_update['menu_order'] = $no;
wp_update_post( $post_update );
}
}
लेकिन समस्या यह है कि यह एक अनंत लूप शुरू करता है। मैं इससे कैसे बचूं? शायद मैं इसे पूरी तरह से अलग तरीके से कर सकता हूं?
आपकी मदद के लिए बधाई!