如何为具有供应商角色的用户添加WordPress中选项的菜单页面?

时间:2015-12-29 作者:Ali Zia

我想添加新选项页ONLY for those users whose role is vendor. 我该怎么做?这是我当前的代码。

add_action(\'admin_menu\', \'business_settings_menu\');

function business_settings_menu() {
    add_menu_page(\'Business Settings\', \'Business Settings\', \'administrator\', \'business_settings\', \'business_settings_page\', \'dashicons-arrow-right-alt\', \'31.6\');
    add_action(\'admin_init\', \'business_settings\');
}
我面临的问题是,当管理员登录时,他可以看到此页面。但当我从供应商帐户登录时,我无法看到此链接。有人能指引我吗?我有woocommerce 安装在我的wordpress上。

1 个回复
SO网友:s_ha_dum

第三个参数add_menu_page()$capability.

add_menu_page( 
  $page_title, 
  $menu_title, 
  $capability, 
  $menu_slug, 
  $function, 
  $icon_url, 
  $position 
);
控制谁可以查看页面。您已注册为“管理员”,这是一个user role. 想必您的供应商不属于这一角色。要解决这个问题,您需要将该参数更改为供应商拥有的功能(最好不是角色)。你可以create custom capabilities 为此,我可能会这么做。

相关推荐

正在尝试获取wp-includes/capabilities.php中非对象的属性

在调试中,我每分钟都会收到以下通知序列。日志:[23-Oct-2012 13:27:33 UTC] PHP Notice: Trying to get property of non-object in mysite/wp-includes/capabilities.php on line 1022 [23-Oct-2012 13:27:33 UTC] PHP Notice: Trying to get property of non-object in mysite/wp-includes/