スキン周りに関する仕様のまとめ

Nucleusのスキン周りについてTwitterでいろんな話が出ていたので,Foodyn CMSにおける仕様と実装についてまとめておきます。

Foodynはスキン(他のCMSだとテンプレートといったほうがいいのかな?)の処理系(エンジン)を複数載せられますが,ここでは標準組み込みであるNucleus互換のスキン・エンジンについてだけまとめます。

まず,現状のNucleusのスキンには分かりやすさなどにおいていくつか問題があります。
①DBに保存されているスキンと,ファイル・ベースでインクルードする部分があり,編集画面もそれぞれ別になる
②さまざまなスキンタイプが分かりにくい
③スキンとテンプレートの関係が分かりにくい。テンプレートの中にはアイテムの表示に関係するもの,カテゴリーの表示に関係するもの,さらには日付表示に関係するものや,画像表示に関係するものなどが混在しており,どこで何が使われているのか理解するのが難しい
④特別なページを作る機能が少ない

Foodynではこれらについて次のような改善策を取ります。
①Nucleusのスペシャルスキンパーツをインクルードする機能を標準で持ちます(Nucleusでファイルをインクルードするのに使うparsedincludeを拡張)。基本的にDBベースの編集だけで済むようになります。
②「レイアウト」スキンを使うと,各スキンに固有な部分(例えばアイテムページにおける<%item%>スキン変数)はデフォルトのものが利用でき,何も作らなくて構わない(もちろんデフォルトで不満がある場合は作っても構わない)
③テンプレートにデフォルト機能があるので,意識してテンプレートを使わなくてもよくなります。例えば<%categorylist%>だけで動くようになります。また,インライン・テンプレート機能を使うことで,スキンの中にテンプレートを埋め込めます。
また,スキンに対してメインのテンプレートとアイテムスキン用のテンプレートという二つのテンプレートを属性として持つようにします(未実装)。標準ではスキン名に「/index」「/item」をつけたものがテンプレート名になります。これらはスキンのデフォルトテンプレートとして働きます(ない場合はシステムのデフォルトが使われます)。
これらのスキンに付属するテンプレートはスキン編集画面から直接パート(例えばカテゴリ表示関係)ごとに呼び出して編集できるようにします(未実装)。
④ブログに付属しないアイテムを作ることができ,このアイテム・ページに自由に名前を付けることによって,さまざまなページが作れます。
トップ・ページの機能があり,トップページだけ専用のスキンパートを利用できます。



16 Sep, 2008 | Foodyn ( スキン ) | | Andy
« Prev item - Next Item »
---------------------------------------------

Comments


No comments yet. You can be the first!


Leave comment

© 2007 yoursite.com | Designed by DesignsByDarren
Ported to Nucleus CMS: Suvoroff