Zend Framework: Renderuj wiele widoków w jednym układzie

Chcę wygenerować dynamiczną witrynę przy użyciu Zend_Layout.

Mój układ (/application/layouts/scripts/layout.phtml) zawiera następujące wiersze:

...        
<body>

        <?php echo $this->render('header.phtml') ?>

        <div id="content"><?php echo $this->layout()->content ?></div>

        <?php echo $this->render('footer.phtml') ?>

    </body>
...

Jeśli przejdę do mojej akcji indeksu kontrolera indeksu - Zend renderuje widok indeksu (application / views / scripts / index / index.phtml) wewnątrz treści $ this-> layout () -> automatycznie.

Teraz chcę wyświetlić widoki różnych akcji kontrolera w układzie. Generuję więc nowy auth kontrolera z loginem akcji, który pokazuje formularz logowania.

Zmieniam układ na:

  ...        
    <body>

            <?php echo $this->render('header.phtml') ?>

            <div id="content"><?php echo $this->layout()->content ?></div>
            <div id="login"><?php echo $this->layout()->login ?></div>

            <?php echo $this->render('footer.phtml') ?>

        </body>
    ...

Kiedy przeglądam indeks / indeks, chcę w tej akcji zdefiniować, że zend powinien wyświetlać widok autoryzacji / logowania wewnątrz $ this-> layout () -> login i na przykład news / list wewnątrz $ this-> layout () - > treść.

index / index jest czymś w rodzaju układu strony - a auth / login i news / list to rodzaj widżetu

Jak to zrobić?

questionAnswers(4)

yourAnswerToTheQuestion