CakePHPの画面レイアウトを変更する
CakePHPで画面を作成する場合、\{CakePHPプロジェクト}\src\Controller\コントローラー名Controller.php
と\{CakePHPプロジェクト}\src\Template\コントローラー名\アクション名.ctp
を作成すると、このようなデフォルトの画面レイアウトで表示されます。

この画面レイアウトを変更する方法です。
通常の画面レイアウトは、\{CakePHPプロジェクト}\src\Template\Layout\default.ctp
と\{CakePHPプロジェクト}\webroot\css\base.css
、\{CakePHPプロジェクト}\webroot\css\style.css
などが適用されています。
レイアウトのカスタマイズ時はテンプレートファイルとスタイルシートを追加します。
コンテンツ部分のビュー
\{CakePHPプロジェクト}\src\Template\Test\index.ctp
には以下の内容を記述しています。
テンプレートファイルの追加
default.ctp
を参考に編集すると分かりやすいです。
\{CakePHPプロジェクト}\src\Template\Layout\
にテンプレートファイルを追加します<head>
タグ内に追加するCSSのリンクを出力します(任意)
実際の記述例:拡張子はあっても無くてもOK.
- 独自の画面定義を行います
- コンテンツ部分のビュー(
\{CakePHPプロジェクト}\src\Template\コントローラー名\アクション名.ctp
)を表示したい箇所で下記コードを記述します
ページタイトルは下記で表示可能です。
スタイルシートの追加(任意)
\{CakePHPプロジェクト}\webroot\css\
にスタイルシートを追加します
テンプレートファイルの変更
\{CakePHPプロジェクト}\src\Controller\コントローラー名Controller.php
で使用するレイアウトファイルを指定します。
- レイアウトを変更したい
function
(アクション名)に以下の記述を追加します
実際の記述例:レイアウトファイル名に拡張子は書かない.
変更後のサンプル

new-layout.css
new-layout.ctp