CakePHPでURLを任意に変更させる

まっちー

まっちー

前回の記事でコントローラーの中身をフォルダ分けして整理するやり方を書きましたけど、その流れに乗ってURLなんかも管理側と表示側で変えることはできないのかなと思ったら、これが出来るらしいんですね。なかなか柔軟な野郎ですね。レッドオクトパス市原のようですね。

core.phpの60~70行目の辺りを見てみると

Configure::write('Routing.admin', 'admin');

みたいな感じの一文がコメントアウトされてると思うんですけど、このコメントアウトを外すと、URLが以下のような感じに変化されるようです。

https://localhost/test/controller/action/
↓
https://localhost/test/admin/controller/action/

デフォルトはadminになっていますが、これは任意に変えることが可能なようですね。

これを利用すれば、前回のやり方で管理画面用のコントローラーをcontrollers/admin以下に作成して、それらのURLをadmin/contorller/actionにすることもできるって寸法ですね。

ちなみに、URLをadmin~に変化させた場合は、コントローラーの中身もちょっと変えないといけない。

class TestsController extends AppController {

var $name= 'Tests';

function admin_index() {
    //詳細
}

本来のアクション名の前にadmin_をつけ足さないとmissingエラーが出ちゃいます。adminを任意の文字列に変えた場合は、この部分もそれに合わせて変えれば問題ないでしょう。試してないけど、たぶん。

LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。

Webサイト制作の実績・料金を見る

この記事のシェア数

プログラマのまっちーです。酒が大好きです。ある一定量のお酒を飲むと壊れたレディオモードに入り、同じことを繰り返す癖があります。宜しくお願いいたします。

このメンバーの記事をもっと読む