मेरी वर्डप्रेस वेबसाइट में कई अप्रकाशित पोस्ट हैं और मैं सामान्य पोस्ट स्लग ( site.com/post-here
) का उपयोग करके सामान्य उपयोगकर्ताओं (जो लॉग इन नहीं हैं) के लिए इसे सुलभ बनाने का प्रयास कर रहा हूं । मैं समझता हूं कि यह सबसे अच्छा अभ्यास नहीं हो सकता है, लेकिन मेरे विशेष उद्देश्य के लिए, यह करने की आवश्यकता है।
मैंने अपनी functions.php
फ़ाइल में निम्न कोड स्निपेट जोड़ने की कोशिश की है :
function enable_view_drafts() {
$role = get_role( 'subscriber' );
$role->add_cap( 'read_private_posts' );
$role->add_cap( 'edit_posts' );
}
add_action( 'after_setup_theme', 'enable_view_drafts');
मैंने init
इसके बजाय हुक की कोशिश की है after_setup_theme
। कोई भाग्य नहीं।
मेरी समझ यह है कि भूमिकाओं में परिवर्तन डेटाबेस में सहेजे जाते हैं इसलिए केवल एक बार किया जाना चाहिए। यही कारण है कि मैं after_setup_theme
फ़ंक्शन को कॉल करने के लिए हुक का उपयोग कर रहा हूं ।
लेकिन जब मैं पृष्ठ को एक सामान्य उपयोगकर्ता के रूप में एक्सेस करने का प्रयास करता हूं, तो मुझे पोस्ट सामग्री दिखाने के बजाय 404 पृष्ठ दिखाया जा रहा है। मैंने पूर्वावलोकन URL लोड करने की भी कोशिश की है ( site.com/?p=212&preview=true
) लेकिन वह भी काम नहीं किया।
ये मेरे अनुमान हैं:
- सामान्य उपयोगकर्ता के पास
caps
ड्राफ्ट पोस्ट पढ़ने के लिए पर्याप्त नहीं है । - फ्रंट-एंड पर ड्राफ्ट पोस्ट का परीक्षण करना और देखना किसी भी उपयोगकर्ता (प्रशासक सहित) के लिए संभव नहीं है।
जो मैं करने की कोशिश कर रहा हूं उसे पूरा करने के लिए मुझे क्या बदलाव करने होंगे? यदि यह संभव नहीं है, तो आप क्या वैकल्पिक उपाय सुझाते हैं?
नोट: मैं प्लगइन-आधारित समाधानों की तलाश में नहीं हूं।