Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour;
Je cherche à faire un menu de navigation, du style
Accueil > boutique > accessoire > vous etes ici.
Voilà je sais pas du tout comment m'y prendre.
Merci
Hors ligne
Je ne comprends pas trop où est ton problème, tu veux le faire en (x)HTML avec ou sans du javascript un pincée de CSS. Sinon, ton problème se situe au niveau de tes modules dans ZF il faudrait être un peut plus précis.
Sinon google avec "menu de navigation" te donnera des réponses à la première question après on peut peaufiner ici.
Cordialement,
Dinoxyz
Hors ligne
tu vois ce forum.
En haut à gauche de ecricre une réponse tu as ca :
Accueil forums » Général » Menu de navigation.
Voilà c'est ca que je cherche à faire, pas un menu déroulant ou quoi ce soit avec javascript.
Hors ligne
Bah déjà je bloque dès le debut, je ne sais pas comment m'y prendre, pour le faire, le faire proprement, sans vraiment bricoler quoi.
Hors ligne
<div class="linkst"> <div class="inbox"> <p class="pagelink conl">Pages: <strong>1</strong></p> <p class="postlink conr"><a href="post.php?tid=432">Écrire une réponse</a></p> <ul><li><a href="index.php">Accueil forums</a></li><li> » <a href="viewforum.php?id=5">Général</a></li><li> » Menu de navigation</li></ul> <div class="clearer"></div> </div> </div>
Le code source de la ligne que tu cherches
La partie qui t'intéresse est entre <ul><li>...</li></ul>
Dernière modification par dinoxyz (15-09-2007 21:45:25)
Hors ligne
Si c'est pour rire , et bien c'est pas drole
Tu as bien compris que je le cherchais à le faire dynamiquement quand même.
J'ai plusieurs page donc je dois génerer le menu dynamiquement.
Au fait ca s'appelle comment ce menu ?
Hors ligne
Maintenant, je sais ce que tu cherches donc voilà les deux parties le contrôleur ici
<?php // utilise un modèle pour obtenir les données sur les menus : liens et descriptions $data = array( array( 'liens' => 'index.php', 'descriptions' => 'Accueil forums' ), array( 'liens' => 'http://www.z-f.fr/forum/viewforum.php?id=5', 'descriptions' => 'Général' ), array( 'liens' => 'http://www.z-f.fr/forum/post.php?tid=432', 'descriptions' => 'Menu de navigation' ) ); // assigniation des données du menu à une instance Zend_View Zend_Loader::loadClass('Zend_View'); $view = new Zend_View(); $view->menu = $data; // et appel du script de rendu d'affichage appelé "menu.phtml" echo $view->render('menu.phtml');
la vue ici
<ul> <?php foreach ($this->menu as $key => $val): ?> <li><a href="<?php echo $this->escape($val['liens'])?>" <?php echo $this->escape($val['descriptions']) ?></a></li> <?php endforeach; ?> </ul>
En espérant, que ça t'aide un peu plus
Dinoxyz
Dernière modification par dinoxyz (16-09-2007 10:10:33)
Hors ligne
Sinon si t'es dans l'arborescence d'un site, en général, tu auras enregistré les noeuds de ton arbo dans avec un "parentId" qui référence le noeud parent. Dans ce cas pour afficher ton "chemin de fer" (c'est comme ça que ça s'appelle ), tu pars de la page courante et tu fais des requêtes successives pour retrouver tous les parents de ta page.
Une fois que t'as les parents, tu suis la méthode de dinoxyz ci dessus pour tout afficher.
A+, Philippe
Hors ligne
Est ce que c'est correcte de le faire avec une requete sql ? Le problème est que j'ai plusieurs menu aves des sous menus et des sous ous menus. J'ai une table "Menu" avec tous les parents , le label et liens. Mais voilà executer une requete juste pour ca.
Je vois pas trop comment m'y prendre, je n'ai pas compris l'histoire des noeuds. Bon je vais encore chercher un peu( je ne trouve rien sur google avec chemin de fer php).
Sinon je vais etudier celui de punbb
Merci encore
Hors ligne
alien7 => donne moi la composition de ta table "Menu" et je te donnerai la requête Mysql. Mais, tu devrais pouvoir créer un tableau à partir de ta table "Menu".
Le "chemin de fer" te permet de savoir que la page "Menu de navigation" à pour parent "Général" qui lui a pour parent "Accueil forums" après tu sais que lui il n'a plus de parent, donc tu repars en sens inverse le parent principal -> l'enfant->le petit enfant pour cette exemple.
Dans ta base de données tu dois avoir un champs "code" ou "chemin" qui indique justement ce type pour remonter c'est plus facile
Cordialement,
Dinoxyz
Hors ligne
Bah J'ai trouvé ca :
http://www.baskettcase.com/classes/breadcrumb/
Je vais l'étudier un peu.
++
Edit : ah non apparement ce script travail que sur les fichier.
en fait je cherche à faire comme priceminister, un exemple là :
http://www.priceminister.com/navigation … ory/266181
Je crois que je vais lancer une requete sql pour faire ca.
Ca doit pas bien etre mechant de lancer une requete sql pour ca non ?
Dernière modification par alien7 (16-09-2007 19:31:46)
Hors ligne
C'est bien ce que je t'avais signalé rajoute un champs qui donne une arborescence de ton site essayes d'y aller de 10 en 10 ou de 5 en 5, si tu as beaucoup de catégorie.
Exemple avec le forum qui n'est pas du tout un bon exemple car les champs bouches en fonctions des réponses.
Niveau 1 ->"10" "accueil forums" "index.php" Niveau 2-> "1010" "Général" " .php"; "1020" "Installation, configuration et mise à jour" " .php"; "1030" "Composants de bases du framework" " .php"; et ainsi de suite. Niveau 3 -> "101010" "Menu de navigation" " .php", "101020" "ZF et Ajax" " .php", "102010" "[Résolu] Liens sur serveur dedié" " .php", "102020" "<?php echo $this->baseUrl;?>" " .php"; etc....
Maintenant, tu as une base pour ta table Menu mais tu peux y rajouter d'autres informations la langues, les keywords.
J'espère que ça te suffiras pour arriver à tes fins et que tu nous tiendras au courant.
Dinoxyz.
Dernière modification par dinoxyz (16-09-2007 23:17:48)
Hors ligne