Map_meta_cap फ़िल्टर का उपयोग क्या है?


20

map_meta_capफ़िल्टर का उपयोग क्या है ? यह फ़िल्टर कहीं भी प्रलेखित नहीं है। मुझे पता नहीं है कि यह क्या हो सकता है:

पोस्ट पर संचालन के लिए उपयोगकर्ता की अनुमतियों को मैप करने के लिए उपयोग किया जाता है।

वास्तव में इसका क्या मतलब है? यदि संभव हो तो कृपया इसके सही उपयोग का कुछ नमूना कोड उदाहरण दें।

जवाबों:


25

इस फिल्टर आप का विस्तार करने की अनुमति देता है समारोह । इस फ़ंक्शन को मेटा क्षमता को एक या अधिक आदिम क्षमताओं में बदलने के लिए कहा जाता हैmap_meta_cap()WP_User->has_cap()

उदाहरण के लिए, आप को पता है वर्तमान उपयोगकर्ता वर्तमान पोस्ट, संपादित करने के लिए अनुमति दी जानी चाहिए कि क्या चाहते मेटा क्षमता । यह कुछ कारकों पर निर्भर करता है: क्या उपयोगकर्ता पोस्ट का लेखक है? क्या पोस्ट पहले से प्रकाशित है? क्या पद निजी के रूप में चिह्नित है? आदिम क्षमताओं हैं , , और : आप करने के लिए इन प्रदान कर सकते हैं उपयोगकर्ता भूमिकाओं । लेखक और पद की स्थिति की जाँच करता है और आदिम क्षमताओं का सही सेट लौटाता है, इस उपयोगकर्ता को पोस्ट के संपादन की अनुमति देनी होगी (यदि पोस्ट किसी और ने लिखी है और प्रकाशित की है, तो वह वापस आ जाएगा , इसलिए उपयोगकर्ता के पास दोनों क्षमताएं होनी चाहिए जारी रखें)।edit_postedit_postsedit_published_postsedit_others_postsedit_private_postsmap_meta_cap()array('edit_others_posts', 'edit_published_posts')

मेटा क्षमताओं और आदिम क्षमताओं के इस विचार को जोड़ने से आप बेस WP_Userक्लास को पोस्ट और पोस्ट स्टेटस के ज्ञान से मुक्त रखने की अनुमति देते हैं और जो भी हो, और बस क्षमताओं पर ध्यान केंद्रित करें। वास्तविक रूपांतरण, एक बाहरी समारोह में है map_meta_cap()

फ़िल्टरmap_meta_cap आपको कार्यक्षमता का विस्तार करने की अनुमति देता है, उदाहरण के लिए कस्टम पोस्ट का उपयोग करते समय। मेरा मानना ​​है कि यदि आप का capabilitiesतर्क सेट करते हैं register_post_type, तो बुनियादी सहायता प्रदान की जाती है , लेकिन जस्टिन टैडलॉक और प्रॉस्प्रेस प्लगइन द्वारा उल्लिखित लेख इस का पूरा उदाहरण प्रदान करता है। लेकिन आप चाहें तो क्षमताओं को पूरी तरह से बदल सकते हैं।



2

यह फ़ंक्शन का फ़िल्टर है map_meta_cap()। विवरण से यह फ़ंक्शन सामान्य क्षमता ( can_do_stuff ) को और अधिक विशिष्ट (यदि पोस्ट के लेखक तब can_do_this_stuff और can_do_that_stuff_also ) में लिखता है , यदि आवश्यक हो तो विभिन्न स्थितियों की जांच करता है।

दुर्भाग्य से यह कोडेक्स में प्रलेखित नहीं है और मुझे WP 3.0.1 स्रोत में इस फ़ंक्शन का एक भी प्रत्यक्ष कॉल नहीं मिल रहा है।

क्या आपको इस फ़ंक्शन का उपयोग करना पड़ा या आप इसे किसी चीज़ के लिए उपयोग करना चाहते हैं? मुझे लगता है क्योंकि इसका उपयोग नहीं किया जा रहा है, संभवतः इस कार्यक्षमता के लिए नए और बेहतर तरीके हैं।


यह प्लग-इन लेखक का उपयोग करता हुआ प्रतीत होता है: github.com/Prospress/Prospress/blob/master/pp-posts/…
rsman
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.