woocommerce - 如何创建 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 设置菜单并仅激活订单菜单:
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');
}
}
推荐阅读
- r - 重复/复制数据框的特定行并追加
- python - Hausdorff 距离 2D
- java - 使用 Lambdas 创建和填充对象作为参数
- python - 使用python根据文本文件中的特定模式提取行数据
- spring-boot - 无法让 springboot 应用程序运行/构建特定配置文件
- java - 如何在 Java 中打印内部单元测试?
- mysql - 从一个表中选择在另一个表中满足条件的所有数据
- javascript - JavaScript 初学者级别 - 需要帮助理解 Math.random 和 "quotes.length"
- api - JMeter:录制 n 播放,还提供 API 访问权限
- sql-server - STIntersect 表示每个点都与每个区域相交 - 需要确认