Maison  >  Article  >  Tutoriel CMS  >  Série de création de sites Web d'entreprise WordPress : supprimez les menus inutiles de la barre latérale en arrière-plan

Série de création de sites Web d'entreprise WordPress : supprimez les menus inutiles de la barre latérale en arrière-plan

PHPz
PHPzavant
2023-03-22 16:54:221069parcourir

Cet article est le premier d'une série de didacticiels sur la création de sites Web d'entreprise WordPress. Il vous expliquera comment supprimer les menus inutiles de la barre latérale dans le backend WordPress. J'espère qu'il sera utile à tout le monde.

Série de création de sites Web d'entreprise WordPress : supprimez les menus inutiles de la barre latérale en arrière-plan

Personnalisez le menu supérieur de la barre latérale du backend

Tout d'abord, jetons un coup d'œil à ce qu'est le menu de la barre latérale du backend :

Série de création de sites Web dentreprise WordPress : supprimez les menus inutiles de la barre latérale en arrière-plan

L'image ci-dessus est après la connexion avec le compte administrateur Pour tous les éléments de menu que vous voyez dans la barre latérale, WordPress a défini différentes autorisations de fonction pour les utilisateurs ayant des rôles différents, de sorte que les utilisateurs ayant des rôles différents voient différents éléments de menu de la barre latérale en arrière-plan. À l'heure actuelle, la demande revient. Parfois, même en tant qu'administrateur, certains menus ne sont pas utilisés. Par exemple, si vous utilisez WordPress pour créer un site Web d'introduction pour une entreprise, le site n'a pas du tout de fonction de commentaire, donc le site Web n'a pas de fonction de commentaire. Menu Commentaires dans la barre latérale C'est inutile, et si les utilisateurs professionnels le voient, ils seront confus. Le meilleur moyen est donc de supprimer le menu de gestion de la barre latérale qui ne devrait pas être là selon la situation réelle. La méthode d'implémentation spécifique consiste à ajouter le code suivant après le premier

