从管理菜单项中删除按钮 - wordpress

时间:2018-03-14 14:46:15

标签: php wordpress

尝试从特定管理员用户的菜单项中删除Google Analytics。

<?php
    add_action('admin_menu', 'remove_admin_menu_links');
    function remove_admin_menu_links(){
        $user = wp_get_current_user();
        if( $user && isset($user->user_email) && 'email@address.com' == $user->user_email ) {

            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( 'admin.php?page=gadwp_settings' ); // Google Analytics

        }
    }

?>

Google Analytics以外的所有内容似乎都有效。

我尝试使用google_analytics.php来解决可能存在的问题,但是使用了按钮ID“page = gadwp_settings”和admin.php。

由于上述方法无效,我搜索了另一种选择并找到了;

add_action( 'admin_menu', 'remove_menus' );

  function remove_menus() {
    global $menu;
    global $submenu;

    // echo '<pre>';
    // print_r($menu);
    // print_r($submenu);
    // echo '</pre>';

    // If you're not the site creator
    // Hide some menus
    if ( wp_get_current_user()->ID != 3) {
      unset($menu[20]); // Removes 'Pages'.
      unset($menu[25]); // Removes 'Visibilities'.
      unset($menu[26]); // Removes 'Comments'.
      unset($menu[27]); // Removes 'Testimonials'.
      unset($menu[29]); // Removes 'Email Templates'.
      unset($menu[45]); // Removes 'Contact'.
      unset($menu[65]); // Removes 'Plugins'.
      unset($menu[65]); // Removes 'Google Analytics'.

      unset($submenu['index.php'][10]); // Removes 'Updates'.
      unset($submenu['themes.php'][5]); // Removes 'Themes'.
      unset($submenu['themes.php'][6]); // Removes 'Customize'.
      unset($submenu['themes.php'][11]); // Removes 'Editor'.
    }
  }

上面的一些似乎有效,删除了一些菜单项,但后来遇到问题仍然显示一些项目,一些项目被删除但没有列出。

0 个答案:

没有答案