ja:namespace_templates
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
ja:namespace_templates [2009-12-29 04:29] – updated kazmiya | ja:namespace_templates [2017-06-23 11:02] (現在) – 114.158.209.198 | ||
---|---|---|---|
行 1: | 行 1: | ||
- | |||
- | ====== 名前空間テンプレート ====== | ||
- | |||
- | 時には、ある名前空間内のすべてのページを、共通の雛形をベースにして書きたい場合があるかもしれません。例えば、「住所」という名前空間の中ではあらかじめ表を用意しておいて、あとはデータを入力するだけでいいようにしておくなどです。これは「名前空間テンプレート」と呼ばれる機能で簡単に実現できます。 | ||
- | |||
- | ページが新規作成される際、[[: | ||
- | |||
===== テンプレートファイル ===== | ===== テンプレートファイル ===== | ||
- | 以下の 2 種類のテンプレートファイルが利用可能です。 | + | 次の二種類のテンプレートファイルが利用できます。 |
- | | + | * '' |
- | * '' | + | |
テンプレートファイルを作成する方法の一例を以下に示します。 | テンプレートファイルを作成する方法の一例を以下に示します。 | ||
- | | + | * Wiki 上で、雛形として使用したい内容を持つページを適切な名前空間に保存します。 |
- | * FTP もしくは WebDAV を利用して、そのページのファイルのコピーを同じフォルダ内に作成し、'' | + | |
- | * Wiki 上で、最初に作成したページを削除します。 | + | |
===== 構文 ===== | ===== 構文 ===== | ||
- | テンプレートファイルの内容は、単純に標準の [[:ja: | + | テンプレートファイルの内容は、単純に標準の [[ja: |
==== 置換パターン ==== | ==== 置換パターン ==== | ||
- | ファイルの中では、テンプレートをほんの少し動的にするために、以下に示すようないくつかの置換パターンを使用することができます。 | + | テンプレートを多少動的にするために、ファイルの中で以下に示すようないくつかの置換パターンを使用できます。 |
^ @ID@ | 完全なページ ID | | ^ @ID@ | 完全なページ ID | | ||
行 41: | 行 34: | ||
^ @DATE@ | ^ @DATE@ | ||
- | さらに、ページの作成時刻をお好みの形式で挿入するために、[[phpfn> | + | さらに、ページの作成時刻を好きな形式で挿入するために、[[phpfn> |
+ | テンプレートファイルの中で '' | ||
- | ===== テンプレートの編集 ===== | + | ===== ウィキ経由でテンプレートを編集する |
- | '' | + | '' |
+ | (DokuWiki のフォルダ内部のファイルを編集できる人物 (通常は FTP もしくは WebDAV を利用している管理者) だけがこのファイルを編集できます。) | ||
+ | しかし | ||
+ | * 最も簡単な方法は[[ja: | ||
+ | | ||
==== シンボリックリンク経由で編集可能なテンプレート ==== | ==== シンボリックリンク経由で編集可能なテンプレート ==== | ||
- | この方法では、まず特別な名前空間にテンプレートを保存します。そしてそのファイルへのシンボリックリンクを作成することにより、テンプレートが使用できるようになります。シンボリックリンクを作成しないことにより、テンプレートを編集できないようにすることもできます。 | + | この方法では、まず特別な名前空間にテンプレートを保存します。 |
+ | そしてそのファイルへのシンボリックリンクを作成することにより、テンプレートが使用できるようになります。 | ||
+ | シンボリックリンクを作成しないことにより、テンプレートを編集できないようにすることもできます。 | ||
+ | - " | ||
+ | - この名前空間の中に、編集可能にしたい[[# | ||
+ | - 上の手順に従って '' | ||
+ | 以下の FollowSymLinks に関する注意を参照してください。))とします。これで Wiki のインターフェースから簡単に編集できるテンプレートの完成となります。 | ||
+ | |||
+ | もう一つの方法は、フォルダ内にシンボリックリンクを作成することです。 | ||
+ | そのためには、自分の名前空間内の '' | ||
+ | それ自身の名前空間内の '' | ||
+ | |||
+ | cd / | ||
+ | ln -s _template.txt template.txt | ||
+ | |||
+ | これらのソフトリンクが機能するためには、Webサーバの設定でこのディレクトリに対して FollowSymLinks オプションを設定することが必要かもしれません。 | ||
+ | |||
+ | ===== プラグイン ===== | ||
+ | |||
+ | 追加のテンプレート機能はプラグインによって実装されています: | ||
+ | * [[ja: | ||
+ | |||
+ | * [[plugin: | ||
+ | * '' | ||
+ | * '' | ||
+ | * 深い名前空間の変種、いくつかの他のテンプレート。例:'' | ||
+ | |||
+ | * [[plugin: | ||
- | - " | + | * [[plugin: |
- | - この名前空間の中に、利用できるようにしたい名前空間テンプレート用のページをそれぞれ作成します。 | + | |
- | - 上述の手順に従って '' | + | |
- | >> 私はこれとはまた異なる方法を利用しています。'' | + | ===== @GROUPS@ |
- | >> ('' | + | |
- | >> この方法では、名前空間内の他のページにアクセスして、URL 内のページ名を '' | + | |
- | >> (すなわち '' | + | |
- | >> | + | |
- | >> この方法ではシンボリックリンクを使用できます。若干異なりますが。 | + | |
- | > シンボリックリンクを使用するには、恐らく Web サーバで FollowSymLinks オプションをそのディレクトリ (ツリー) に対して設定する必要があると思いますよ。 | + | |
- | ==== すべてのユーザーが編集可能なテンプレート ==== | + | ページを作成するユーザーのグループ一覧を拡張した、'' |
+ | (例:ユーザのホームページ上のタグの設定を指定) | ||
+ | 以下のパッチが、それを実装します。 | ||
- | この方法では、編集権限を持つユーザーであれば誰からでもテンプレートファイルを編集できるようになります。 | + | <code unidiff> |
+ | Index: dokuwiki-2009-02-14/ | ||
+ | =================================================================== | ||
+ | --- dokuwiki-2009-02-14.orig/ | ||
+ | +++ dokuwiki-2009-02-14/ | ||
+ | @@ -840,6 +840,7 @@ | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | + ' | ||
+ | ' | ||
+ | ), | ||
+ | | ||
+ | @@ -855,6 +856,7 @@ | ||
+ | $_SERVER[' | ||
+ | $INFO[' | ||
+ | $INFO[' | ||
+ | + implode(" | ||
+ | $conf[' | ||
+ | ), $tpl); | ||
+ | | ||
- | - '' | + | </code> |
- | - これで、その名前空間で編集権限を持つユーザーであれば誰でも、テンプレートとしての役割を持つ " | + | |
- | * メモ: この方法には、新規のテンプレートが即座に認識されるという利点があります。これは他の方法 (ファイルの追加や DokuWiki フォルダへの手作業によるシンボリックリンク作成) では実現できません。 | + | |
+ | --- // |
ja/namespace_templates.1262057374.txt.gz · 最終更新: 2009-12-29 04:29 by kazmiya