Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
N'étant que depuis très peu de temps sur le framework, et ayant lu énormément de tutoriaux, il y a beaucoup de solutions, trop même que l'on s'y perd.
Explication de la situation:
L'internaute arrive sur le site, il y a deux états possibles:
1- Non connecté --> Affichage d'un layout spécial et différent du reste du site
2- Connecté --> Affichage du layout "normal" valable pour le reste du site une fois connecté.
Les deux layouts n'ont absolument aucunes ressemblances.
Quelle est la méthode, la plus adaptée à cette situation?
En vous souhaitant de joyeuses fêtes,
Akhyra
Dernière modification par Akhyra (28-12-2009 17:13:18)
Hors ligne
t'utilise un plugin en loopShutdown qui modifie ton objet layout en fonction de l'état
if($isConnected) { Zend_Layout::getMvcInstance()->setLayout('layoutConnected'); }
Hors ligne
[EDIT]J'ai parlé bien trop vite ..
Par le plugin le changement de layout ne fonctionne pas, cependant par le controller il fonctionne.
Code dans le controller
$this->_helper->layout()->setLayout('layout2');
Code dans le plugin
if( Zend_Auth::getInstance()->hasIdentity() ) { Zend_Layout::getMvcInstance()->setLayout('layout2'); }
[EDIT2] Quand je passe l'appel du plugin en postDispatch, le changement de layout s'effectue bien, sa me convient aussi mais pourquoi ?
Dernière modification par Akhyra (26-12-2009 18:50:21)
Hors ligne
Oui c'est mon erreur, le plugin du Zend_Layout fonctionne en postDispatch. Il faut que ton plugin passe avant lui donc en postDispatch aussi
Bonne chance.
Hors ligne
Pages: 1