function remove_menus() {
  global $menu;
  $restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
  end ($menu);
  while (prev($menu)){
    $value = explode(' ',$menu[key($menu)][0]);
    if(strpos($value[0], &#39;<&#39;) === FALSE) {
      if(in_array($value[0] != NULL ? $value[0]:"" , $restricted)){
        unset($menu[key($menu)]);
      }
    }
    else {
      $value2 = explode(&#39;<&#39;, $value[0]);
      if(in_array($value2[0] != NULL ? $value2[0]:"" , $restricted)){
        unset($menu[key($menu)]);
      }
    }
  }
}

if ( is_admin() ) {
  // 删除左侧菜单
  add_action(&#39;admin_menu&#39;, &#39;remove_menus&#39;);
}

Personnalisez le menu de niveau supérieur à supprimer

La partie centrale de ce qui précède Le code est une fonction Remove_menus(), puis exécutez la fonction Remove_menus via la fonction add_action de l'interface d'action WordPress. Dans la fonction Remove_menus, le tableau $restricted est utilisé pour définir les éléments de menu qui doivent être supprimés. Le tableau $restricted ci-dessus fournit tous les éléments de menu, c'est-à-dire que si vous copiez tous les codes ci-dessus dans Functions.php sans modification, alors votre WordPress Il n'y aura pas de menu en arrière-plan. Vous devez supprimer le menu en fonction des besoins réels. Parlons du menu correspondant à chaque élément du tableau $restricted :

  • __('Dashboard') : Menu du tableau de contrôle
  • . __('Posts') : Article
  • __('Media') : Médias
  • __('Liens') : Liens
  • __('Pages') : Pages
  • __('Commentaires') : Commentaires
  • __('Apparence') : Apparence
  • __('Plugins') : Plug-ins
  • __('Utilisateurs') : Utilisateurs
  • __('Outils') : Outils
  • __('Paramètres') : Paramètres

Par exemple, vous souhaitez simplement supprimer les commentaires et le menu Outils, il vous suffit de réécrire le tableau $restricted à la ligne 3 du code ci-dessus :

$restricted = array(__(&#39;Comments&#39;), __(&#39;Tools&#39;));

Supprimer les sous-menus inutiles

Là sont des sous-menus sous le menu supérieur du backend WordPress, bien sûr certains sous-menus Le menu n'est pas utilisé, nous pouvons également le supprimer. WordPress 3.1 et les versions ultérieures n'ont besoin d'utiliser qu'une seule fonction remove_submenu_page( $menu_slug, $submenu_slug ) Il y a deux paramètres ici. l'abréviation du menu de niveau supérieur où se trouve le sous-menu, $submenu_slug est l'abréviation du sous-menu, comment obtenir ces deux abréviations ? Par exemple, cliquez sur le menu de niveau supérieur Paramètres, l'adresse du lien est similaire :
                                       http://example/wp-admin/options-general.php                                                                                                 L'abréviation du menu de niveau supérieur

Paramètres

est options- general.php, c'est-à-dire Supprimez le contenu restant après avoir supprimé http://example/wp-admin/, et ainsi de suite ; puis cliquez sur le sous-menu Confidentialité sous le menu supérieur Paramètres, et l'URL suivante s'ouvrira : http://example/wp-admin /options-privacy.php
 L'abréviation du sous-menu

privacy

est options-privacy.php, d'accord, c'est aussi simple que cela, voici le code d'implémentation :

function remove_submenu() {
	// 删除"设置"下面的子菜单"隐私"
	remove_submenu_page( &#39;options-general.php&#39;, &#39;options-privacy.php&#39; );

	// 删除"外观"下面的子菜单"编辑"
	remove_submenu_page( &#39;themes.php&#39;, &#39;theme-editor.php&#39; );
}

if ( is_admin() ) {
    add_action(&#39;admin_init&#39;,&#39;remove_submenu&#39;);
}

Supprimez le menu en fonction du rôle de l'utilisateur

Si vous souhaitez supprimer le menu de la barre latérale correspondant par rôle d'utilisateur, faites simplement un autre jugement au niveau de l'utilisateur. Ajoutez un jugement à add_action à la ligne 11 et réécrivez-le comme :

function remove_menus() {
    global $menu;

    // 这里$restricted设置了评论和工具菜单
    $restricted = array(__(&#39;Comments&#39;), __(&#39;Tools&#39;));
    end ($menu);
    while (prev($menu)){
        $value = explode(' ',$menu[key($menu)][0]);
        if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
    }
}

function remove_submenu() {
	remove_submenu_page( 'options-general.php', 'options-privacy.php' );
}

global $current_user;
get_currentuserinfo();

//如果当前用户的等级小于3,那么就删除对应的菜单
if ($current_user->user_level < 3 && is_admin()) {
    add_action('admin_menu', 'remove_menus');
    add_action('admin_init','remove_submenu');
}

.

Dans le backend WordPress – les utilisateurs, les administrateurs peuvent afficher/modifier les rôles des utilisateurs. Voici la relation correspondante entre les rôles des utilisateurs et leurs niveaux :

  • Le niveau 0 correspond aux Abonnés
  • Le niveau 1 correspond aux Contributeurs
  • Niveau 2 – Le niveau 4 correspond à Auteur
  • 5 – Le niveau 7 correspond à Editeur
  • 8 – Le niveau 10 correspond à Administrateur

Après WordPress 3.0, les niveaux numériques des utilisateurs seront progressivement abandonnés. pour utiliser les autorisations des utilisateurs. Vous pouvez utiliser la fonction current_user_can() pour déterminer les autorisations des utilisateurs.

Utilisez un plug-in super simple

Ce qui suit recommande un plug-in super simple qui ne nécessite aucun codage. Vous pouvez obtenir la plupart des fonctions mentionnées ci-dessus en faisant simplement glisser la souris. Le nom du plug-in est : Admin Menu Editor, vous pouvez cliquez ici pour accéder au téléchargement officiel de WordPress, après l'avoir activé, allez dans Paramètres - Éditeur de menu, vous pouvez modifier le menu d'arrière-plan, vous pouvez également ajouter un lien externe menus, ajustez l’ordre des menus, etc. Découvrez le reste par vous-même !

Apprentissage recommandé : "Tutoriel WordPress"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer