{"id":27731,"date":"2023-11-10T19:15:59","date_gmt":"2023-11-10T19:15:59","guid":{"rendered":"\/tutoriels\/?p=27731"},"modified":"2024-11-26T15:17:39","modified_gmt":"2024-11-26T15:17:39","slug":"creer-menu-personnalise-avec-wp_nav_menu-wordpress","status":"publish","type":"post","link":"\/fr\/tutoriels\/creer-menu-personnalise-avec-wp_nav_menu-wordpress","title":{"rendered":"Cr\u00e9er un menu personnalis\u00e9 avec wp_nav_menu de WordPress"},"content":{"rendered":"<p>Les menus font partie des &eacute;l&eacute;ments les plus courants sur les sites web. Avec WordPress, vous pouvez facilement personnaliser les menus et choisir parmi plusieurs options d&rsquo;affichage si votre th&egrave;me le permet. Toutefois, si vous souhaitez utiliser des menus dans un emplacement personnalis&eacute;, vous devez modifier les fichiers de votre th&egrave;me et ajouter la fonction <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_nav_menu\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\"><strong>wp_nav_menu<\/strong><\/a>.<\/p><p>En combinant cette fonction avec <strong>register_nav_menu<\/strong>, vous pourrez cr&eacute;er et placer des menus n&rsquo;importe o&ugrave; sur votre site web. L&rsquo;ajout et la configuration de ces fonctions sont relativement simples, m&ecirc;me si vous n&rsquo;&ecirc;tes pas un d&eacute;veloppeur. De plus, vous pouvez modifier les menus directement depuis votre tableau de bord WordPress.<\/p><p>Dans cet article, nous allons parler du fonctionnement de la fonction wp_nav_menu de WordPress. Nous allons vous montrer quels arguments et quelles classes fonctionnent avec wp_nav_menu, puis nous vous expliquerons comment utiliser la fonction avec votre th&egrave;me. C&rsquo;est parti !<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Build-Website-in-9-Easy-Steps-FR.pdf\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"1024\" height=\"283\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/eBook_-Build-website-FR-1024x283-1.png\/public\" alt=\"\" class=\"wp-image-41463\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/eBook_-Build-website-FR-1024x283-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/eBook_-Build-website-FR-1024x283-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/eBook_-Build-website-FR-1024x283-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/eBook_-Build-website-FR-1024x283-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-qu-est-ce-que-la-fonction-wordpress-wp-nav-menu\"><strong>Qu&rsquo;est-ce que la fonction WordPress wp_nav_menu ?<\/strong><\/h2><p>wp_nav_menu est une fonction qui permet d&rsquo;afficher des menus personnalis&eacute;s sur les sites web WordPress.<\/p><p>Contrairement &agrave; <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_page_menu\/\" target=\"_blank\" rel=\"noopener\"><strong>wp_page_menu<\/strong><\/a>, qui affiche une liste des pages existantes, wp_nav_menu ne fonctionne qu&rsquo;avec les menus personnalis&eacute;s.<\/p><p>Vous pouvez ajouter la fonction &agrave; n&rsquo;importe quel fichier de mod&egrave;le de votre th&egrave;me pour contr&ocirc;ler l&rsquo;endroit o&ugrave; vous voulez que le menu apparaisse. Voici un exemple rapide de ce &agrave; quoi ressemble la fonction sans param&egrave;tres sp&eacute;cifiques :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">wp_nav_menu( array $args = array( ) )<\/pre><p>Vous devrez sp&eacute;cifier le menu que vous souhaitez afficher pour que le code fonctionne. En pratique, une fonction d&rsquo;exemple wp_nav_menu dans un mod&egrave;le de page ressemblerait &agrave; ceci :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">wp_nav_menu( array('theme_location'=&gt; 'custom-menu') );<\/pre><p>Une fonction wp_nav_menu peut comporter plusieurs param&egrave;tres. Dans cet exemple, nous avons utilis&eacute; theme_location pour sp&eacute;cifier le nom du menu personnalis&eacute; que nous voulons utiliser.<\/p><p>Si vous n&rsquo;&ecirc;tes pas &agrave; l&rsquo;aise avec l&rsquo;id&eacute;e d&rsquo;ajouter du code &agrave; votre site web, vous pouvez opter pour des <strong>plugins de menu WordPress<\/strong>. Certains outils vous permettront de cr&eacute;er et de placer des menus personnalis&eacute;s, comme si vous utilisiez wp_nav_menu.<\/p><p>Vous pouvez &eacute;galement utiliser certains <a href=\"\/fr\/tutoriels\/pagebuilder-wordpress\"><strong>page builders WordPress<\/strong><\/a>. Si vous utilisez d&eacute;j&agrave; l&rsquo;un de ces outils, v&eacute;rifiez s&rsquo;il offre une fonctionnalit&eacute; de menu personnalis&eacute;.<\/p><h2 class=\"wp-block-heading\" id=\"h-parametres-wordpress-wp-nav-menu-et-classes-css\"><strong>Param&egrave;tres WordPress wp_nav_menu et classes CSS<\/strong><\/h2><p>La plupart des fonctions WordPress proposent divers param&egrave;tres pr&eacute;d&eacute;termin&eacute;s pour modifier leurs effets. Dans le cas de wp_nav_menu, vous avez &agrave; la fois des param&egrave;tres et des classes CSS. Commen&ccedil;ons par le premier !<\/p><h3 class=\"wp-block-heading\" id=\"h-wp-nav-menu-parametres\"><strong>wp_nav_menu Param&egrave;tres<\/strong><\/h3><p>Vous pouvez personnaliser la fonction wp_nav_menu en utilisant un ou plusieurs param&egrave;tres. Voici les options disponibles :<\/p><ul class=\"wp-block-list\">\n<li><strong>menu<\/strong> &nbsp;&raquo; &ndash; indique le menu que vous utilisez. Vous pouvez sp&eacute;cifier un menu &agrave; l&rsquo;aide d&rsquo;un identifiant, d&rsquo;une &eacute;tiquette, d&rsquo;un nom ou d&rsquo;un objet.<\/li>\n\n\n\n<li><strong>&lsquo;menu_class<\/strong> &lsquo; &ndash; configure la <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/classe-css\">classe CSS<\/a> de votre menu. Par d&eacute;faut, la fonction utilise la classe de <strong>menu<\/strong>.<\/li>\n\n\n\n<li><strong>&lsquo;menu_id<\/strong> &lsquo; &ndash; sp&eacute;cifie l&rsquo;identifiant du menu. La valeur par d&eacute;faut ou ID est l&rsquo;intitul&eacute; du menu avec un nombre ajout&eacute; ou incr&eacute;ment&eacute;.<\/li>\n\n\n\n<li><strong>conteneur<\/strong> &nbsp;&raquo; &ndash; choisissez le type de conteneur &agrave; utiliser pour le menu. Par d&eacute;faut, la fonction utilise des conteneurs <strong>div<\/strong>.<\/li>\n\n\n\n<li><strong>container_class<\/strong> &nbsp;&raquo; &ndash; d&eacute;finit une classe CSS qui s&rsquo;applique directement au conteneur du menu. Par d&eacute;faut, cette classe de menu sera <strong>menu-{menu slug}-container<\/strong>.<\/li>\n\n\n\n<li><strong>&lsquo;container_id<\/strong> &lsquo; &ndash; d&eacute;finit un identifiant pour le conteneur du menu. Comme pour l&rsquo;identifiant du menu, le conteneur utilisera sa vignette incr&eacute;ment&eacute;e par d&eacute;faut.<\/li>\n\n\n\n<li><strong>&lsquo;fallback_cb<\/strong> &lsquo; &ndash; si WordPress ne trouve pas le menu que vous voulez afficher, ce param&egrave;tre lui indique quel autre &eacute;l&eacute;ment il doit afficher.<\/li>\n\n\n\n<li><strong>&lsquo;theme_location<\/strong> &lsquo; &ndash; si vous enregistrez un menu personnalis&eacute; &agrave; l&rsquo;aide de <strong>register_nav_menu<\/strong>, ce param&egrave;tre l&rsquo;affichera.<\/li>\n\n\n\n<li><strong>items_wrap<\/strong> &lsquo; &ndash; par d&eacute;faut, votre menu s&rsquo;affichera sous forme de <strong>liste non ordonn&eacute;e (ul<\/strong> ). Ce param&egrave;tre vous permet de configurer la mani&egrave;re dont les &eacute;l&eacute;ments du menu sont pr&eacute;sent&eacute;s.<\/li>\n\n\n\n<li><strong>&lsquo;item_spacing<\/strong> &lsquo; &ndash; la plupart des menus utilisent des espaces blancs pour s&eacute;parer les &eacute;l&eacute;ments. Si vous souhaitez d&eacute;sactiver cet espace blanc, vous pouvez d&eacute;finir ce param&egrave;tre sur &nbsp;&raquo; <strong>discard&nbsp;&raquo; (ignorer)<\/strong>.<\/li>\n<\/ul><p>Il existe quelques param&egrave;tres suppl&eacute;mentaires <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_nav_menu\/\" target=\"_blank\" rel=\"noopener\"><strong>de wp_nav_menu<\/strong><\/a> que nous ne mentionnons pas, notamment des options permettant d&rsquo;ajouter du texte au menu. Toutefois, les param&egrave;tres &eacute;num&eacute;r&eacute;s ci-dessus sont les principaux &eacute;l&eacute;ments que vous utiliserez lorsque vous ajouterez des menus personnalis&eacute;s &agrave; un th&egrave;me.<\/p><p>Voici un exemple de fonction utilisant plusieurs param&egrave;tres :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&amp;lt;?php&lt;br&gt;wp_nav_menu( array(&lt;br&gt;'theme_location'=&gt; 'custom-menu',&lt;br&gt;'container_class'=&gt; 'menu-class'&lt;br&gt;'fallback_cb'=&gt; 'wp_page_menu') );&lt;br&gt;?&gt;<\/pre><p>Si le nombre de param&egrave;tres disponibles vous semble &eacute;crasant, ne vous inqui&eacute;tez pas. Dans la plupart des cas, vous n&rsquo;utiliserez que les param&egrave;tres <strong>theme_location<\/strong> et <strong>container_class<\/strong>. La configuration de la fonction est donc remarquablement simple.<\/p><h2 class=\"wp-block-heading\" id=\"h-wp-nav-menu-css-classes\"><strong>wp_nav_menu CSS Classes<\/strong><\/h2><p>Lorsque vous utilisez la fonction wp_nav_menu, elle applique automatiquement une s&eacute;rie de classes CSS &agrave; chaque &eacute;l&eacute;ment de menu affich&eacute;.<\/p><p>Voici les classes CSS les plus importantes <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_nav_menu\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\"><strong>de wp_nav_menu<\/strong><\/a>:<\/p><ul class=\"wp-block-list\">\n<li><strong>.menu-item<\/strong> &ndash; cette classe s&rsquo;applique automatiquement &agrave; chaque &eacute;l&eacute;ment de menu.<\/li>\n\n\n\n<li><strong>.menu-item-has-children<\/strong> &ndash; s&rsquo;applique uniquement aux &eacute;l&eacute;ments de menu comportant des sous-&eacute;l&eacute;ments.<\/li>\n\n\n\n<li><strong>.menu-item-object-{object}<\/strong> &ndash; s&rsquo;applique &agrave; chaque &eacute;l&eacute;ment de menu. Le caract&egrave;re g&eacute;n&eacute;rique de l&rsquo;<strong>objet<\/strong> peut &ecirc;tre un post_type ou une taxonomie.<\/li>\n\n\n\n<li><strong>.menu-item-object-category<\/strong> &ndash; ces &eacute;l&eacute;ments de menu correspondent &agrave; une cat&eacute;gorie sp&eacute;cifique de WordPress.<\/li>\n\n\n\n<li><strong>.menu-item-object-tag<\/strong> &ndash; &eacute;l&eacute;ments de menu correspondant &agrave; une balise WordPress.<\/li>\n\n\n\n<li><strong>.menu-item-object-page<\/strong> &ndash; &eacute;l&eacute;ments de menu dans les pages statiques.<\/li>\n\n\n\n<li><strong>.menu-item-object-{custom}<\/strong> &ndash; &eacute;l&eacute;ments correspondant &agrave; des types d&rsquo;articles personnalis&eacute;s.<\/li>\n\n\n\n<li><strong>.menu-item-type-{type}<\/strong> &ndash; s&rsquo;applique &agrave; chaque &eacute;l&eacute;ment de menu. L&rsquo;espace r&eacute;serv&eacute; au <strong>type<\/strong> peut &ecirc;tre post_type ou taxonomy.<\/li>\n\n\n\n<li><strong>.menu-item-type-post_type<\/strong> &ndash; &eacute;l&eacute;ments correspondant &agrave; n&rsquo;importe quel post_type.<\/li>\n\n\n\n<li><strong>.menu-item-type-taxonomy<\/strong> &ndash; &eacute;l&eacute;ments correspondant &agrave; une taxonomie quelconque.<\/li>\n<\/ul><p>Comme vous pouvez le constater, il y a beaucoup de chevauchements avec les classes CSS wp_nav_menu. Le grand nombre d&rsquo;options &agrave; votre disposition vous permet d&rsquo;&ecirc;tre tr&egrave;s pr&eacute;cis dans l&rsquo;utilisation de CSS pour styliser les menus personnalis&eacute;s.<\/p><p>N&rsquo;oubliez pas que vous pouvez &eacute;galement utiliser les classes <strong>CSS personnalis&eacute;es de WordPress<\/strong> avec les param&egrave;tres wp_nav_menu. Cette approche peut &ecirc;tre une excellente option si aucune des classes pr&eacute;d&eacute;termin&eacute;es ne cible le menu ou les &eacute;l&eacute;ments exacts que vous souhaitez styliser.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.hostinger.com\/fr\/hebergement-wordpress\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-New-WP_in-text-banner.png\/public\" alt=\"\" class=\"wp-image-41453\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-New-WP_in-text-banner.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-New-WP_in-text-banner.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-New-WP_in-text-banner.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-New-WP_in-text-banner.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/div><h2 class=\"wp-block-heading\" id=\"h-comment-creer-et-personnaliser-un-menu-en-utilisant-la-fonction-wp-nav-menu-de-wordpress\"><strong>Comment cr&eacute;er et personnaliser un menu en utilisant la fonction wp_nav_menu de WordPress<\/strong><\/h2><p>Maintenant que vous savez comment fonctionne la fonction wp_nav_menu, il est temps d&rsquo;apprendre &agrave; l&rsquo;utiliser dans votre th&egrave;me. Commen&ccedil;ons par parler de wp_nav_register.<\/p><h3 class=\"wp-block-heading\" id=\"h-etape-1-creer-un-menu-personnalise-a-l-aide-de-la-fonction-wp-nav-register\"><strong>&Eacute;tape 1 : Cr&eacute;er un menu personnalis&eacute; &agrave; l&rsquo;aide de la fonction wp_nav_register<\/strong><\/h3><p>Comme nous l&rsquo;avons d&eacute;j&agrave; mentionn&eacute;, wp_nav_menu ne vous permet pas de cr&eacute;er des menus personnalis&eacute;s, mais vous permet de les placer. Cela signifie que vous devez cr&eacute;er les menus manuellement avant d&rsquo;utiliser cette fonction.<\/p><p>wp_nav_register vous permet de cr&eacute;er ou d'&nbsp;&raquo;enregistrer&nbsp;&raquo; des menus pour un th&egrave;me sp&eacute;cifique. Vous devrez modifier le fichier <strong>functions.php<\/strong> du th&egrave;me pour l&rsquo;utiliser.<\/p><p>Avant de vous mettre au travail, nous vous recommandons de cr&eacute;er un th&egrave;me enfant si vous n&rsquo;en utilisez pas d&eacute;j&agrave; un. L&rsquo;utilisation d&rsquo;un th&egrave;me enfant permet d&rsquo;&eacute;viter que les modifications apport&eacute;es au code du th&egrave;me ne disparaissent lorsque vous le mettez &agrave; jour. Il est &eacute;galement conseill&eacute; de faire une sauvegarde compl&egrave;te de votre site web avant de modifier des fichiers essentiels.<\/p><p>Une fois ce probl&egrave;me r&eacute;solu, vous devez acc&eacute;der au fichier functions.php de votre th&egrave;me. Le moyen le plus simple d&rsquo;y parvenir est de se rendre sur la page <strong>Apparence &rarr; &Eacute;diteur de fichiers de th&egrave;me<\/strong> dans le tableau de bord.<\/p><p>L&rsquo;&eacute;diteur de th&egrave;me devrait s&rsquo;ouvrir sur votre th&egrave;me actif, et vous pouvez s&eacute;lectionner le fichier functions.php en utilisant le menu &agrave; droite.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1024\" height=\"540\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-64.png\/public\" alt=\"Fichier functions.php d'un th&egrave;me WordPress\" class=\"wp-image-27733\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-64.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-64.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-64.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-64.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p>Vous pouvez &eacute;galement acc&eacute;der &agrave; functions.php en utilisant le <strong>protocole de transfert de fichiers (FTP)<\/strong>. Nous recommandons cette approche si vous pr&eacute;f&eacute;rez utiliser un &eacute;diteur de texte complet. Vous n&rsquo;allez ajouter qu&rsquo;un seul bout de code, l&rsquo;&eacute;diteur de code int&eacute;gr&eacute; de WordPress devrait donc suffire.<\/p><p>Naviguez jusqu&rsquo;&agrave; la fin du fichier et ajoutez-y le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">function wpb_custom_new_menu( ) {&lt;br&gt;register_nav_menu('custom-menu',__( 'Custom Menu'));&lt;br&gt;}&lt;br&gt;add_action( 'init', 'wpb_custom_new_menu');<\/pre><p>Vous devrez modifier l&rsquo;intitul&eacute; du <strong>menu personnalis&eacute;<\/strong> et le nom du menu, qui sera le champ <strong>Menu personnalis&eacute;<\/strong>. Toutefois, vous pouvez donner n&rsquo;importe quel nom au menu personnalis&eacute;.<\/p><p>Enregistrez les modifications dans le fichier functions.php. Il est maintenant temps de modifier les &eacute;l&eacute;ments qui seront inclus dans le nouveau menu.<\/p><h3 class=\"wp-block-heading\" id=\"h-etape-2-modifier-votre-menu-wordpress-personnalise\"><strong>&Eacute;tape 2 : Modifier votre menu WordPress personnalis&eacute;<\/strong><\/h3><p>Pour modifier le menu personnalis&eacute; que vous venez de cr&eacute;er, allez dans <strong>Apparence &rarr; Menu<\/strong>. Recherchez la section <strong>Param&egrave;tres du menu<\/strong> en bas &agrave; droite de l&rsquo;&eacute;cran.<\/p><p>Cette section doit inclure le nouvel emplacement du menu que vous avez enregistr&eacute; lors de la premi&egrave;re &eacute;tape.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1024\" height=\"301\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-65.png\/public\" alt=\"La section &quot;Menu Settings&quot; de WordPress, avec l'option &quot;Custom Menu&quot; coch&eacute;e\" class=\"wp-image-27734\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-65.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-65.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-65.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-65.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p>Pour modifier les &eacute;l&eacute;ments affich&eacute;s &agrave; cet emplacement, choisissez un menu &agrave; l&rsquo;aide de l&rsquo;option <strong>S&eacute;lectionner un menu &agrave; modifier :<\/strong> ou cr&eacute;ez-en un nouveau.<\/p><p>Ensuite, choisissez les &eacute;l&eacute;ments que vous souhaitez voir figurer dans le menu &agrave; l&rsquo;aide de la liste de gauche et r&eacute;organisez-les dans la section <strong>Structure du menu<\/strong>.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1024\" height=\"728\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-66.png\/public\" alt=\"Structure du menu personnalis&eacute; nouvellement cr&eacute;&eacute; dans WordPress\" class=\"wp-image-27735\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-66.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-66.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-66.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-66.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p>Chaque &eacute;l&eacute;ment de menu comprend un nom d&rsquo;affichage et un lien. Lorsque vous &ecirc;tes satisfait de vos choix, n&rsquo;oubliez pas de v&eacute;rifier si votre nouveau menu personnalis&eacute; est actif dans la rubrique Param&egrave;tres du menu. Si c&rsquo;est le cas, enregistrez les modifications apport&eacute;es au menu.<\/p><h3 class=\"wp-block-heading\" id=\"h-etape-3-utiliser-la-fonction-wp-nav-menu-pour-afficher-le-nouveau-menu\"><strong>&Eacute;tape 3 : Utiliser la fonction wp_nav_menu pour afficher le nouveau menu<\/strong><\/h3><p>&Agrave; ce stade, vous devriez avoir un menu pr&ecirc;t &agrave; l&rsquo;emploi enregistr&eacute; dans votre th&egrave;me. Cependant, bien que le menu existe, il n&rsquo;appara&icirc;tra nulle part tant que vous n&rsquo;aurez pas utilis&eacute; la fonction wp_nav_menu pour sp&eacute;cifier son emplacement.<\/p><p>Vous devez ajouter la fonction wp_nav_menu dans un mod&egrave;le de page pour placer le menu personnalis&eacute;. Les fichiers de mod&egrave;les de pages auxquels vous avez acc&egrave;s d&eacute;pendent du th&egrave;me que vous utilisez.<\/p><p>Naviguez vers <strong>Apparence &rarr; &Eacute;diteur de fichiers de th&egrave;me<\/strong> pour acc&eacute;der &agrave; ces fichiers dans le tableau de bord. La section <strong>Fichiers de th&egrave;me<\/strong> &agrave; droite contient une liste de tous les fichiers que vous pouvez modifier &agrave; partir de cet &eacute;cran.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1022\" height=\"903\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-67.png\/public\" alt=\"Fichier page.php du th&egrave;me\" class=\"wp-image-27736\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-67.png\/w=1022,fit=scale-down 1022w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-67.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-67.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2023\/11\/image-67.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1022px) 100vw, 1022px\" \/><\/figure><\/div><p>Dans notre exemple, nous avons s&eacute;lectionn&eacute; le mod&egrave;le de page unique de notre th&egrave;me. Le code que vous devez ajouter au mod&egrave;le doit ressembler &agrave; ceci :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&amp;lt;?php&lt;br&gt;wp_nav_menu( array(&lt;br&gt;'theme_location'=&gt; 'custom-menu',&lt;br&gt;'container_class'=&gt; 'menu-class'&lt;br&gt;'fallback_cb'=&gt; 'wp_page_menu') );&lt;br&gt;?&gt;<\/pre><p>Avant d&rsquo;enregistrer les modifications apport&eacute;es au fichier de mod&egrave;le, n&rsquo;oubliez pas de mettre &agrave; jour les espaces r&eacute;serv&eacute;s avec le nom de votre th&egrave;me personnalis&eacute; et les autres param&egrave;tres que vous souhaitez utiliser. Nous incluons les param&egrave;tres <strong>container_class<\/strong> et <strong>fallback_cb<\/strong> dans notre exemple.<\/p><p>Cependant, le code que vous utilisez peut &ecirc;tre aussi simple que :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&amp;lt;?php&lt;br&gt;wp_nav_menu( array(&lt;br&gt;'theme_location'=&gt; 'custom-menu') );&lt;br&gt;?&gt;<\/pre><p>La position de ce code d&eacute;terminera l&rsquo;emplacement du menu sur la page. Si vous n&rsquo;&ecirc;tes pas s&ucirc;r de la mani&egrave;re dont ce placement fonctionne, vous pouvez essayer diff&eacute;rents emplacements dans le fichier de mod&egrave;le.<\/p><p>Nous vous d&eacute;conseillons de modifier toute autre partie du code lorsque vous &eacute;ditez des fichiers de mod&egrave;les, &agrave; moins que vous ne sachiez ce qu&rsquo;elle fait. Comme vous n&rsquo;ajoutez que quelques lignes de code, vous pouvez les supprimer en cas d&rsquo;erreur.<\/p><p>Apr&egrave;s la modification, v&eacute;rifiez que le menu se charge en visitant l&rsquo;une des pages qui utilisent le mod&egrave;le sur lequel vous avez travaill&eacute;. Si le menu ne s&rsquo;affiche pas, il se peut qu&rsquo;il y ait une erreur avec le slug pour le param&egrave;tre theme_location, alors allez-y et v&eacute;rifiez &agrave; nouveau.<\/p><h2 class=\"wp-block-heading\" id=\"h-conclusion\"><strong>Conclusion<\/strong><\/h2><p>Bien que WordPress vous permette de cr&eacute;er facilement des menus personnalis&eacute;s, il ne vous permet pas d&rsquo;ajouter des <strong>emplacements de<\/strong> menu personnalis&eacute;s. C&rsquo;est l&agrave; qu&rsquo;intervient la fonction <strong>wp_nav_menu<\/strong>. Cette fonction permet d&rsquo;afficher les menus personnalis&eacute;s cr&eacute;&eacute;s &agrave; l&rsquo;aide de <strong>register_nav_menu<\/strong> sur n&rsquo;importe quelle partie de votre site web.<\/p><p>Voici un bref r&eacute;capitulatif de l&rsquo;utilisation de la fonction wp_nav_menu de WordPress :<\/p><ul class=\"wp-block-list\">\n<li>Cr&eacute;ez un menu personnalis&eacute; &agrave; l&rsquo;aide de la fonction register_nav_menu.<\/li>\n\n\n\n<li>Modifiez votre menu WordPress personnalis&eacute;.<\/li>\n\n\n\n<li>Utilisez la fonction wp_nav_menu pour afficher le nouveau menu.<\/li>\n<\/ul><p>Avez-vous des questions sur l&rsquo;utilisation de la fonction wp_nav_menu dans WordPress ? Discutons-en dans les commentaires ci-dessous !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les menus font partie des &eacute;l&eacute;ments les plus courants sur les sites web. Avec WordPress, vous pouvez facilement personnaliser les menus et choisir parmi plusieurs options d&rsquo;affichage si votre th&egrave;me le permet. Toutefois, si vous souhaitez utiliser des menus dans un emplacement personnalis&eacute;, vous devez modifier les fichiers de votre th&egrave;me et ajouter la fonction [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/fr\/tutoriels\/creer-menu-personnalise-avec-wp_nav_menu-wordpress\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":335,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"%title%","rank_math_description":"wp_nav_menu est une fonction pour afficher des menus personnalis\u00e9s dans WordPress. D\u00e9couvrez comment l'utiliser dans ce tutoriel.","rank_math_focus_keyword":"wp_nav_menu","footnotes":""},"categories":[4777],"tags":[],"class_list":["post-27731","post","type-post","status-publish","format-standard","hentry","category-wordpress"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/how-to-use-wp-nav-menu-in-wordpress","default":0},{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp_nav_menu","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/creer-menu-personnalise-avec-wp_nav_menu-wordpress","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/wp_nav_menu","default":0},{"locale":"en-UK","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/wp_nav_menu","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/how-to-create-a-custom-menu-using-wordpress-wp_nav_menu-function","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/how-to-create-a-custom-menu-using-wordpress-wp_nav_menu-function","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp_nav_menu","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/wp_nav_menu","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/how-to-use-wp-nav-menu-in-wordpress","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/how-to-use-wp-nav-menu-in-wordpress","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/how-to-use-wp-nav-menu-in-wordpress","default":0}],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/27731","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/users\/335"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/comments?post=27731"}],"version-history":[{"count":4,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/27731\/revisions"}],"predecessor-version":[{"id":36426,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/27731\/revisions\/36426"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media?parent=27731"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/categories?post=27731"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/tags?post=27731"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}