我正在与一个管理用户和许多供应商用户的woocommerce wordpress网站工作。我想要创建另一个用户类型(供应商经理),它可以管理一组供应商用户。只有管理员才能将供应商用户分配给这种新的用户类型。所以有点像,
管理员->管理人员->组供应商。
通过管理,我的意思是添加、编辑、删除指定供应商用户的产品,也可以添加供应商角色的新用户。
编辑-我已经定义了一个自定义用户为'vendor_manager‘类型与’列表用户‘,’添加用户‘,’删除用户‘的能力。但它列出了“vendor_manager”仪表板中的所有用户。我想要的是只列出管理员分配给' vendor _manager‘的用户(仅为供应商类型)。为了进行分配,我在admin的仪表板中创建了一个带有acf字段的菜单,在其中我将一组供应商用户分配给这个“供应商_管理器”。我只想限制'vendor_manager‘用户只管理指定的用户。希望这有意义。
供应商管理器角色-
add_role(
'vendor_manager',
__( 'Vendor Manager', 'yourtextdomain' ),
array(
'read' => true,
'edit_posts' => true,
'create_users'=> true,
'delete_users'=> true,
'edit_users'=> true,
'list_users'=> true,
'promote_users'=> true,
'remove_users'=> true,
'assign_product_terms'=> true,
'delete_others_products'=> true,
'delete_private_products'=> true,
'delete_product'=> true,
'delete_product_terms'=> true,
'delete_products'=> true,
'delete_published_products'=> true,
'edit_others_products'=> true,
'edit_private_products'=> true,
'edit_product'=> true,
'edit_product_terms'=> true,
'edit_products'=> true,
'edit_published_products'=> true,
'manage_product_terms'=> true,
'publish_products'=> true,
'read_private_products'=> true,
'read_product'=> true,
));ACF选项页面,将供应商分配给经理-
if( function_exists('acf_add_options_page') ) {
acf_add_options_page(array(
'page_title' => 'Groups',
'menu_title' => 'Groups',
'menu_slug' => 'groups',
'capability' => 'edit_posts',
'redirect' => false
));
}向经理分配供应商的-

有什么帮助吗?
发布于 2019-11-30 13:08:19
您可以通过以下代码创建此自定义角色(供应商管理器),并向其添加特权:
add_role(
'vendor_manager',
__( 'Vendor manager', 'yourtextdomain' ),
array(
'read' => true,
'edit_posts' => true,
// Various Capabilities
));也请看一下这两个链接的全部引文:
https://www.cloudways.com/blog/add-custom-user-roles-in-wordpress/
https://www.ibenic.com/manage-wordpress-user-roles-capabilities-code/
https://stackoverflow.com/questions/59116399
复制相似问题