PR

CakePHP で現在の状態を取得する

いろいろいじくりまわしている間に、CSSがぐちゃぐちゃした。
考えた挙句、TOPページ(=root)かどうかで取り敢えずCSSを分けられればよさそう。

というわけで、どんな方法があるか調べてみた。

◆現在の相対パスを得る/root 判定

とりあえずControllerでもViewでも使えるっぽいので、こんな感じで判定できそう。特定のコントローラ&アクションの時に切り替えるとかするとデザインのテストにも使えそう。(広範囲に及ばないならそのViewでCSSを読み込ませればよい)

if($this->here != ‘/’){
  echo ‘not root’;
 }else{
  echo ‘root’;
}

とか

if(eregi(“^\/hoges”, $this->here)) echo $html->css(‘hoges’);

とかかな。

スポンサードリンク

◆その他(参考文献より引用)

  • コントローラー名の取得
     $this->name
  • アクション名の取得
     $this->action
  • Webrootの取得
     $this->webroot
  • 現在の位置(URL)を取得
     $this->here;
  • ビューで、URLの取得したいとき
     $html->url()
  • 第2引数をtrueにすると、絶対パスが取れる
     $html->url(’/’, true)

参考文献

コメント