Indiquer la page active avec wp_list_pages (Créer un compte)

  • Statut : non résolu
11 sujets de 1 à 11 (sur un total de 11)
  • Auteur
    Messages
  • #461787
    LaurentB
    Membre
    Initié WordPress
    6 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : wordpress-2.6-fr_FR
    – Thème utilisé : perso
    – Nom de l’hebergeur : free

    Problème(s) rencontré(s) :

    J’ai allégé le sidebar.php, il me sert juste de menu pour une dizaine de pages fixes :

    <div id="sidebar">
    <ul>
    <?php wp_list_pages('title_li=' ); ?>
    </ul>
    </div>

    Je souhaiterais que dans le menu, la page active soit indiquée en surbrillance pour montrer à l’utilisateur où il se trouve.
    Je pourrais par exemple créer une class « li.pageactive { background:yellow; } »
    Comment faire avec la fonction wp_list_pages ?

    #640398
    LaurentB
    Membre
    Initié WordPress
    6 contributions

    Comme il n’y a pas de réponse, j’imagine que ce n’est pas possible.
    Mais quelqu’un peut-il m’orienter vers une méthode pour contourner mon problème ?
    Dans ma « liste de pages » qui me sert de menu, je souhaiterais marquer sur laquelle le lecteur se trouve…
    Désolé d’insister….

    #640399
    Qwindoo
    Modérateur
    Maître WordPress
    2861 contributions

    Hello,

    Toutes les infos sont disponibles sur le Codex 😉

    #640400
    LaurentB
    Membre
    Initié WordPress
    6 contributions

    LaurentB dressa une liste de ce qu’il lui restait à faire :
    * lire les documentations WordPress
    * apprendre le PHP
    * apprendre le CSS
    Ici il poussa un gros soupir * sigh * et continua sa liste…
    * apprendre l’anglais…

    Merci MS-DOS_1991 !
    J’avais trouvé la page, mais pas trouvé dedans le paragraphe qui me concernait.
    C’est dur quand on ne parle pas anglais.

    #640401
    JayLBR
    Participant
    Maître WordPress
    1067 contributions

    Il me semble avoir un template quelque part ou il y a une couleur différente quand tu es sur la page.

    Je recherche sur quel site je l’ai installé et je te donne l’url. Si ca te convient alors j’irai te cherche le code 😉

    Voilà je l’ai : http://www.elodie-bd.com C’est comme ca que tu veux?

    #640402
    LaurentB
    Membre
    Initié WordPress
    6 contributions

    J’ai réussi à marquer différemment le titre de la page active dans la « liste des pages ».
    Je lui rajoute par exemple un fond. Par contre, pour changer la couleur, j’ai plus de mal parce que le titre garde encore la couleur des liens. Je vais chercher comment supprimer le lien (inutile) de la page active vers la page active, ou sinon préciser la couleur pour les liens de la page active.
    Mais c’est globalement résolu, merci !

    #640403
    JayLBR
    Participant
    Maître WordPress
    1067 contributions

    Ok, bonne continuation :wp:

    #640404
    emile
    Participant
    Padawan WordPress
    52 contributions

    ça serai cool que tu nous disent comment tu as fait
    car je recherche la meme solution que toi

    #640405
    LaurentB
    Membre
    Initié WordPress
    6 contributions

    Eh bien emile, sur le mode d’emploi de wp_list_pages()
    http://codex.wordpress.org/Template_Tags/wp_list_pages#Markup_and_styling_of_page_items
    on apprend que la liste des pages est créée avec class= »current_page_parent » pour l’élément de liste (li) correspondant à la page active (current). Tout est automatique. On ne touche donc pas au code principal de la page, mais on définit un style particulier pour l’élément de liste

  • correspondant à la page courante.

    Par exemple, dans le css, on ajoute :

    .current_page_item { background:yellow; }

    ou, si l’on veut, plus précisément, en situant le contexte :

    #sidebar ul li .current_page_item { background:yellow; }

#640406
emile
Participant
Padawan WordPress
52 contributions

merci
et aurais tu une solution pour que wordpress (dans un menu fait à la main sans la fonction wp_list_pages) puisse détecter qu’il est sur la page en question et y mettre un style personnalisé

exemple je fais un lien ds un menu qui pointe vers monsite.com/toto
quand je suis sur la page toto jaimerai qu’il soit en gras

#640407
LaurentB
Membre
Initié WordPress
6 contributions

@emile
Si tu as fait le menu « à la main », je ne pense pas que WordPress puisse détecter la bonne page.
Il faut un peu de php. Et là c’est un autre forum.
Mais avec WordPress, il faut faire le moins de choses possible à la main.
Tu devrais bien trouver une façon de faire ta liste avec wp_list_pages
http://codex.wordpress.org/Template_Tags/wp_list_pages#Include_Pages_in_List
Tu peux contrôler exactement les pages que tu veux (exclude, include) dans l’ordre que tu veux (sort_column)
Puis tu précises en css
.current_page_item { font-weight:bold; }

11 sujets de 1 à 11 (sur un total de 11)
  • Vous devez être connecté pour répondre à ce sujet.