Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Salut!
J'utilise le composant Zend_Navigation pour créer le menu de mon application.
Je voudrais savoir comment mettre un style sur un lien du menu qui est actif.
Merci
Dernière modification par Mr.MoOx (23-09-2009 18:05:47)
Hors ligne
CSS :
.active { color: red; }
Hors ligne
mais comment insérer cette classe dans mon code php
Hors ligne
c'est du code CSS.
Tu crées un fichier dans ton répertoire public (par exemple css/style.css)
Puis tu inclus ce fichier
Je te laisse chercher comment l'inclure (tu trouveras la doc dans le ZF sans les viewhelper notamment) car je crois que tu as besoin de travaillé ta recherche.
Ne le prends pas mal, mais si tu commences comme ca (à ne pas savoir utiliser les CSS), tu n'as pas fini de nous poser des questions..
Pour utiliser le ZF, il faut un minimum de connaissance en (X)HTML/CSS et PHP
Hors ligne
ok merci pour ta réponse.Le problème n'est pas l'inclure dans le css.Peut être que j'ai mal formulé ma demande.Mais je reprends.
J'utilise le composant Zend_Navigation.
J'ai configuré dans un fichier navigation.xml dans mon dossier : application/configs.
Dans mon layout je crée mon menu en appelant la méthode : $this->navigation()->menu() .Bien sûr dans mon bootstrapp j'ai la méthode _initNavigation que j'ai crée.
Mon menu s'affiche correctement.
mon problème est que je veux un style dans mon lien actif.c'est à dire dans le rendu de ma page le code source serais quelque chose du genre:
<ul>
<li class="active"><a href="#">Menu 1</a></li>
<li ><a href="#">Menu 2</a></li>
<li ><a href="#">Menu 3</a></li>
</ul>
où par exemple Menu 1, Menu 2, Menu 3 sont mes controllers.
ce qui est sûr je sais très bien utiliser mon fichier css dans mon ZF
Hors ligne
et bien, le view helper Navigation_Menu génère déjà un attribut class="active".
Si l'attribut ne s'affiche pas, c'est que l'entrée du menu ne correspond pas avec la requête demandé (et/ou qu'aucun de ses fils n'est actif)
Hors ligne
Merci j'ai pu trouvé.En fait comme l'attribut class="active" ne s'affichait pas. J'ai seulement insérer une méthode
ce qui fait que j'ai ce code dans mon layout.
<?php
echo $this->navigation()->menu()
->setOnlyActivBranch(true);
?>
Hors ligne