[fuelPHP]特定のアクションだけテンプレートを替える

  • 公開日:2015/7/13
この記事は最終更新日から8年以上が経過しています。

fuelPHPではテンプレートコントローラの$templateプロパティを設定することによって、コントローラごとに異なるテンプレートを利用できます。

class Controller_Example extends Controller_Template
{
    publid $template = 'example/template';
}

上記は、Controller_Example(コントローラ)が APPPATH/views/example/template.php をテンプレートとして設定しています。

ひとつのコントローラの中で、特定のアクションだけ異なるテンプレートを使用したい場合があります。
その場合は、以下のようにアクション内で$this->templateにViewオブジェクトを代入します。
※アクション内で$this->templateを単純に変更するだけでは上手くいきません。Viewオブジェクトを代入することがポイントです。

class Controller_Example extends Controller_Template
{
    publid $template = 'example/template';

    public function action_sample()
    {
        $this->template = View::forge('example/another_template');
    }
}