2015年3月5日木曜日

Baked 現在のページを取得する

Bakedで現在のページを知りたい、取得したいというときは、view内で下記のようにして取得できる。
<?php
 echo $currentMenu['Page']['name'];
?>
Bakedは、初心者に使いやすい反面、カスタマイズしようとすると情報が少なすぎて困る。
たとえばトップページだけ表示したいコンテンツがある、とかの場合、それがページ内コンテンツであれば簡単なのだけど、default.ctpテンプレート内で、となるといきなり面倒になる。現在のページを取得できればいいだけなのだけども、ソースコードを追わないとわからない。

そういった場合も、default.ctp内に下記の用に記述すれば良い。

<?php
 if($currentMenu['Page']['name'] == 'index'){
  echo 'トップページ';
 }
?>

ただし、トップページだけグローバルメニューを表示しない、という場合にデフォルトのメニューをif文で回避するのはよくない。 この場合、Controllerでメニューの中身を空っぽにして渡す方がよいと思われる。

0 件のコメント:

コメントを投稿