IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MVC PHP Discussion :

[ZF 1.7] Plusieurs Layout


Sujet :

MVC PHP

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 2
    Par défaut [ZF 1.7] Plusieurs Layout
    Bonjour

    1. je débute sous ZF et je souhaiterais mettre en place un layout pour la page d'index et un autre pour toutes les pages du site.

    Dans le bootstrap, je pourrais mettre un if en enlevant le layout pour index et le laissant pour les autres mais je dis qu'il y a surement une "meilleure - plus propre" solution.

    2. Et je pourrai étendre la question comment fait - on pour modifier avoir plusieurs layout 2-3-4 pour un site donné ?

    Merci pour vos retours d'experience.

  2. #2
    Candidat au Club
    Inscrit en
    Janvier 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 2
    Par défaut
    Je me reponds, il suffisait de lire la doc sur Zend_Layout

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 84
    Par défaut
    Perso j'aurai bien aimé des explications complémentaires... car j'vois pas

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 84
    Par défaut
    Je finis par me répondre à moi-même...
    En m'appuyant sur la doc Zend, j'ai ajouté le code suivant dans la fonction init() du controller pour lequel je souhaitais un affichage différent :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->_helper->layout->setLayout('mycustomlayout');
    Vous l'aurez compris, j'ai un fichier nommé "mycustomlayout.phtml" dans le dossier de layout déclaré dans mon bootstrap (en plus du layout.phtml classique).

    Il y a peut-être mieux mais ça fonctionne

  5. #5
    Nouveau candidat au Club
    Inscrit en
    Novembre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 3
    Par défaut
    Salut a tous. J'ai lu la doc zend, et j'ai essayé d'utiliser la méthode de Amon qui me semble plutôt intéressante (vu l'existant de mon site) cependant en ajoutant dans la méthode init du controlleur pour lequel je souhaite un gabarit different, je n'ai aucun rendu dans le navigateur.

    Je precise ma configuration
    - dans le bootstrap j'ai ceci :
    Zend_Layout::startMvc(array('layoutPath' => $appPath . '/views/layouts'));
    - dans mon nouveau controlleur (celui avc un gabarit different) j'ai ceci :
    class NouveauController extends Zend_Controller_Action {
    public function indexAction() {
    $this->view->setTitrePage("MonSite");
    }
    public function init()
    {
    $this->_helper->layout->setLayout('nouveauLayout');
    }

    }

    j'ai bien cree le fichier nouveauLayout.phtml dans le répertoire des layouts (avc le mm contenu que le précédent), mais cela ne semble pas marcher.

    Quelqu'un pourrais t-il me filer un coup de main, please ?

  6. #6
    Nouveau candidat au Club
    Inscrit en
    Novembre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 3
    Par défaut
    Apres quelques recherches, je suis parvenu a une solutions, que je vous propose:
    - dans le bootstrap
    $layout = Zend_Layout::startMvc(array('layoutPath' => $appPath . '/views/layouts'));
    - dans le nouveau controlleur
    $layout = Zend_Layout::getMvcInstance();
    $layout->setLayout('nouveaulayout');

    avec bien entendu un fichier nouveaulayout.phtml dans le répertoire '/views/layouts'
    Bon codage !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Plusieurs Layouts et plusieurs Text
    Par tlili_info dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 13/12/2011, 13h03
  2. [1.x] page sans le layout ou plusieurs layout
    Par goood dans le forum Symfony
    Réponses: 1
    Dernier message: 06/09/2011, 16h43
  3. Besoin d'aide pour plusieurs Layout sur une même Frame
    Par CosaNostra dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 12/02/2010, 16h27
  4. Utiliser plusieurs layout différents dans une fenetre
    Par thierry_b dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 23/07/2009, 10h24
  5. Plusieurs layout pour un controller
    Par Flackou dans le forum Ruby on Rails
    Réponses: 0
    Dernier message: 31/08/2008, 03h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo