私はKohana 3を使用しています。これはテンプレートコントローラーです。現在、メインのサイト テンプレート コントローラーは次のようになっています。
<?php defined('SYSPATH') or die('No direct script access.');
abstract class Controller_SiteTemplate extends Controller_Template
{
public function before()
{
parent::before();
// Initialize default template variables
$this->template->styles = Kohana::config('site.styles');
$this->template->scripts = Kohana::config('site.scripts');
$this->template->title = '';
$this->template->content = '';
}
}
そして、テンプレート ビューで次のようにします。
<?php # Styles
foreach($styles as $file => $media)
echo HTML::style($file, array('media' => $media)).PHP_EOL ?>
<?php # Scripts
foreach($scripts as $file)
echo HTML::script($file).PHP_EOL ?>
これは問題なく動作します。問題は、コントローラーにスタイル ファイルとスクリプト ファイルを追加する必要があることです。また、新しいスタイルシートや新しいスクリプト ファイルを追加するためだけにコントローラーをいじる必要があるため、私以外の誰かがビューを作成すると面倒になります。どうすればこれをより良い方法で行うことができますか?
明確にするために、私が疑問に思っているのは、ページ固有のスタイルシートとスクリプトを処理する方法です。デフォルトおよびサイト全体のものは、構成ファイルから取得するか、テンプレート ビューに直接配置するだけで問題ありません。私の問題は、特定のページにカスタムのものを適切な方法で追加する方法です。