Макет контента не получается + Zend - PullRequest
0 голосов
/ 19 февраля 2012

Я реализовал проект Zend

И он работает нормально

Теперь я попытался реализовать макет,

Шаг 1

для этого я создал'layout.phtml' в папке 'application / layouts'

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?php echo $this->headTitle(); ?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>

<body>
<?php $this->layout()->content ;?>
</body>
</html>

step2

Модифицировал application.ini и добавил следующую строку

resources.layout.layoutpath = APPLICATION_PATH "/ layouts" в разделе [production]

Step3

Изменил Bootstrap.php и добавил функцию '_initViewHelpers ()'

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap{

    function _initAutoload()
    {
        $moduleLoader = new Zend_Application_Module_AutoLoader(
            array('namespace'=>'','basePath'=>APPLICATION_PATH)
        );
        return $moduleLoader;
    }

    function _initViewHelpers()
    {
        $this->bootstrap('layout');
        $layout = $this->getResource('layout');
        $view = $layout->getView();
        $view->doctype('XHTML1_STRICT');
        $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
        $view->headTitle()->setSeparator(' - ');
        $view->headTitle('Zend Framework Tutorial');
    }
}
?>

Step4

Я взял URL в браузере http://localhost/zf_tutorial/public/

Показывает содержимое страницы макета, но $ this-> layout () -> content не работает (т.е. действие индекса контроллера индекса)

Что не так с этим кодом

Ответы [ 2 ]

1 голос
/ 19 февраля 2012

Вам необходимо отобразить ваш контент.

<?= $this->layout()->content ?> будет делать то, что вы хотите!

0 голосов
/ 05 мая 2012

Вы должны повторить ваш контент.Либо вы можете использовать

<?= $this->layout()->content ?> 

ИЛИ

<?php echo $this->layout()->content ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...