我的WooCommerce版本是4.5。2.
我想删除自定义用户的添加顺序,使其无法访问wp-admin/post-new.php?post_type=shop_order
。
我已使用具有以下权限的用户角色编辑器创建了自定义用户:
这样,用户只能查看现有订单,并单击订单预览更新为“已完成”。
我试着用这个:
remove_submenu_page( 'edit.php?post_type=shop_order', 'post-new.php?post_type=shop_order');
...但订单主菜单变得不可访问。
我偶然发现这篇文章删除或隐藏批量订单面板上的WooCommerce上的“添加新”按钮,该按钮使用CSS从页面上隐藏“添加订单”。
我希望有人能为我指明一个方向,告诉我如何实现我所追求的目标。
更新:
根据7uc1f3r的回答,这是我的输出
[edit.php?post_type=shop_order] => Array
(
[5] => Array
(
[0] => Orders
[1] => edit_shop_orders
[2] => edit.php?post_type=shop_order
)
[10] => Array
(
[0] => Add order
[1] => edit_shop_orders
[2] => post-new.php?post_type=shop_order
)
)
使用提供的解决方案,我使用此选项,以便自定义用户无法添加订单并访问wp-admin/post-new.php?post_type=shop_order:
unset( $submenu['edit.php?post_type=shop_order'][10][0] );
unset( $submenu['edit.php?post_type=shop_order'][10][1] );
unset( $submenu['edit.php?post_type=shop_order'][10][2] );
此外,我应用CSS来隐藏管理面板上的添加顺序:
ul.wp-submenu.wp-submenu-wrap {
display: none !important;
}
现在看起来是这样的:
我正在使用wc4.4。1
更新:由于您发布的输出,这应该足以删除“订单:添加新的”
function action_admin_menu() {
global $menu, $submenu;
// Unset 'Order: add new'
unset( $submenu['edit.php?post_type=shop_order'][10] );
}
add_action( 'admin_menu', 'action_admin_menu' );
可选:对于"产品:添加新"和调试,您可以使用
// DEBUG: This displays the complete wordpress admin menu on your dashboard for admin only. (Remove afterwards)
function debug_admin_menus() {
global $menu, $submenu, $pagenow;
if ( current_user_can('manage_options') ) {
if( $pagenow == 'index.php' ) { // print on dashboard
echo '<pre>', print_r( $menu, 1 ), '</pre>'; // top level menus
echo '<pre>', print_r( $submenu, 1 ), '</pre>'; // submenus
}
}
}
add_action( 'admin_notices', 'debug_admin_menus' );
function action_admin_menu() {
global $menu, $submenu;
// Unset 'Products: add new'
unset( $submenu['edit.php?post_type=product'][10] );
}
add_action( 'admin_menu', 'action_admin_menu' );
相关:
>
在WordPress管理仪表板中更改WooCommerce产品菜单标题
如何重命名WordPress管理仪表板上WooCommerce选项卡下的菜单选项卡
我想删除商店经理将订单标记为已完成的能力。为此,我在主题的functions.php文件中使用了以下基于“有条件地在WooCommerce管理订单列表中隐藏特定操作按钮”的答案: 通过这个,我成功地从shop_order页面上删除了完整的按钮。但是,商店经理仍然能够使用订单预览中出现的完成按钮完成订单。为了避免这种情况,我尝试了前一个动作之后的下一个动作: 但是,这不会从预览窗口中删除按钮,因为它
我正在为WooCommerce开发一个插件。我想覆盖admin的订单详细信息模板。我已经阅读了关于https://www.skyverge.com/blog/override-woocommerce-template-file-within-a-plugin/,但我仍然不明白如何覆盖admin的订单详细信息模板。以下是我的代码: 它不会在订单详细信息之后调用与
订单管理位于WooCommerce - 订单下,当你的站点开始收到订单后,就能看到这个菜单。订单仅对管理员和商店经理/Shop Manager可见,每个订单有一个唯一的ID,这个ID就是WordPress post_id,是不连续的。本文简单介绍一下WooCommerce订单管理的方法。 订单状态的含义 待付款 / Pending Payment 成功下单但未支付订单,等待付款。如果支付网关的no
使用以下代码,我可以在WooCommerce产品上获得一个自定义字段,但是如何在订单、结帐和管理订单(后端)上显示它呢? 这是我在每个产品上的自定义字段 这是我的管理订单(后端)详细信息。我尝试显示我在每个产品帖子中输入的正确元数据。 如何在管理订单中显示我在自定义字段中输入的值?我也希望有人能帮助我显示在订单和结帐页面的元。。。或者引导我走向正确的方向。我意识到,为了在管理订单中显示它,我必须确
我想在Woocommerce的管理员查看订单页面上添加futured图像。已创建新列,但未显示产品图像。我应该如何显示订单缩略图?谢谢
我想在页面中添加一个自定义按钮,管理员可以在其中手动创建新订单(管理员订单页面)。 管理员- 在我添加产品和点击编辑按钮后,我可以在添加元按钮附近显示自定义按钮吗?我找不到可以使用的钩子。 我已经添加了上面的代码。我得到了结果,但按钮显示后不久,我添加的产品。我只希望按钮显示时,我点击编辑按钮。 #更新 当我添加以下代码时,它起了作用。这条路对吗?由于设置了同一字段中的按钮