menu « dynamique » (Créer un compte)

  • Statut : non résolu
8 sujets de 1 à 8 (sur un total de 8)
  • Auteur
    Messages
  • #498402
    natchoum
    Membre
    Chevalier WordPress
    162 contributions

    Ma configuration WP actuelle
    – Version de WordPress : 3.2.1
    – Version de PHP/MySQL : 5
    – Thème utilisé : graphène ( mais je le modifie à l’éditeur de texte ^^ )
    – Extensions en place : easing slider, menu bar, meteor slide et XML google map
    – Nom de l’hebergeur : personnel ( la société qui me fait faire le site ^^ )
    – Adresse du site : http://www2.ras.fr

    Problème(s) rencontré(s) : Bonjour, je cherche à faire un menu latéral dans ma page. Quoi de plus simple me direz vous ? Pas grand chose c’est vrai sauf que je voudrais qu’il diffère en fonction de l’endroit ou l’internaute se situe. Mon but étant que ce menu permette un rappel des sous catégorie du menu principal.
    Par exemple, si je suis dans la catégorie expertise, je devrais avoir dans le menu : audit et domaine de compétence mais si je suis dans hébergement, je veux voir FTP etc… ( pour comprendre mieux regarder le menu de mon site ).
    Voilà si quelqu’un a une idée par WordPress sans que je sois obligé de faire un petit script externe ( sinon je sais comment faire ) histoire que ce menu soit lui aussi modifiable par le panneau d’administration

    #786933
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Si les menus sont constitués de pages, va voir du coté de la fonction wp_list_pages : http://codex.wordpress.org/Function_Reference/wp_list_pages

    Ils expliquent avec des exemples comment afficher la page de plus haut niveau et ses sous-pages à partir de la page courante.

    #786934
    natchoum
    Membre
    Chevalier WordPress
    162 contributions
    post_parent)
    $children = wp_list_pages(« title_li=&child_of= ».$post->post_parent. »&echo=0″);
    else
    $children = wp_list_pages(« title_li=&child_of= ».$post->ID. »&echo=0″);
    if ($children) { ?>
    <ul>

    </ul>

    voilà un petit truc pris dans la doc qui me plait pas mal. Aparement c’est sensé affiché les pages enfant uniquement s’il y en a. cependant quand j’essaye d’inclure un bout de code dans sidebar.php, il n’a pas l’air tres d’accord ( disparition de la sidebar et du body du site :S ). J’imagine donc que je ne colle pas au bon endroit ( j’ai essayé avec plus simple mais ça ne fonctionne pas ).
    Du coup, puisque j’ai exec php, j’ai essayé de mettre mon code dans le widget texte. ça marche pas mal tant que je lui demande toutes les pages, si j’essaye de restreindre aux pages enfants ça ne fonctionne plus. quelqu’un a une explication ?

    EDIT : j’ai avancé, c’est le $post->ID qui n’est pas reconnu, si je fais un echo $post->ID il ne me renvoie rien :S
    est ce que celà vient du fait que je suis dans un widget texte ?

    #786935
    natchoum
    Membre
    Chevalier WordPress
    162 contributions

    Bon apres pas ma lde test dans sidebar.php je me rend compte que j’avais raison dans l’EDIT du post précédent. Je ne peux pas le faire dans un widget texte puisqu’il ne reconnait pas $post->ID.
    Mais est il possible de combiner widget et ajout personnel dans une meme sidebar ???

    #786936
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Cela parait normal, c’est en dehors de la boucle, je ne sias pas si c’est toujours renseigné en faisant un:

    global $wp_query;
    $pageID = $wp_query->post->ID;

    #786937
    natchoum
    Membre
    Chevalier WordPress
    162 contributions

    j’avoue que je ne suis pas encore bilingue même si je comprends pas trop mal, alors les histoires de loop pour wordpress pour le moment je suis paumé :S
    Pour l’instant j’ai essayé d’avancer par moi même en modifiant sidebar.php.
    J’ai réussit à faire un menu comme je le veux cependant il me reste un problème : si j’essaye de rerajouter la ligne qui me permet de remettre la barre faite par wordpress, ils se tappent dessus et ça ne marche pas :boulet:
    EDIT : j’ai vu ton post, j’ai testé avec ton rajout et effectivement ça marche dans le widget texte du coup. Merci beaucoup 😉 voilà le résultat :

    post->ID;
    $children = wp_list_pages(« title_li=&child_of= ».$pageID. »&echo=0″);
    if($children){ ?>
    <ul>

    </ul>

    Si un admin/modo peut mettre résolu

    #786938
    Lumiere de Lune
    Participant
    Maître WordPress
    20531 contributions

    Tu peux installer le plugin widget logic qui lui reconnait post id

    #786939
    natchoum
    Membre
    Chevalier WordPress
    162 contributions

    mon problème est que je tente de limiter au maximum les plugins depuis que l’on m’a dit qu’ils avaient tendance à ralentir. Quand je peux, je préfère faire le truc par moi même du coup exec php m’est très utile.
    Je pensais me restreindre à 5 plugins mais peut être en faut il beaucoup plus avant d’être ralentit ?

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