skel/

スケルトンと呼ばれる独自のテンプレートファイルが配置されています。

ファイルの書式(構文)についてはいずれ執筆予定のSatsuki-systemマニュアル*1に譲るとして、ファイル構造についてのみ説明します。

*1 : adiaryで使用しているフレームワークです。

ディレクトリ構成とQueryの関係

adiaryで記事編集画面を開くとく「?edit」というURLになります。管理メニューを開くと「?menu」になります。

このときのeditは skel/edit.html に対応しますし、menuは skel/menu.html に対応します。同様にブログの設定は「?set/」ですし、コンテンツツリーの設定は「?set2/contents_edit」です。

「_(アンダーバー)」で始まる _article や _frame といったファイルはQuery指定では呼び出せないようになっています。

_action/ にはフォーム処理(POST時の処理)を行うためのスケルトンが置かれています。

スケルトンの役割

スケルトンは他のフレームワークで言うところのViewに相当しますが、Controllerの役割も一部担っています。あまりに強力な記述能力があるため、むしろControllerとして使用している場所もありますが(フォーム処理)、基本的にViewです。

デザイン編集ではどうにもならない、プラグインでもどうにもならない出力を変更したい場合は、このスケルトンファイルを編集することになります。

スケルトンファイルの編集

skel/ 以下のファイルを直接書き換えてはいけません。バージョンアップ(アップデート)時の作業が大変になるからです。

ファイルを編集したい場合は、skel.local/ の同じディレクトリ位置にファイルをコピーしてから編集します。skel.local/ は skel/ よりも優先して読み込まれるスケルトンディレクトリです*2。ここにファイルを配置することで、skel/ 以下をアップデートしても常にカスタマイズしたスケルトンファイルを読み込ませることができます。

ただし、スケルトンファイル自体がadiaryシステムの一部となっていますので、古いバージョンのadiary付属のスケルトンを元にしたファイルを skel.local/ に置いておくとバグ修正や仕様変更などに追従できないことがあります。それだけご注意ください。

*2 : この設定は adiary.conf.cgi にて行われています。