2012-02-19 4 views
0

Я реализовал проект Zendсодержание макета не получает + Zend

и ее работает отлично

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

Шаг 1

для этого я создал " layout.phtml 'в папке' приложение/макеты '

<!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> 

стадия2

Изменен application.ini и добавили следующую строку

resources.layout.layoutpath = APPLICATION_PATH "/ макетов" под [производство]

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'); 
    } 
} 
?> 

Шаг4

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

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

Что случилось с этим кодом

+3

эхо this-> раскладку() -> содержание ?? – kingdaemon

+0

Я не понимаю ваш вопрос – Linto

+0

Вы не повторяете свой контент в layout.phtml. Проверьте код, который вы отправили – kingdaemon

ответ

1

Необходимо эхо-содержимое.

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

+1

Я бы рекомендовал против использования коротких тегов php, если вы хотите перенести свой код на другой сервер с отключенными короткими тегами, тогда ваш код упадет. Чтобы эхо в php, я всегда использую Garry

+0

Выполнение поиска и замены в ваших представлениях довольно просто. Благоразумие должно иметь приоритет над уродством. – danronmoon

0

Необходимо эхо-содержимое. Либо вы можете использовать

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

ИЛИ

<?php echo $this->layout()->content ?> 
Смежные вопросы