Exclure une page de votre blog WordPress

Pour un tas de raisons diverses, il peut être intéressant de masquer une page de votre blog WordPress. Ainsi, via l’ajout d’un bout code très simple à utiliser, vous pourrez choisir d’exclure les pages de votre choix et empêcher qu’elle ne s’affiche dans la barre de navigation prévue à cet effet. Cette manipulation ne signifie pas pour autant que la ou les page(s) ne demeureront pas accessibles via le navigateur mais juste qu’elles seront invisibles de la liste des pages disponibles.Commencez par vous connecter à l’administration de votre blog WordPress. Ensuite, rendez-vous l’Editeur de thème sous l’onglet Apparence.

Nous allons en effet intervenir dans le thème du blog ce qui signifie que vous devrez réitérer l’opération si vous envisagez de changer de thème graphique.

Recherchez à présent le bout de code suivant :

<?php wp_list_pages('title_li='); ?>

Pour une recherche plus efficace, ne sélectionnez que <?php wp_list_pages
puis utilisez la commande Ctrl + F du navigateur. Je vous conseille d’utiliser Firefox qui permet de rechercher instantanément dès lors que vous saisissez les premiers caractères.

La localisation du code ci-dessous diffère selon le thème utilisé. Tout dépend, en effet, de l’endroit où sont listées les pages sur le thème (en tête, colonne latérale, etc.). Dans le thème standard (K2) de WordPress, vous le trouverez dans le fichier sidebar.php, en français, Colonne latérale.

Capture d'écran - Editeur de thème WordPress
Capture d’écran – Editeur de thème WordPress

Une fois que vous aurez localisé le code en question, remplacez-le par ceci :

<?php wp_list_pages('exclude=1,2,3&title_li='); ?>

Les numéros correspondent tout simplement aux IDs de pages que vous pouvez identifier via la section Pages de l’onglet Gérer de WordPress.

Dans la liste des pages, passez le curseur de la souris sur le lien Publié de la colonne État pour la page que vous souhaitez exclure. Jetez un œil dans la barre d’état du navigateur puis identifiez le numéro de page.

Reportez ce dernier dans le code précédent. Vous pouvez exclure autant de pages que souhaitez tout en les séparant par des virgules.

Pour finir, ouvrez la page d’accueil de votre blog puis vérifiez que la ou les page(s) à exclure sont désormais masquées dans la barre de navigation.

Les tags PHP sont véritablement incontournables tant leurs possibilités sont infinies sous WordPress.

20 commentaires

  1. jbj

    Sympa ce petit tuto, tu devrais en faire d’autres avec les autres paramètres de wp_list_pages() et wp_list_categories(), qui fonctionnent pratiquement pareil.
    Au sujet de ces deux fonctions, j’ai écrit un article sur Hack WordPress qui en parle.

  2. redpeppers

    Oui c’est toujours utile de connaître ces petites astuces sous wordpress. ça sert peu pour les blogs (quoique) mais pour des utilisations spécifiques de wordpress c’est très utile !

    je sais pas vous, mais moi WordPress me fait de plus en plus penser à un framework en fait…. WordPress, + qu’un CMS ?

  3. Aurélien Denis

    @jbj : oui c’est un bonne idée, je l’ajoute à la liste de mes prochains articles

    @redpeppers : bien utile d’autant plus que sont des choses simples que l’on a bien souvent du mal à trouver sur le net :!:
    WordPress, + qu’un CMS ? Voila une question qui mériterait d’en débattre pendant plusieurs heures…

  4. Beija

    Salut!
    Je suis entrain de monté mon siteoueb et je suis tombé sur ton article mais il ne répond pas exactement à ma problématique.
    Je cherche à exclure une Page de ma barre de navigation, on va dire frontale, et non pas de celle de la sidebar
    Pas de wp_list_pages car ça se présente comme ça :

    get_results(« SELECT post_name, post_title, ID FROM $wpdb->posts WHERE post_type=’page' »);
    $getTitle=trim(wp_title(‘ ‘, false));
    $check=0;
    foreach($pages as $page){ ?>
    post_title);
    if($getTitle==$getPageTitle)
    {$check=1;}
    else
    {$check=0;}
    ?>

    <a href= »ID); ?> »>post_title; ?>
    <span class= »mpost_title; ?> »>

    Une idée?

  5. olivier

    @ 537718

    Il suffit de faire la même chose que pour les pages dans le fichier sidebar.php ( fonctionne avec la liste de catégorie de base mais je pense que ça s’adapte aussi à une liste custom)

    exemple :

    exclude =4 (4 est le nom de ta catégorie… si tu en a plusieurs tu mets des virgules et tu liste)

    hope this help

  6. Nico

    Bonjour Maigret !

    Dans le même genre d’idée que le sujet de cet article, je cherche à exclure certaines pages dans mon flux RSS (avant tout, je précise que j’utilise le plugin « RSS Includes Pages » pour inclure les pages de mon (futur) blog dans le flux RSS).

    J’ai parcouru le Codex et les Forums WP, sans succès.

    Des idées sur le sujet ?

    Merci,
    Nico

  7. labodessavoirsMArc Ségur

    Salut merci pour cette astuce.
    Je me demandais s’il y avait une possibilité d’exclure l’apparition d’une page dans l’administration de wordpress.
    Je m’explique : je customise par exemple la page d’accueil, via des query_posts et je voudrais que cette page n’apparaisse pas dans la liste des pages disponibles dans l’administration. Elle ne sert à rien, du coup ca me permettrait d’enlever au maximum les éléments inuteils a afficher dans l’admin.
    Y a t-il a ta connaissance possibilité de faire ca (un peu comme faire disparaitre des éléments de l’admin dans la colonne de gauche….

    D’avance merci !

Laisser un commentaire

Thèmes & Plugins
Premium By WP Channel

WP Alacarte propose des produits et services de qualité
made in France pour la plateforme WordPress.

Tout est prêt pour créer votre site à la carte !

  • Thèmes et extensions premium
  • Facilité d’utilisation garantie
  • Temps de chargement optimisé
  • Personnalisation avancée
Découvrir

Rejoignez la communauté WordPress !

Faites partie de l’aventure en devenant membre d’une association WordPress. Conférences, ateliers, BarCamp, WordCamp… Venez
partager votre passion pour WordPress !

Aurélien DENIS,
président des associations WordPress Francophone et WPMX