Как показать меню плагина WP для ролей пользователей редактора в WordPress

Я пытаюсь показать страницу меню/параметров моего плагина для роли «Редактор», но она не отображается. Как это решить? Спасибо.

Вот мой код:

function jowct_add_plugin_for_editors(){  
  if (!current_user_can('manage_options')) {
    add_menu_page(
			'Menu Page Title', 
			'Menu Title',
			'delete_others_pages',
			'jowct-wpplugin-menu',
			'jowct_menu_option_page',
			'dashicons-admin-generic',
			'3',
		); 
  }  
} 
if(is_admin()) {  
  add_action( 'admin_menu', 'jowct_add_plugin_for_editors' );  
}


person jojoi    schedule 17.07.2017    source источник


Ответы (2)


Вы можете полностью удалить if. (оба) Вам не нужно слишком проверять manage_options, так как вы уже проверяете delete_others_pages
Подробнее https://codex.wordpress.org/Roles_and_Capabilities

function jowct_add_plugin_for_editors(){  
    add_menu_page(
            'Menu Page Title', 
            'Menu Title',
            'delete_others_pages', //this will restrict access
            'jowct-wpplugin-menu',
            'jowct_menu_option_page',
            'dashicons-admin-generic',
            '3'  // this comma was incorrect syntax
        );
} 
// action admin_menu will only trigger in the admin, no need for the if.
add_action( 'admin_menu', 'jowct_add_plugin_for_editors' );
person janw    schedule 17.07.2017
comment
Спасибо, что нашли время посмотреть мой код и за ваши отзывы. Я попытался реализовать ваш код, но это не сработало. когда я удаляю if, он создает новое меню в области администратора роли администратора. И меню по-прежнему не отображается в административной области роли редактора. - person jojoi; 18.07.2017

Спасибо всем, я только что решил эту проблему. В этом случае я хочу показать главное меню и подменю плагина роли администратора. Пока роль редактора имеет доступ только к главному меню. Ключевым моментом является установка возможности главного меню на возможности редактора, такие как «moderate_comments», таким образом, как администратор, так и редактор могут получить доступ к этому главному меню.

Для подменю установите возможность «manage_options». Таким образом, только администратор сможет видеть это подменю. Ознакомьтесь с этой таблицей: https://codex.wordpress.org/Roles_and_Capabilities

person jojoi    schedule 18.07.2017