La gestion et l’implémentation des menus avec WordPress 3

Depuis WordPress 3 la gestion des menus a beaucoup changé et heureusement car dans les versions antérieurs c’est un véritable casse tête quand on désire implémenter un menu en respectant par exemple un sens bien précis d’apparition des éléments ou exclure certaines catégories.

Les Avantages

  • Interface en jquery par glisser / déposer très simple d’utilisation.
  • Possibilité d’implémenter autant de menus que bon vous semble.
  • Ajouter des liens personnalisés à vos menus, nous ne sommes plus cantonné simplement aux pages et aux catégories.
  • Attribuer des titre de navigations différents que le nom de vos éléments (par exemple j’ai une page « Contact »  je peux lui attribuer le titre « Nous Contacter » dans le menu.

L’implémentation des menus

Pour vérifier si votre thème  gère les menus de WordPress 3, cliquer sur menus dans le bloc « Apparence » de votre interface d’administration.

Si votre thème ne gère pas les menus voici le message d’erreur :

Si votre thème gère les menus vous pouvez passer directement à l’étape Gestion des menus Sinon pour résoudre ce problème, il suffit simplement de déclarer à WordPress dans le fichier functions.php de votre thème que vous souhaiter utiliser les menus en rajoutant le code ci-dessous: [php]add_theme_support(‘nav-menus’); // je préviens wordpress que je veux utiliser les menus. register_nav_menus( array( // enregistrement des menus ‘primary’ => ‘Menu principal’, // ici mon menu principal ‘footer’ => ‘Menu en pied de page’, // ici mon menu en pied de page ) ); [/php] Avec cet exemple votre thème peut maintenant gérer 2 emplacements de menus (un menu principal et un menu en pied de page) Il ne reste plus qu’a appeler ces menus dans header.php et footer.php. Dans header.php rajouter ces lignes à l’emplacement de votre ancien menu : [php] <?php wp_nav_menu( array(‘theme_location’ => ‘primary’)); ?> [/php] Dans footer.php rajouter ces lignes : [php] <?php wp_nav_menu( array(‘theme_location’ => ‘footer’)); ?> [/php] Ces exemples utilisent seulement l’argument ‘theme_location’ de la fonction wp_nav_menu. Il existe de nombreux arguments supplémentaires à rajouter afin que votre menu s’adapte à la charte graphique de votre site par exemple.

Les arguments

'theme_location' => 'nom-de-votre-menu' 'container' => 'div'   (balise html qui contient votre menu) 'container_class' => 'menu' (la class css de votre container) 'container_id'    => 'menu-principal' (l'id de votre container) 'menu_class' => 'ma-class' (la class css de votre menu <ul class="ma-class") 'menu_id' => 'mon-id' (l'id css de votre menu <ul id="mon-id") Listes des arguments disponibles : http://codex.wordpress.org/Function_Reference/wp_nav_menu

La gestion des menus

Les 3 types d’éléments disponibles pour votre menu : La création d’un menu : déplacer les éléments en glisser/déposer, attribuer des nouveaux titres, créer des sous menus. Emplacement du menu : attribuer ce menu à l’emplacement désiré : navigation principal ou pied de page par exemple.

Laisser un commentaire

4 Commentaires

  1. Salut! Est-il possible de modifier les deux menus, un fois qu’il sont créés. J’ai essayé de supprimer mes deux menus de départ et en créer des nouveaux et rien ne changer, les menus restent comme à l’origine de la création. Mon thèmes est Snapwire Gabfire
    Merci de m’aider.
    Dorothy

  2. slt, je rencontre un problèmr avec mon menu, l’ajout de catégorie ne fonctionne une fois sur dix erreur 500 as tu une idée d’ou peut venir le problème Cdt

  3. Hello, possible d’avoir un petit code CSS ? Une base pour avoir une menu en ligne, merci

  4. Un grand merci pour ces explications claires et concises