いろいろいじくりまわしている間に、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)
参考文献
- CakePHPで実行中のコントローラー名、アクション名を取得する方法 :
無効なURLです - 【CakePHP】コントローラ内で絶対パスのURLを取得する – すたら日記 :
【CakePHP】コントローラ内で絶対パスのURLを取得する - すたら日記(CakePHP2.2.1 でも確認しました。 2012-07-24) 『http://』から始まってルートまでの絶対パスを、 たとえば『』のようなURLを取得するには、 ビューでは下記のようになります。 これをコントローラ内で行うには、 ...
コメント