सेटिंग व्यवस्थापक संपादित करें पैनल और मेटाबॉक्स पदों और सभी उपयोगकर्ताओं और प्रवेश के लिए दृश्यता


10

मेरे WP 3.3 सेटअप में कई पोस्ट प्रकार और एडवांस्ड कस्टम फील्ड्स प्लगइन के साथ कस्टमाइज़्ड एडिट पैनल शामिल हैं (जो कई मेटाबॉक्स बनाता है) और अन्य प्लगइन्स जैसे कि एसईओ मेटाबॉक्स पैनल, स्क्रिबु के पोस्ट 2 पोस्ट्स कनेक्शन और बहुत कुछ।

समस्या यह है कि, इन पैनलों का स्वरूप क्रम अक्सर काफी यादृच्छिक होता है (भले ही एडवांस कस्टम फील्ड्स किसी प्रकार का ऑर्डर दे रहा हो, लेकिन यह हमेशा काम नहीं करता है, क्योंकि अन्य प्लगइन्स में यह नहीं है और इसके अलावा मैं मेटाबॉक्स को बदलना चाह सकता हूं। पद प्रकार के अनुसार पद)।

अब, Wordpress प्रत्येक व्यवस्थापक / उपयोगकर्ता को उचित पैनल के साथ मेटाबोक्स की व्यवस्था करने का अधिकार देता है, जिस तरह से वह / वह चाहता है। हालाँकि ... हर व्यवस्थापक को अपनी व्यवस्था करनी होगी !! क्या डिफ़ॉल्ट / फिक्स्ड ऑर्डर तैयार करने का कोई तरीका नहीं है या सुपरमैन या एक एडमिन को विशेष रूप से हर जगह पैनल की स्थिति निर्धारित करने के लिए नहीं है?

मेरे पास कम से कम 4 व्यवस्थापक और कुछ संपादक / लेखक हैं ... इसका कोई मतलब नहीं है कि मुझे उनके पैनल को अपने सभी खातों में लॉग इन करना होगा ... यह बेवकूफ और समय लेने वाला है, और गैर WordPress प्रेमी उपयोगकर्ताओं के लिए भ्रमित करने वाला है ।

क्या कोई प्लगइन या कोड स्निपेट है जो मेरे मामले में मदद कर सकता है?

धन्यवाद


किसी ने 1 वर्ष पहले wp मंचों पर समान प्रश्न पूछे थे, उसका विषय बिना किसी उत्तर के छोड़ दिया गया था, हल नहीं हुआ और कुछ व्यवस्थापक ने थ्रेड wordpress.org/support/topic/…
unfulvio

जवाबों:


7

आप डिफ़ॉल्ट मेटा बॉक्स को remove_meta_box से हटा सकते हैं और उन्हें add_meta_box के साथ एक अलग स्थिति में पुनः जोड़ सकते हैं:

add_action('do_meta_boxes', 'wpse33063_move_meta_box');

function wpse33063_move_meta_box(){
    remove_meta_box( 'postimagediv', 'post', 'side' );
    add_meta_box('postimagediv', __('Featured Image'), 'post_thumbnail_meta_box', 'post', 'normal', 'high');
}

उपरोक्त उत्तर निम्नलिखित थ्रेड से है: WP मेटा बॉक्स की डिफ़ॉल्ट स्थिति कैसे बदलें?

अपडेट करें

यदि मुख्य हताशा विशुद्ध रूप से उपलब्ध मेटा बॉक्स की मात्रा है, और आपको नहीं लगता कि प्रत्येक उपयोगकर्ता को सभी बॉक्स की आवश्यकता है, तो आप उन्हें निम्न उपयोगकर्ता भूमिकाओं या फ़ंक्शन को जोड़े गए निम्न कोड का उपयोग करके सभी भूमिकाओं से छिपा सकते हैं। नोट - यह विधि बस मेटा बॉक्स को छुपाती है और उन्हें निष्क्रिय या हटाती नहीं है।

//Hide Post Page Options from all except Administrator
if (!current_user_can('administrator')){
function hide_post_page_options() {
global $post;
$hide_post_options = "<style type=\"text/css\"> #wptotwitter_div, wpseo_meta, #al2fb_meta, #misc-publishing-actions .misc-pub-section label, #misc-publishing-actions .misc-pub-section #post-status-display, #misc-publishing-actions .misc-pub-section .edit-post-status, #visibility.misc-pub-section, .al2fb_post_submit, #slugdiv, #edit-slug-box, #screen-options-link-wrap { display: none; }</style>";
print($hide_post_options);
}
add_action( 'admin_head', 'hide_post_page_options'  );
}

//Hide Post Page Options from ALL users
function hide_all_post_page_options() {
global $post;
$hide_all_post_options = "<style type=\"text/css\"> #taxonomy-category li.hide-if-no-js, #commentstatusdiv, #wypiekacz_sectionid, #postexcerpt, #trackbacksdiv, #postcustom, #yarpp_relatedposts { display: none !important; }</style>";
print($hide_all_post_options);
}
add_action( 'admin_head', 'hide_all_post_page_options'  );

असल में, आपको सिर्फ अल्पविराम द्वारा अलग किए गए div आईडी या कक्षा में प्रवेश करना होगा। मैंने सिर्फ यह दिखाने के लिए वहां छोड़ा कि सभी प्रकार के मेटा बॉक्स और क्षेत्र छिपाए जा सकते हैं।

