アクション名やコントローラー名を取得して、該当するページのタグにクラスを付加するのはどうでしょう。
JavaScriptを使ってもいいですけどね。
PHP
1// ビュー
2
3// コントローラー名:$this->request->controller
4// アクション名: $this->request->action
5
6if ($this->request->action === 'class1') echo 'active';
ヘルパーでリンクなどを出力する際も、コントローラー名やアクション名で判定して、出力するコードをかえればいいと思います。
PHP
1if ($this->request->action === 'class1') {
2 echo $this->Html->link(
3 'クリック',
4 ['controller' => 'Users', 'action' => 'index'],
5 ['class' => 'active']
6 );
7} else {
8 ……
9}
追記(array_map()を使う場合)
PHP
1$array = ['アクション名1', 'アクション名2', ……];
2
3echo $this->Html->link(
4 'クリック',
5 ['controller' => 'Users', 'action' => 'index'],
6 array_map(function ($array) {
7 ……
8 // $arrayに一致するアクション名の場合
9 return ['class' => 'active']
10 }, $array)
11);
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/13 13:39
2016/07/13 14:08 編集