ja:devel:templates
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
ja:devel:templates [2008-11-18 09:30] – Include Hooks 更新 118.105.223.245 | ja:devel:templates [2010-03-14 05:25] (現在) – 222.11.220.47 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== DokuWiki テンプレート開発 ====== | ||
+ | |||
+ | [[ja: | ||
+ | |||
+ | ===== 始めましょう ===== | ||
+ | テンプレートを新しく作成する最も簡単な方法は、既存のテンプレートを起点とすることです。デフォルトのテンプレートを使うのはよい考えです。きれいな上に DokuWiki テンプレートの標準に倣っているからです。テンプレート名(ディレクトリ)は小文字で、" | ||
+ | " | ||
+ | |||
+ | - '' | ||
+ | - 設定マネージャーで新しいテンプレートを選択します | ||
+ | - そしてテンプレートファイルの中身を見ます ([[# | ||
+ | - [[ja: | ||
+ | - 構成設定の扱いは[[common_plugin_functions|プラグイン]]と似ています。カスタムテンプレート設定を取得するには '' | ||
+ | |||
+ | |||
+ | ===== ディレクトリ配置 ===== | ||
+ | テンプレートは以下のディレクトリ構造に倣うべきです(すべてのパスはテンプレートディレクトリから相対的です)。 CSS ファイルは '' | ||
+ | |||
+ | * ''< | ||
+ | * ''< | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * ''< | ||
+ | * ''< | ||
+ | * '' | ||
+ | |||
+ | ===== 関数 ===== | ||
+ | |||
+ | 利用できる関数のリストは [[http:// | ||
+ | |||
+ | ==== tpl_content() ==== | ||
+ | この関数はページの本文、言い換えれば [[ja:TOC]] を含むあなたの Wiki のページのコンテンツを出力します。 | ||
+ | この関数を呼ぶ際に引数として '' | ||
+ | |||
+ | <code php> | ||
+ | tpl_content(false); | ||
+ | </ | ||
+ | |||
+ | これは、TOC をコンテンツから分離して画面のどこか違うところに置きたいときに、使うことができます。 | ||
+ | さらなる詳細は '' | ||
+ | |||
+ | ==== tpl_toc() ==== | ||
+ | |||
+ | デフォルトでは '' | ||
+ | これを使用するときは、'' | ||
+ | |||
+ | **例:** | ||
+ | |||
+ | <code php> | ||
+ | <div id=" | ||
+ | <?php tpl_content(false)?> | ||
+ | </ | ||
+ | |||
+ | <div id=" | ||
+ | <?php tpl_toc()?> | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | 古いリビジョンやプレビューではメタデータが使えないので、これらの場合には '' | ||
+ | [[environment# | ||
+ | もしあなたのテンプレートのレイアウトでこの順序で呼び出せない場合は、この問題を回避するために出力バッファリングを使うとよいでしょう。 | ||
+ | |||
+ | **例:** | ||
+ | |||
+ | <code php> | ||
+ | <?php | ||
+ | // あとで使うためにバッファー中にコンテンツを生成 | ||
+ | ob_start(); | ||
+ | tpl_content(false); | ||
+ | $buffer = ob_get_clean(); | ||
+ | ?> | ||
+ | |||
+ | <div id=" | ||
+ | <?php tpl_toc()?> | ||
+ | </ | ||
+ | |||
+ | <div id=" | ||
+ | <?php echo $buffer?> | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== tpl_getConf() ==== | ||
+ | この関数はテンプレートの中から[[configuration|構成設定]]にアクセスするために使用されます。 | ||
+ | |||
+ | ===== グローバル変数と定数 ===== | ||
+ | 便利なグローバル変数と定数の完全なリストは[[environment|環境]]のページを参照してください。 | ||
+ | |||
+ | ===== 自動管理 ===== | ||
+ | |||
+ | デフォルトテンプレートの [[devel: | ||
+ | |||
+ | ===== 挿入フック ===== | ||
+ | |||
+ | 挿入フックは、独自の[[ja: | ||
+ | |||
+ | DokuWiki のデフォルトのテンプレートは、ページを表示する際、'' | ||
+ | |||
+ | __PHP 開発者のためのヒント__: これらのファイルの中に PHP を含むことも可能です。 | ||
+ | |||
+ | ==== 利用可能なフック ==== | ||
+ | |||
+ | これらのファイルはすべて '' | ||
+ | |||
+ | ^ ファイル名 | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | |||
+ | DokuWiki には、いくつかのボタンと、CC ライセンスの RDF 記述を含んだ '' | ||