![](/img/trans.png)
[英]Remove "Home" and go direct to WooCommerce "Orders" on WordPress Admin dashboard
[英]Remove submenu for 'Add Order' in WooCommerce on WordPress admin dashboard
我的 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;
}
現在看起來像這樣:
我正在使用WC 4.4.1
和WC 4.6.0
並且在兩個版本中都無法從菜單中創建新訂單。
更新:由於您發布的輸出,這應該足以刪除“訂單:添加新”
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' );
有關的:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.