首页 > 解决方案 > 如何创建 woocommerce 仅订单管理器访问权限

问题描述

我正在尝试在我的 wordpress 中创建一个可以管理订单的角色(编辑、删除、读取和更改状态)

我在我的 woocommerce 中使用用户角色编辑器插件,
也尝试过:

edit_shop_order
edit_shop_orders
edit_published_shop_orders
edit_private_shop_orders
edit_others_shop_orders
read_shop_order
shop_order
view_admin_dashboard
woocommerce_order_itemmeta
woocommerce_order_items
woocommerce_view_order

问题是如果我不检查manage_woocommerce没有要显示的订单,但是如果我检查它,所有订单都会正确显示,而且还会显示 woocommerce 设置。
每个人都可以通过编程方式或用户角色编辑器插件来帮助我吗?

标签: woocommerce

解决方案


通过添加此代码,您可以禁用其他 woocommerce 设置菜单并仅激活订单菜单:

add_action( 'admin_menu', 'remove_menu_pages', 999);
function remove_menu_pages() {
global $current_user;

$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
  if($user_role == "orders_manager") {
    $remove_submenu = remove_submenu_page('woocommerce', 'wc-settings');
    $remove_submenu = remove_submenu_page('woocommerce', 'wc-addons');
    $remove_submenu = remove_submenu_page('woocommerce', 'wc-status');
  }
}

推荐阅读