简体   繁体   English

如何从非管理员菜单中隐藏“WooCommerce”?

[英]How to hide “WooCommerce” from menu for non admin?

I tried the following but it didn't work我尝试了以下但没有用

add_action( 'admin_menu', 'wpse28782_remove_menu_items' );
function remove_menus(){
remove_menu_page( 'edit.php?post_type=shop_order' );       
}

add_action( 'admin_menu', 'remove_menus' );

How can I hide it?我怎样才能隐藏它?

One option is to use the admin menu editor plugin which will let you modify your admin menu based on a users permissions.一种选择是使用管理菜单编辑器插件,它可以让您根据用户权限修改管理菜单。

https://en-au.wordpress.org/plugins/admin-menu-editor/ https://en-au.wordpress.org/plugins/admin-menu-editor/

Alternatively you can use a solution based on the users capabilities, this would target anyone that doesn't have admin privileges:或者,您可以使用基于用户功能的解决方案,这将针对没有管理员权限的任何人:

add_action( 'admin_menu', 'no_woo' );

function no_woo() {
    if ( current_user_can('manage_options') == false ) {
        remove_menu_page( 'woocommerce' );
    }
}

Case 1: Modify code to achive this, (Universal Solution)案例1:修改代码以实现这一点,(通用解决方案)

You can use the following to debug:您可以使用以下方法进行调试:

add_action( 'admin_init', 'wodebug_admin_menu' );

function wodebug_admin_menu() {

    echo '<pre>' . print_r( $GLOBALS[ 'menu' ], TRUE) . '</pre>';
}

This gives (for my setup) the following for the Contact Form 7 plugin menu page:这为 Contact Form 7 插件菜单页面提供(对于我的设置)以下内容:

[27] => Array
        (
            [0] => Formular
            [1] => wpcf7_read_contact_forms
            [2] => wpcf7
            [3] => Contact Form 7
            [4] => menu-top menu-icon-generic toplevel_page_wpcf7 menu-top-last
            [5] => toplevel_page_wpcf7
            [6] => none
        )

get the key and apply in your case.获取密钥并适用于您的情况。

add_action( 'admin_init', 'wpse_136058_remove_menu_pages' );

function wpse_136058_remove_menu_pages() {

    remove_menu_page( 'edit.php?post_type=acf' );
    remove_menu_page( 'wpcf7' ); // Key place in this
}

Case 2: Use a Plugin.案例 2:使用插件。

http://wordpress.org/plugins/adminimize/ http://wordpress.org/plugins/adminimize/

This week I requested WooCommerce to change their setup, so this is better to manage.本周我要求 WooCommerce 更改他们的设置,所以这更好管理。 The idea needs votes, so please add your vote and hope we don't need to code such anymore: https:ideas.woocommerce.com .这个想法需要投票,所以请添加您的投票,希望我们不再需要这样编码: https:ideas.woocommerce.com Please give it the maximum 3 points, thanks!请给它最高3分,谢谢!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM