第28章 Zend_Layout

目次

28.1. 導入
28.2. Zend_Layout クイックスタート
28.2.1. レイアウトスクリプト
28.2.2. Zend_Layout を Zend Framework の MVC で使用する方法
28.2.3. Zend_Layout を単体のコンポーネントとして使用する方法
28.2.4. サンプルレイアウト
28.3. Zend_Layout の設定オプション
28.3.1. 例
28.4. Zend_Layout の高度な使用法
28.4.1. ビューオブジェクトのカスタマイズ
28.4.2. フロントコントローラプラグインのカスタマイズ
28.4.3. アクションヘルパーのカスタマイズ
28.4.4. レイアウトスクリプトのパス解決方法のカスタマイズ: インフレクタの使用法

28.1. 導入

Zend_Layout は、 有名な「ツーステップビューパターン」を実装したものです。 開発者は、アプリケーションのコンテンツを別のビューの中に埋め込むことができます。 この「別のビュー」は、通常はサイトのテンプレートとなります。 このようなテンプレートのことを、他の多くのプロジェクトでは レイアウト と呼んでいます。 そこで Zend Framework でもその用語を使用することにします。

Zend_Layout の目標を以下にまとめます。

  • Zend Framework の MVC コンポーネントと組み合わせて使用する際に、 レイアウトの選択とレンダリングを自動化する。

  • レイアウト関連の変数やコンテンツに対して個別のスコープを用意する。

  • レイアウトの名前やレイアウトスクリプトの解決 (インフレクション)、 レイアウトスクリプトのパスなどを設定できるようにする。

  • レイアウトを無効にしたり、 レイアウトスクリプトやその他の状態を変更したりできるようにする。 これらの操作はアクションコントローラおよびビュースクリプトの両方から行えるようにする。

  • ViewRenderer と同じルール (インフレクション) でスクリプトの解決を行うが、 別のルールも使用できるようにする。

  • Zend Framework の MVC コンポーネント以外からも使用できるようにする。