मुझे यह जानकर आश्चर्य हुआ कि add_role () डेटाबेस को संशोधित करता है और विफल रहता है यदि भूमिका पहले से मौजूद है। यहां दो निहितार्थ हैं, एक दूसरे से अधिक गंभीर: 1) यदि आप विकास में हैं और अपने ऐड_ल कोड को अपडेट करते हैं, तो आपके पास सही होने पर पहले आपको__ल (2) हटाना होगा, आपको उस कोड को कभी नहीं चलाना चाहिए फिर।
इसलिए आम तौर पर मैं एक wp_loaded एक्शन हुक के अंदर अपना add_role () डाल रहा हूं। और जब से मैं विकास में हूँ, मैंने अपने add_role से पहले एक remove_role () भी जोड़ा है ताकि मुझे यकीन हो सके कि अगर मैं अपनी कैप्स की सूची को संशोधित करता हूं, तो यह वास्तव में प्रभावी होगा।
लेकिन स्पष्ट रूप से यह अब हर बार चलाया जा रहा है जब ब्लॉग का एक पृष्ठ एक्सेस किया जा रहा है। ठीक है, मैं इसे केवल-व्यवस्थापक कार्रवाई में रख सकता हूं, या मैं शायद उपयोगकर्ता या उपकरण के तहत एक प्लगइन पृष्ठ बना सकता हूं जहां यह भूमिका एक बार बनाई जा सकती है। मुझे लगता है मैं उम्मीद कर रहा हूँ कि वहाँ एक सरल, अधिक सुंदर समाधान है।
मुझे नहीं लगता कि वहाँ एक run_once कार्रवाई है?
या केवल भूमिका जोड़ने के लिए सबसे अच्छा अभ्यास है और फिर कई बार add_cap () का उपयोग करें? और फिर भी मुझे लगता है कि add_cap db तक पहुँच रहा है।
अनावश्यक डीबी पहुँच को कम करने के सर्वोत्तम तरीके के बारे में सोच रहा है। आपके सबसे अच्छे अभ्यास क्या हैं?
remove_role()
से पहलेadd_role()
मुझे मदद की।