cakephp3でタイトルの変更とページ別で違うクラスを付与する

概要

wordpressとかでよくやる今いるページごとにアクティブハイライトつけたりする方法が知りたかった。
今回はゲームリストページとノベルリストページごとに切り替える想定。
もっとマシなやりかたもあるのかもしれない…。

方法

各Viewのindex.ctpにassignするとdefault.ctpでその値が使えるみたいだ
ちなみにうっかりdefault.ctpに書いちゃうとずっとその値が優先されていた。
/src/Template/Games/index.ctp

<?php
$this->assign('title', 'ゲームリスト');//タイトルにサイトリストが表示される
$this->assign('Games', 'active');//cssでハイライトを設定した想定のクラス
?>

/src/Template/Novels/index.ctp

<?php
$this->assign('title', 'ノベルリスト');//タイトルにサイトリストが表示される
$this->assign('Novels', 'active');//cssでハイライトを設定した想定のクラス
?>

/src/Template/layout/default.ctp

<!-- タイトル部分 -->
	<title>
		<?= $this->fetch( 'title' ) ?>
	</title>

<!-- ヘッダのリストとかの部分 -->
	<li class="<?= $this->fetch( 'Games' ) ?>">
		<a href="/Games">ゲームリスト</a>
	</li>
	<li class="<?= $this->fetch( 'Novels' ) ?>">
		<a href="/Novels">ノベルリスト</a>
	</li>

(hrefの書き方は本来正式な書き方があるはず…

おわり。