17

[レイアウト名].phtml を使用して、Zend_Layout に header.phtml と footer.phtml を含めたいと考えています。

それ、どうやったら出来るの?Zend_Layout、Zend_Layout_Controller_Plugin_Layout でコードを読み取ろうとしました。未だに解りません..

4

4 に答える 4

24

layout.phtmlファイル内からヘッダーファイルとフッターファイルを含めることができます。次に例を示します。

<div id="header"><?= $this->render('layouts/header.phtml') ?></div>
<div id="nav"><?= $this->render('layouts/nav.phtml') ?></div>
<div id="content"><?= $this->layout()->content ?></div>
<div id="footer"><?= $this->render('layouts/footer.phtml') ?></div>
于 2009-10-27T00:04:55.517 に答える
7

cballouの答えはおそらくあなたが望むものですが、私はこれをそこに投げ込むと思いました。サイトのさまざまな部分で個別のヘッダーとフッター ビュー スクリプトをレンダリングする場合は、次のように各コントローラー内から実行できます。

Zend_Loader::loadClass('Zend_View');
$header = new Zend_View();
//Set header variables here
$this->view->header = $header->render('header.phtml');

次に、$this->header を使用して、レイアウト内からレンダリングされたヘッダーを取得します。フッターも同様。

于 2009-10-27T00:11:44.863 に答える
2

別の方法:

これはコントローラーに入ります:

$this->view->header = "header.phtml";

これはビューに表示されます:

include($this->header); 

コントローラーを使用しない場合でも (ビューでのみ)、以下を使用できます。

include("header.phtml");
于 2011-02-07T00:34:18.463 に答える