【Dokuwiki】ページ作成時にテンプレートで定型文を入力

2022-10-07

templateのイメージ画像

新規ページを作る際に、テンプレートファイルを使って定型文を入力する方法です。

公式サイトでも説明されています。

公式サイトのファイルをアップロードする方法で、若干の説明追加を加えています。

テンプレートファイル

テンプレートファイルは「_template.txt」と「__template.txt」←アンダーバー2回の2種類あります。

_template.txtを使う場合はテンプレートファイルが存在する名前空間だけにテンプレートが適応され、__template.txtは該当する名前空間より下のすべてにテンプレートが適応されます。

_template.txt

__template.txt

テンプレートファイルの作成は、テキストエディタか何かで入力したい定型文を作成して.txtで保存するだけです。

構文
テンプレートファイルの内容は、単純に標準の Wiki 記法で記述します。


置換パターン
テンプレートを多少動的にするために、ファイルの中で以下に示すようないくつかの置換パターンを使用できます。

@ID@ 完全なページ ID
@NS@ ページが所属する名前空間
@PAGE@ ページ名 (ページ ID から名前空間を除き、アンダースコアをスペースに置換したもの)
@!PAGE@ @PAGE@ の最初の文字を大文字化したもの
@!!PAGE@ @PAGE@ に含まれるすべての単語の最初の文字を大文字化したもの
@!PAGE!@ @PAGE@ に含まれるすべての文字を大文字化したもの
@FILE@ ページ名 (ページ ID から名前空間を除くが、アンダースコアはそのままにしたもの)
@!FILE@ @FILE@ の最初の文字を大文字化したもの
@!FILE!@ @FILE@ に含まれるすべての文字を大文字化したもの
@USER@ ページを作成しようとしているユーザーのユーザー ID
@NAME@ ページを作成しようとしているユーザーの名前
@MAIL@ ページを作成しようとしているユーザーのメールアドレス
@DATE@ 編集作業が開始された日付と時刻

ja:namespace_templates [DokuWiki]

サンプルテンプレートファイル

====== テストテンプレート ======

ここに入力した内容が定型文として、適応される名前空間で作成したページに反映されます。

アップロード

作成したテンプレートファイルは、FTP等を使って適応したい名前空間のフォルダにアップロードします。

最近のレンタルサーバーだとファイルマネージャーを使う方が簡単です。

確認

「:test:file_a」を新規に作成

定型文が入力された状態で編集画面になります。

まとめ

「dokuwiki テンプレート」で検索すると定型文では無く外観のテンプレートばかり結果に表示されるので、目的の情報にたどり着くのに苦労しました。

方法さえわかれば簡単で便利になります。

__template.txtを使っている場合でも、下位の名前空間で新たにテンプレートファイルを作った場合は新しく作ったテンプレートファイルが優先されます。

また、複数の文章を入力できるプラグインもあるようですが、私の環境ではエラーが出たので動作確認はできていません。