Comment supprimer le menu au dessus de l'image de header du thème Twenty Twelve de WordPress

1 minute de lecture art

Etant en train de travailler sur un site WordPress avec le nouveau thème de base Twenty Twelve (que je tiens à acclamer au passage !), il arrive parfois que l’on souhaite un site simplisme, sans page “a propos”, ni “contact”. J’ai dit : pas de page.

Petite explication du pourquoi du comment avant de vous montrer l’astuce. Le seul lien de ce menu, c’est la page d’accueil. Or le bandeau header dirige déjà vers la page d’accueil. Cela ajoute donc une barre disgracieuse et anti-ergonomique, car surchargeant la mise en page du site pour rien.

Sur votre menu d’administration de WordPress, allez dans Apparence, Éditeur  Dans la colonne de gauche, sélectionnez En-tête (header.php) comme sur la catpure ci dessous :

modification-fichier-header-theme-twenty-twelve

Dans la page, vous aller avoir un bout de texte qui commence par “<nav id” et qui fini par “</nav>”. Comme dans la capture plus haut, vous pouvez mettre ce texte en commentaire (en mettant “” après. Ou alors vous appuyez sur la touche suppr de votre clavier.

C’est le moyen le plus simple, mais le moins maintenable, en effet, si le thème est mis à jour, votre “rustine” va disparaître. Le meilleur moyen est de réaliser un thème enfant, ce qui va permettre de garder toutes les caractéristiques de votre thème et de le personnaliser), et d’ajouter (merci Julio) une fonction php approprié pour filtrer le contenu indésirable :

add_filter( 'wp_nav_menu_args', 'wp_nav_menu_args_cb' );
function wp_nav_menu_args_cb( $args ) {
	$args['fallback_cb'] = '__return_null';
	return $args;
}

Avouez, ça fait du bien.

Commentaires

Julio Potier (BoiteAWeb.fr)

Bonjour ! Je découvre le blog ;)

Voici la vraie bonne façon de faire : add_filter( 'wp_nav_menu_args', 'wp_nav_menu_args_cb' ); function wp_nav_menu_args_cb( $args ) { $args['fallback_cb'] = '__return_null'; return $args; }

Avec ta modification, si le thème est mis à jour le menu revient, il est déjà mieux que passer par un thème enfant, mais pas toucher le code comme ça.

A plus tard !

art

Hello, alors effectivement ceci est possible et perso j’ai toujours eu un thème enfant avec Eleven, mais c’est une solution assez longue à mettre en oeuvre, et c’est vrai que je m’adresse en général à des néophytes et propose donc une solution en “one shot”, avec un tutoriel en une étape.

De plus, je ne savais pas qu’il y avait des filtres pour tout à ce point là.

J’ai mis à jour l’article après avoir testé ton bout de code et c’est vrai qu’il ne fonctionne pas trop mal.

J’ai une question pour toi : la solution d’ajouter un filtre n’est-elle pas finalement plus lourde (charge serveurs du à l’ajout de code) qu’une suppression de code ? ;) C’est le genre de chose auquel je pense aussi, même si au final ce n’et qu’une fonction de plus.

Laisser un commentaire

Votre adresse email ne sera pas visible. Les champs obligatoires sont marqués *

Chargement...
Reçevoir les prochains commentaires de cet article.