名前空間テンプレート

ある名前空間ではいつも決まった形式のページを書く場合があるかもしれません。たとえば、address名前空間ですでに準備されたテーブルがあれば、あとは各項目だけを埋めていくだけで済みます。これを簡単に出来るようにしたのが「名前空間テンプレート」です。ページが作成されるとき、DokuWikiは「_template.txt」というファイルがその名前空間にあるかどうかを調べ、それの内容を新規ページのフォームに入力します。

これとは別に、「__template.txt」というテンプレートもサポートされています(アンダースコアは2つ)。これらのテンプレートは通常の_template.txtファイルと同じような使われ方をしますが、このファイルは下流にあるすべての名前空間にこのテンプレートを適用します。

「_template.txt」ファイルはDokuWikiインターフェースから編集することはできません ~ DokuWikiフォルダーの中のファイルを編集できる人(普通はFTPやWebDAVの管理者)だけが編集できます。1)

テンプレートファイルを作る1つの方法として、

ページごとに置換できる以下のようなパターンがあります。

@ID@ ページの完全なID
@NS@ ページの名前空間
@PAGE@ ページ名(IDから名前空間を削り、アンダースコアを空白に置換したもの)
@USER@ ページを作成したユーザーID
@NAME@ ページを作成したユーザーの名前
@MAIL@ ページを作成しているユーザーのメールアドレス
@DATE@ 編集セッションが始まった日付と時間

さらに、ページを作成した日時をstrftimeを使って任意のフォーマットで挿入できます。もし、%をテンプレート内で使いたいときには、それを2つ並べる必要があります。

1) もし、誰か別の人にテンプレートを編集してほしい場合は、inc/common.phpの623行目あたりにあるテンプレートファイル名をtemplate.txtに変更します。そうすると、その名前空間にアクセスできるほかのユーザーがtemplateというページを新規作成することで、その名前空間内のテンプレートとして使われます。