Ver. 2.11.25からのテンプレートの仕様変更について
Ver. 2.11.25 で、テンプレート周りの仕様変更がありましたので、お知らせいたします。
概要
いくつかの設定(private/config.system.yaml)をデフォルトで有効にしてあります。なのでCMSのアップデートによる影響はございません。 Ver. 2.11.25 以上を新規インストールした場合、そのままだといままでと違う動作になります。
変更内容
private/cofig.system.yaml で以下項目が追加・変更されています。
forbid_tpl_inheritance_when_path_unresolved: on # on | off パス解決に失敗した時、テンプレートを継承しないようにする
forbid_tpl_url_context: on # on | off 読者以下のURLコンテキストのtplを許可しない。(例: https://example.com/news/tpl/custom.html)
allow_tpl_path: [] # forbid_tpl_inheritance_when_path_unresolved や forbid_tpl_url_context が on の場合、除外するパスを設定します。例: [news.html,hoge/custom.html] カンマ区切りで指定
forbid_tpl_url_context
デフォルトで、tplコンテキスト を無効に設定しました。理由として tplを指定すればクライアント側で、好きなテンプレートを指定することができてしまうため、 同一コンテンツの複数のページができてしまうためになります。
forbid_tpl_inheritance_when_path_unresolved
デフォルトで、パス解決失敗時のテンプレート継承を無効にしました。理由として forbid_tpl_url_context と同様、同一コンテンツの複数のページが表示できてしまうためになります。
allow_tpl_path
上記2つの設定の例外パスを設定できます。例えばpost includeしたい箇所などは、tplコンテキストを使いたい場合があるので、 そのような時は、ここで例がテンプレートのパスを記入します。
以上3つのオプションの設定を追加・変更いたしました。バージョンアップでは影響が出ないようになっていますので、Ver. 2.11.25 以上で新規インストールする場合はお気をつけください。
forbid_tpl_inheritance_when_path_unresolved と forbid_tpl_url_context を off に設定すれば、いままでと同じ動作になりますが、できればここの設定はONのまま、allow_tpl_path で例外設定をするようにお願いいたします。