【问题标题】:Create an user role for order status validation on WooCommerce在 WooCommerce 上为订单状态验证创建用户角色
【发布时间】:2019-08-11 20:17:58
【问题描述】:

我需要一个与客户具有相同权限的角色,但还需要能够将订单状态从“等待付款”更改为“已付款”(或任何其他状态名称)。此外,还有删除处于“等待付款”状态的订单的特权。

此角色不应有权将订单状态从“已付款”更改回“等待付款”或删除具有“已付款”状态的订单或任何其他权限。

我尝试了一些插件作为用户角色编辑器,但没有授予对订单状态管理器的访问权限。有谁知道如何使用插件或 php 做到这一点?

【问题讨论】:

    标签: php plugins woocommerce hook-woocommerce


    【解决方案1】:

    我设法通过结合几种解决方案来实现这一点:

    1. 使用 Advanced Access Manager 插件,我创建了一个具有以下功能的用户:阅读、编辑帖子、管理 woocommerce 和编辑商店订单。由于此功能启用了许多我不希望此角色拥有的管理菜单选项,因此我限制了对除 woocommerce 菜单中的“订单”之外的所有后端菜单的访问。

    2. 但是,管理菜单中有一些选项不能被插件限制,所以我使用了在

    3. 的推荐

    https://wordpress.stackexchange.com/questions/136058/how-to-remove-admin-menu-pages-inserted-by-plugins

    https://wordpress.stackexchange.com/questions/142517/remove-ability-to-access-certain-admin-menus

    将下一个代码添加到functions.php:

    add_action( 'admin_menu', 'my_remove_menu_pages' );
    function my_remove_menu_pages() {
      if(isset(wp_get_current_user()->roles[0]) && wp_get_current_user()->roles[0] == 'financieros'){ 
          remove_menu_page('edit.php?post_type=uncodeblock'); 
          remove_menu_page('wpcf7');  
          remove_menu_page('heypublisher-submission-manager'); } }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-30
      • 2018-03-04
      • 2019-07-18
      • 2021-07-22
      • 2020-11-08
      • 1970-01-01
      • 2020-09-01
      • 2017-05-24
      相关资源
      最近更新 更多