Blog Plugin
本サイトは、原則として記事をWiki的に分類していく形式で追加しているが、それでもメモなどを残す場合はBlog形式は便利である。
Dokuwikiには様々なBlog系のPluginがあるが、私の場合、結局このBlog Pluginに落ち着いた。よほどの事がない限り、もう変える事はないだろうと思う。
Blogを設置する際には、tips of blogging with Dokuwikiも参考になるので、参照すると良い。
なお、BlogにしてもBlikiにしても、名前空間を一気に汚染していくので、名前空間をsidebar等に表示している人は注意が必要。
設定
「管理」→「サイト設定」→「blogプラグイン」から、以下の設定を行う
Menu | key | value | memo |
---|---|---|---|
Blog Plug-In | |||
default namespace for blog | blog | ||
position of the new entry form | top | ||
prefix date to new entry IDs | %Y:%m%d_ | Yearを名前空間に使う | |
sort blog entries by | creation date | ||
sort order | descending | ||
exclude certain pages from blog listing | !^blog:\d{4}(:\d{2})?$! | regular expression |
Blogを設置
Blogプラグインには、Blogを作成する機能と、Blogのアーカイブ機能がある。
Blogのアーカイブ機能は、記事の管理とタイトル・タグなどの情報の表示機能がある。
Blog
Blogを設置するには、以下の各種設定を行う必要がある。
詳しい説明は、blog plugin pageを参照のこと。
- blogを設置するときの名前空間を決める
- 今回は、名前空間をblog:fooとする。何もしなければ、名前空間は
blog
になる。
- blogを設置するページを作成する
- 本文に記載した内容は、そのまま表示される。
- 本文中に、以下の行を記載する
{{blog>blog:foo?5&firstseconly&noeditbtn}}
blog>
でblog pluginを呼び出すblog:foo
で、blogの名前空間を定義する。ここを定義しない場合、blogとなる。?5
で1ページに表示される過去のblog記事を決める。- この例の場合、5記事
&
以下にinclude pluginのオプションを記載する。- この例の場合、記事の「最初のセクションだけを表示(firstseconly)」と「編集ボタンを表示しない(noeditbtn)」を設定している。
- 詳しくはinclude plugin flagを参照のこと
- これで、
blog:foo
にBlogが設置される。
Blogのアーカイブ
Blogのアーカイブ機能は、以下の2つ
- ある時点までの過去記事の管理機能 (archive)
- 過去記事全ての管理機能(autoarchive)
個人的には、autoarchiveの方が好みなので、そちらだけ。
- 過去記事ページを作成する (べつにblogのページでも良いが、それなりに増えてくるとごちゃごちゃしてくるので)
- 本文に以下を記述
{{autoarchive>blog:foo]}}
autoarchive>
でautoarchive pluginを呼び出すblog:foo
で、blogの名前空間を定義する。ここを定義しない場合、blogとなる。
- これで、過去記事ページが出来上がる
使ってみれば判ることが、autoarchiveは
YYYY: month month month month month
の形式で過去記事のページへとリンクを張り、下部にページタイトルなどを表示する。
なお、autoarchiveやarchiveはpagelistプラグインを利用するので、必要に応じて設定をしておくこと。
特にautoarchiveはpagelist flagを指定できない(できるのか?)ので、pagelistプラグインの設定に注意しないと個人情報が表示される可能性がある
blog の保存するファイル
投稿した記事はdokuwiki-dir/data/pages/[namespace]/[prefix date to new entry IDs][入力文字列].txtというファイルになる。 例えば、
prefix date to new entry IDs | %Y:%m%d_ |
blogの名前空間 | blog:foo |
入力文字列 | today |
日付 | 2009/06/01 |
ならば、ファイル名は、dokuwiki-dir/data/pages/blog/foo/2009/0601_todayとなる。
(prefix date to new entry IDsの末尾に “_” を置いているのがミソ)
入力文字列にascii以外の文字を入力すると、UTF-8でエンコードされるため、ファイル名が読みにくくなる弱点がある。
なお、画像ファイルなどは、dokuwiki-dir/data/media/blog/foo/[ファイル転送時の入力ファイル名]になった。
このとき、このファイルの時間(mtime)が変わると、表示順序に影響を与える可能性がある。 従って、一度投稿した記事はその後変更しない方がよいというのが、blog pluginの弱点ではないかとおもう。
この点はBlikiの方が良い挙動を示す気がする。