使用法
| Table of Contents |
書式
Tagging
Format
&tag(tag[,tag[,tag[,...]]]);
Example
&tag(PukiWiki,Plugin); &tag(プラグイン);
Result
Tag: PukiWiki Plugin Tag: プラグイン
リンクは taglist プラグインへのリンクとなります。
注意: ^ と - は特別な意味を持つ文字なのでタグには使えません。ページリストの際に ^ は共通ページを(積集合 ∩ のイメージ)、- は差ページ(差集合のイメージ)をリストするのに使用します。
タグのリスト(タグクラウド)
タグのリストアップには tagclould プラグインを使用します。
Format
#tagcloud([オプション])
オプション
- limit=数字
- 表示最大件数の指定。デフォルトは全て。
- related=タグ名
- 関連タグのみを表示。デフォルトは全て。
- cloud=off
- タグクラウド表示ではなく、ただのリスト。デフォルトはタグクラウド表示
Example
#tagcloud(related=PukiWiki)
#tagcloud(related=PukiWiki,cloud=off)
タグ付きページのリスト
タグ付きページのリストを表示するには taglist プラグインを使用します*1。
書式
#taglist([オプション])
デフォルトでは、全てのタグとタグ付けられたページをリストアップします。旧書式の #taglist(タグトークン[,オプション])書式も残してあります。
オプション
- tag=タグトークン
- タグ付けられたページをリスト。タグトークンを使用可能。
- タグトークンとは、タグ名と ^、- で構成される文字列。タグ1^タグ2 とすることで、共通ページを(積集合 ∩ のイメージ)、タグ1-タグ2 とすることで差ページ(差集合のイメージ)の意味となる。
- related=タグ
- 関連タグに限定して、タグとタグ付けられたページをリストアップ。
Example
#taglist(tag=Plugin-Old) #taglist(Plugin-Old)
- Hack/navi.inc.php
- Manual/Plugin/tag.inc.php/dev
- Manual/Plugin/tag.inc.php/rev183
- Manual/Plugin/tag.inc.php/rev184
- Manual/Plugin/tag.inc.php/rev201
- Manual/Plugin/tag.inc.php/rev563
- Plugin/dump2html.inc.php
- Plugin/lsx.inc.php
- Plugin/popularx.inc.php
- Plugin/splitbody.inc.php
- Plugin/statichtml.inc.php
- Plugin/tag.inc.php
- Plugin/votex.inc.php
- Weblog/2008-10-23
#taglist(related=Plugin)
Configuration
タグクラウド CSS
タグクラウド機能を使用するなら以下の CSS をスキンに追加してください。
FAQ
タグ付け時に何も表示してほしくない
Plugin/enull.inc.php を使用してください。
ページを削除してもタグは消えない?
PukiWiki の仕組み上、プラグインはページ参照時にしか起動できないためページが削除されてしまうとタグを更新できません。 ページを削除する前に &tag(); としてタグの削除をしてください。 もしくは、アクション型プラグインとして index.php?cmd=tag のようにアクセスするとキャッシュをクリーンアップできます。
PukiWiki 本体改造で乗りきる方法も用意してみました*2。 pukiwiki/lib/file.php の編集をします。 page_write 関数の末尾に
log_write('update',$page);
+ if (exist_plugin('tag')) {
+ do_plugin_init('tag');
+ plugin_tag_write_after($page, $postdata, $notimestamp);
+ }
のように追加。あまりテストはしてません。
ページをリネームしても・・・
同様です。
rename プラグイン改造で乗りきる方法も用意してみました*3。 plugin_rename_proceed 関数に、以下を追加します。
links_update($old);
links_update($new);
}
}
+ if (exist_plugin('tag')) {
+ do_plugin_init('tag');
+ plugin_tag_rename_plugin($pages);
+ }
$postdata = get_source(PLUGIN_RENAME_LOGPAGE);
$postdata[] = '*' . $now . "\n";
あまりテストはしてません。
タグの置換はどうすれば
replaceplugin.inc.php を使用してみてください。
置換後、アクション型プラグインとして tag プラグインを起動し、タグキャッシュをクリーンアップしてください。
lsx プラグインの豊富な機能を使用したい
lsx.inc.php プラグインでも、
#lsx(tag=タグトークン)
のようにタグ付けされたページのリストができます。sort、contents、include など豊富な機能が使用可能です。
タグクラウドやタグ付け時に表示されるリンクのリンク先を lsx に変えたい場合は、tag.inc.php を開いて、
-$conf['listcmd'] = get_script_uri() . '?cmd=taglist&tag='; +$conf['listcmd'] = get_script_uri() . '?cmd=lsx&tag=';
のように変更します。デフォルトで lsx の linkstr=title オプションを指定したい、などということがなければ、taglist のままで良いかと思います。
将来的には lsx と taglist は共通のライブラリを利用して同様の機能を使用できるようになる予定です。



