আমি আমার সম্পাদকদের মেনু পরিবর্তন করার ক্ষমতা দিতে সক্ষম হতে চাই, এটি কি করা যায়?
উপস্থিতি ট্যাবটি কোনও বিকল্প বলে মনে হচ্ছে না, আমি কি এটি এটি করতে পারি?
আমি আমার সম্পাদকদের মেনু পরিবর্তন করার ক্ষমতা দিতে সক্ষম হতে চাই, এটি কি করা যায়?
উপস্থিতি ট্যাবটি কোনও বিকল্প বলে মনে হচ্ছে না, আমি কি এটি এটি করতে পারি?
উত্তর:
এটি আপনার থিমের যোগ করুন functions.php
:
// add editor the privilege to edit theme
// get the the role object
$role_object = get_role( 'editor' );
// add $cap capability to this role object
$role_object->add_cap( 'edit_theme_options' );
WP_Role
admin_init
এবং শুধুমাত্রif !$role_object->has_cap('edit_theme_options')
সম্পাদনা: ডাব্লুপিপি 4.9 এর জন্য আপডেট করুন এবং কেবল সম্পাদকের জন্য মেনু আইটেমগুলি লুকানো হচ্ছে
আপনি যদি চান যে আপনার ব্যবহারকারীরা নেভিগেশন মেনু পরিবর্তন করতে সক্ষম হবেন, তবে উপস্থিত বিকল্পের তুলনায় নয়: এটি ব্যবহার করুন
// Do this only once. Can go anywhere inside your functions.php file
$role_object = get_role( 'editor' );
$role_object->add_cap( 'edit_theme_options' );
আপনি আপনার প্রশাসনিক প্যানেলকে সতেজ করার পরে আপনি এই পুরো কোডটি মন্তব্য করতে পারেন, কারণ উপরের কোডটি ডাটাবেসে অবিচ্ছিন্ন পরিবর্তনগুলি করবে।
সম্পাদকের কাছে দৃশ্যমান অধীনে আপনার কাছে এখন সমস্ত বিকল্প রয়েছে। আপনি অন্যান্য বিকল্পগুলি এর মতো লুকিয়ে রাখতে পারেন:
function hide_menu() {
if (current_user_can('editor')) {
remove_submenu_page( 'themes.php', 'themes.php' ); // hide the theme selection submenu
remove_submenu_page( 'themes.php', 'widgets.php' ); // hide the widgets submenu
remove_submenu_page( 'themes.php', 'customize.php?return=%2Fwp-admin%2Ftools.php' ); // hide the customizer submenu
remove_submenu_page( 'themes.php', 'customize.php?return=%2Fwp-admin%2Ftools.php&autofocus%5Bcontrol%5D=background_image' ); // hide the background submenu
// these are theme-specific. Can have other names or simply not exist in your current theme.
remove_submenu_page( 'themes.php', 'yiw_panel' );
remove_submenu_page( 'themes.php', 'custom-header' );
remove_submenu_page( 'themes.php', 'custom-background' );
}
}
add_action('admin_head', 'hide_menu');
hide_menu()
ফাংশনের শেষ 3 টি লাইনগুলি আমার থিমের জন্য নির্দিষ্ট থিম। অ্যাডমিন প্যানেলে আপনি যে সাবমেনুটি আড়াল করতে চান তাতে ক্লিক করে আপনি দ্বিতীয় প্যারামিটারটি সন্ধান করতে পারেন। আপনার ইউআরএল এর পরে এমন কিছু হবে: উদাহরণ. com/wp-admin/themes.php?page=iiw_panel
সুতরাং, এই উদাহরণে, remove_submenu_page()
ফাংশনটির জন্য দ্বিতীয় প্যারামিটারটি হবেyiw_panel
আমি যখন অ্যাডমিন মেনু কাঠামোটি দেখি তখন মনে হয় nav-menus.php
লিঙ্কটি সামর্থ্যের সাথে আবদ্ধedit_theme_options
। আপনি এই ক্ষমতা অন্তর্ভুক্ত করতে সম্পাদকের ভূমিকা পরিবর্তন করতে পারেন? এটি তাদের উইজেট সম্পাদনা করার বিকল্পও দেবে , আমি জানি না এটি সমস্যা কিনা? সমস্ত মেনু অ্যাজাক্স স্টাফ এই ক্ষমতা দ্বারা সীমাবদ্ধ, সুতরাং মেনুগুলি সম্পাদনা করার জন্য কেবল অ্যাডমিন মেনু ক্ষমতা পরিবর্তন করা কার্যকর হবে না।
ইন্সটল প্লাগইন "ইউজার রোল এডিটর" - সুইচ edit_theme_options অন - ইনস্টল প্লাগইন প্রশাসনিক - "উইজেট" এবং "সম্পাদনাগুলির জন্য থিম স্যুইচ" স্যুইচ অফ;)
আমি খুঁজে পেয়েছি, আপনার মেনুটি এইভাবে কাজ করবে: ইনস্টল প্লাগইন " ব্যবহারকারী ভূমিকা সম্পাদক " এবং সেখানে আপনি সম্পাদকের ভূমিকা এবং অন্যদের জন্যও শর্তটি সম্পাদনা করতে পারেন। Edit_theme_options চালু করুন। তবে এখন: আপনি "থিমস", "উইজেটস" এর অধীনে "মেনু" -শক্তিটি দেখতে পাবেন। আমার জন্য: "মেনু" ক্লিক করার পরে (সম্পাদক হিসাবে) আমি পূরণ করা বিকল্পগুলি দেখতে পাচ্ছি না তবে খালি রয়েছে। সুতরাং I´d প্লাগইন নিষ্ক্রিয় "ব্যবহারকারী ভূমিকা সম্পাদক" এবং "মেনু" এর জন্য পূর্ণ বিকল্পগুলি সঠিকভাবে উপস্থিত হয়। নোট করুন যে "ইউজার রোল এডিটর" প্লাগইনটি নিষ্ক্রিয় করা এডিটরের সক্রিয় অবস্থায় রয়েছে! আমার পক্ষে ভাল, সম্ভবত এটি আপনাকেও সহায়তা করবে