Exclure une page de votre blog WordPress

Mis Ă  jour le :

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.

Avatar de Aurélien Denis

Protégez votre site WordPress

Vos données sont précieuses,
ne prenez pas le risque de tout perdre.
Confiez-moi votre maintenance !

Ces articles devraient t’intĂ©resser…

20 réponses
  1. Avatar de labodessavoirsMArc Ségur
    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 !

  2. Avatar de Léa
    Léa

    Petit souci : mon thÚme ne possÚde pas la ligne de code spécifiée :

    J’utilise le thĂšme Twenty Eleven.
    Suis-je obligĂ©e d’utiliser un plugin ? :/

  3. Avatar de Easynico
    Easynico

    sinon le plugin exclude pages…tout simplement

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Dommage de passer par un plugin pour gĂ©rer l’inclusion ou l’exclusion de contenu sous WordPress. 🙂

  4. Avatar de britain
    britain

    maintenant on peut le faire en passant par « Apparence » puis « Menu » grùce à la fonction « menu personnalisé »

    1. Avatar de Aurélien Denis
      Aurélien Denis

      A condition toutefois d’utiliser un menu de navigation – ce qui est le cas de la plupart des thĂšmes aujourd’hui. 😉

  5. Avatar de Pat
    Pat

    Ha enfin j’ai rĂ©ussi, merci !

  6. Avatar de libredutabac.com
    libredutabac.com

    Ca fonctionne… GĂ©nial 😉 !

    Merci, Aurélien !

    Michael

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Avec plaisir ! 😎

  7. Avatar de Nico
    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

  8. Avatar de 537718
    537718

    en fait j’ai fait exactement comme tu as dit
    merci

  9. Avatar de 537718
    537718

    super merci, j’ai fait autrement
    un widget texte avec ça :
    ?php wp_list_bookmarks(‘exclude_category=9’); ?

  10. Avatar de olivier
    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

  11. Avatar de Aurélien Denis
    Aurélien Denis

    @537718 : dĂ©solĂ© du retard mais j’ai loupĂ© ton commentaire. Si tu cherches toujours, fais-moi signe !

    @Beija : je vais voir ce que je peux faire mais je ne promet rien. 🙂

  12. Avatar de Beija
    Beija

    Heu… problĂšme de structure, tout le php n’est pas passĂ©.
    Si tu veux t’intĂ©resser au sujet je peux te le passer par mail.
    Sinon, bah tant pis ^^

  13. Avatar de Beija
    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?

  14. Avatar de 537718
    537718

    salut
    moi je voudrais exclure une catégorie de liens de ma sidebar (widgetisée)
    quelqu’un saurait-il m’aider ?

  15. Avatar de Aurélien Denis
    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…

  16. Avatar de redpeppers
    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 ?
    🙂

  17. Avatar de jbj
    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.