#wptotwitter_div - WP to Twitter plugin
#wpseo_meta - Wordpress SEO by Yoastplugin
#al2fb_meta, .al2fb_post_submit - Add Link to Facebookplugin
#misc-publishing-actions .misc-pub-section label, #misc-publishing-actions .misc-pub-section #post-status-display, #misc-publishing-actions .misc-pub-section .edit-post-status, #visibility.misc-pub-section - Default Wordpress Publish Status and Visibility
#slugdiv, #edit-slug-box - The post slug
#screen-options-link-wrap - The "Screen Options" tab at the top of the page
#taxonomy-category li.hide-if-no-js - The "Most Used" categories tab
#commentstatusdiv - The comments on the post
#wypiekacz_sectionid - Wypiekacz plugin
#postexcerpt - Post excerpt
#trackbacksdiv - Trackbacks
#postcustom - Custom post fields
#yarpp_relatedposts - Yet Another Related Posts Plugin

(मैंने "कोड" में उदाहरण दिए हैं क्योंकि एसई एक शीर्षक का प्रतिनिधित्व करने के लिए # का उपयोग करता है)

मुझे लगा कि मैं इसे आपको बाहर फेंक दूंगा, क्योंकि आपकी तरह, मैं भी सभी मेटा बॉक्स से बेहद निराश हो गया था, लेकिन अंततः मुझे लगता है कि यह अवांछित बक्से की संख्या थी। मेरी वेबसाइट पर "लेखक" के लिए, यह अब बहुत सुव्यवस्थित है: शीर्षक, सामग्री, ड्राफ्ट के रूप में सहेजें, अभी प्रकाशित करें या पोस्ट किए जाने के लिए शेड्यूल करें, टैग, श्रेणियां और विशेष रुप से प्रदर्शित छवि ... कोई अव्यवस्था नहीं।


यह मेरी समस्या को हल नहीं करता है, यह सभी उपयोगकर्ताओं के लिए मेरी wysiwyg सेटिंग्स को कॉपी करना पसंद करेगा (इसलिए मैं एक बार और सभी के लिए पैनलों की उपस्थिति निर्धारित करता हूं); कारण: कुछ प्लगइन अपने स्वयं के मेटाबॉक्स को जोड़ते हैं; इसके अलावा, विभिन्न प्रकार के पोस्ट के लिए मैं मेटाबॉक्स को तदनुसार रखना चाहता हूं। Add_meta_box में केवल सामान्य / उच्च / निम्न है ... कई मेटाबोक्स के साथ जो मदद नहीं करता है। उन्नत कस्टम फ़ील्ड में कम से कम एक क्रमबद्ध संख्या होती है, लेकिन यह अन्य मेटाबॉक्स की उपस्थिति में अच्छी तरह से काम नहीं करता है। ऐसा करने का सबसे अच्छा तरीका होगा wysiwyg ...
unfulvio

क्या आप प्लगइन्स द्वारा बनाए गए सभी अतिरिक्त मेटा बॉक्स का उपयोग और आवश्यकता करते हैं? मैं पूछता हूं क्योंकि, मेरे लिए, सभी अनावश्यक मेटा बॉक्स वह है जो मुझे हमेशा निराश करता है। यदि वह वास्तव में आपका मामला है, तो मैंने ऊपर एक अद्यतन किया है कि शायद यदि आप केवल उन बॉक्स को छिपाते हैं जो कुछ उपयोगकर्ता भूमिकाओं के लिए आवश्यक नहीं हैं, तो आपका मुद्दा समाप्त हो सकता है ... यह मेरे लिए निश्चित है!
ट्रैविस Pflanz

आप केवल स्टाइल के साथ उन्हें छिपाने के बजाय उपयोगकर्ता द्वारा मेटाबोक्स को क्यों नहीं हटाते हैं?
स्टीफन हैरिस

मैं जो कुछ भी नहीं निकालता हूं वह एक मेटा बॉक्स है, कुछ मेटा बॉक्स के हिस्से हैं, इसलिए मुझे लगा कि मैं दो के बजाय एक फ़ंक्शन का उपयोग करूंगा।
ट्रैविस Pflanz

ट्रैविस, इस पर अधिक खर्च करने के लिए धन्यवाद। हालाँकि सीएसएस समाधान मेटाबॉक्स को स्थानांतरित करने की समस्या को हल नहीं करता है (आंशिक रूप से फ़िल्टर करने और पुन: व्यवस्थित करने का आपका पिछला समाधान)। जैसा कि मैंने पहले उल्लेख किया है, मेरे सेटअप में विशेष मेटाबॉक्स के साथ कई कस्टम पोस्ट प्रकार हैं जो मैंने बनाया था और उन्हें वहां रहना होगा। वास्तव में बहुत कम हैं जिन्हें मैं छिपाना चाहता हूं (लेकिन वे कुछ प्रवेशों के लिए उपयोगी होंगे, इसलिए मैं उन्हें स्थायी रूप से नहीं निकालना चाहता हूं और सीएसएस द्वारा छिपाना एक अच्छा कदम नहीं है)। मुझे अभी तक इस मुद्दे का संतोषजनक समाधान नहीं मिला है। वैसे भी प्रयास के लिए धन्यवाद।
अनफवियो

1

क्या आपने व्यवस्थापक प्लगइन में देखा है ?

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


वह प्लगइन आपको "स्थिति को कॉन्फ़िगर करने" की अनुमति नहीं देता है, केवल दृश्यता। यह एक बहुत अच्छा प्लगइन है, जो ..
frnhr

मैं सभी को बारीकी से प्लगइन पर नहीं देखा है, लेकिन अगर यह एक में हेरफेर कर सकते हैं, तो यह शायद कुछ कोड परिवर्धन के माध्यम से दूसरे को हेरफेर करने के लिए बनाया जा सकता है। एक अच्छे लॉन्चिंग पॉइंट के लिए बनाता है।
JCL1178
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.