从WordPress管理中删除Elementor菜单

时间:2018-07-10 作者:Amit Jugran

如何从wordpress管理菜单中删除elementor。我试过下面的选项,但不起作用。

add_action( \'admin_menu\', \'my_remove_menu_pages\' );
function my_remove_menu_pages() {
    remove_menu_page( \'edit.php?post_type=elementor_library\' );                   
    //Elementor
};

3 个回复
SO网友:aronmoshe_m

这对编辑来说是可行的。您可以根据您要针对的角色(例如。,editor, subscriber, 等等)。这个可以放进去functions.php 您的孩子主题。

function remove_menus(){
// get current login user\'s role
$roles = wp_get_current_user()->roles;

// test role
if( !in_array(\'editor\',$roles)){
return;
}

//remove menu from site backend.
remove_menu_page( \'edit.php?post_type=elementor_library\' ); // Elementor Templates
remove_menu_page( \'elementor\' ); // Elementor
}
add_action( \'admin_menu\', \'remove_menus\' , 100 );

SO网友:Amit Jugran

我已经能够使用\'admin_init\' 行动正确的代码如下

add_action( \'admin_init\', \'my_remove_menu_pages\' );
function my_remove_menu_pages() {

global $user_ID;

if ( current_user_can( \'subscriber\' ) ) 
{
remove_menu_page( \'edit.php?post_type=elementor_library\' );
remove_menu_page( \'elementor\' );
}
}
但是,我无法将其限制为特定的用户角色。上述代码对所有用户角色(包括管理员)都进行了限制。

我正在使用多站点安装。因此,如果有人知道将其限制为多站点安装上的用户角色,请添加必要的代码。

谢谢

SO网友:Marcos Goveia

此代码仅适用于管理员。

add_action( \'admin_init\', \'my_remove_menu_pages\' );
function my_remove_menu_pages($query) {
     $current_user = wp_get_current_user();
        if($current_user->ID == 1) //Aqui é o meu ID. Vai ocultar a página pra todos menos pra esse ID
                return $query;
remove_menu_page( \'edit.php?post_type=elementor_library\' );
remove_menu_page( \'elementor\' );
}

结束

相关推荐