CakePHPでビューの共通部分を別ファイルに記述する
複数のビュー(View)で同じ記述がある場合、Element(エレメント)を使うことで同一部分を部品化できます。
Elementの書き方
書き方は通常のビューテンプレート(.ctpファイル)と同じです。共通部分のビューテンプレートを\{CakePHPプロジェクト}\src\Template\Element
に配置します。
sidemenu.ctp
呼び出し側の記述
呼び出し側ビューテンプレートで$this->element()
を使ってElementの読み込みを行います。引数はElementファイルのファイル名になります。
または
引数を渡す
$this->element()
の第二引数に連想配列で引数を渡すことが可能です。$this
でアクセスするものはElement側で参照できますが、それ以外の変数は参照できないため、引数で渡す必要があります。
呼び出し例
Elementでの使用例
連想配列のキーがElement側で変数名になります。