Sha*_*lor 5 php wordpress function
我试图对除一个(我自己)以外的所有用户隐藏 Wordpress 中的某些管理菜单项。
我可以找到各种教程,但它们大多隐藏在用户角色而不是用户上。
我从 Wordpress 法典中找到了这个:
<?php
function custom_menu_page_removing() {
remove_menu_page( $menu_slug );
}
add_action( 'admin_menu', 'custom_menu_page_removing' );
?>
Run Code Online (Sandbox Code Playgroud)
但我并不完全理解它,而且我认为我需要向它添加更多的 PHP 来基本上使代码说:
如果用户不是 shaun@seedcreativity.co.uk(我!)
然后删除这些菜单项:
商品 ID 1、商品 ID 2、商品 ID 3 等...
任何人都可以帮忙吗?
Afi*_*eri 10
您可以检查用户 ID:
add_action( 'admin_init', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
global $user_ID;
if ( $user_ID != 1 ) { //your user id
remove_menu_page('edit.php'); // Posts
remove_menu_page('upload.php'); // Media
remove_menu_page('link-manager.php'); // Links
remove_menu_page('edit-comments.php'); // Comments
remove_menu_page('edit.php?post_type=page'); // Pages
remove_menu_page('plugins.php'); // Plugins
remove_menu_page('themes.php'); // Appearance
remove_menu_page('users.php'); // Users
remove_menu_page('tools.php'); // Tools
remove_menu_page('options-general.php'); // Settings
remove_menu_page('edit.php'); // Posts
remove_menu_page('upload.php'); // Media
}
}
Run Code Online (Sandbox Code Playgroud)
小智 10
您可以使用以下命令删除给定电子邮件的“帖子”菜单:
function custom_menu_page_removing() {
if ( get_currentuserinfo()->user_email != 'shaun@seedcreativity.co.uk' )
remove_menu_page( 'edit.php' );
}
add_action( 'admin_menu', 'custom_menu_page_removing' );
Run Code Online (Sandbox Code Playgroud)
如果用户可以猜出正确的 URL,例如 /wp-admin/edit.php,它不会阻止用户使用已删除的页面
你可以试试这个代码。
function remove_menus(){
$current_user = wp_get_current_user();
if( 'shaun@seedcreativity.co.uk' !== $current_user->user_email){
remove_menu_page( 'item1' );
remove_menu_page( 'item2' );
}
}
add_action( 'admin_menu', 'remove_menus' );
Run Code Online (Sandbox Code Playgroud)
item1, item2 将您的页面名称,例如 http://test.com/wp-admin/admin.php?page=item1 http://test.com/wp-admin/admin.php?page=item2
| 归档时间: |
|
| 查看次数: |
16099 次 |
| 最近记录: |