DokuWikiはページ名を自分でつけなければページを作成できず、自分でリンクを作らないとそのページに移動できません。ちょっとしたブログやメモ書きをする時にこの2つの作業は手間だったのでプラグインとJavaScriptにより自動化を試してみました。
サイト設定で「HTMLの埋め込み」を有効にした状態で任意の名前空間のページに下記のJavaScriptをページに記述します。コードの【1】と【2】は各自の環境や好みに変更が必要です(後述)。
「新規ページ作成」というボタンを押すと日付ベースのページIDを作成し編集ページに移動します。
<html> <script> function newpage(){ //メモを書きたい名前空間のURL・・・【1】 var base='http://www.example.com/dokuwiki/wiki/'; //日時を取得 var nowTime=new Date(); var yyyy = nowTime.getFullYear(); var mm = ("0"+(nowTime.getMonth()+1)).slice(-2); var dd = ("0"+(nowTime.getDate())).slice(-2); var hh = ("0"+(nowTime.getHours())).slice(-2); var nn = ("0"+(nowTime.getMinutes())).slice(-2); var ss = ("0"+(nowTime.getSeconds())).slice(-2); //編集ページ名「ベースURLyyyy-mm-dd-hhnnss?do=edit」・・・【2】 location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'?do=edit'; } </script> <input type="button" name="link" value="新規ページ作成" onclick="newpage()"> </html>
変更箇所
「DokuWikiの設置URL」やサイト設定の「URLの書き換え」「名前空間の区切り」の状態によって【1】と【2】の部分は変更が必要です。
URLの書き換えや名前空間の区切りを変更していない場合
(1) | var base='http://www.example.com/dokuwiki/doku.php?id=wiki:'; |
---|---|
(2) | location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'&do=edit'; |
URLの書き換えを「dokuwikiによる設定」にして名前空間の区切りを変更していない場合
(1) | var base='http://www.example.com/dokuwiki/doku.php/wiki:'; |
---|---|
(2) | location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'?do=edit'; |
URLの書き換えを変更せず名前空間の区切りを「/」にしている場合
(1) | var base='http://www.example.com/dokuwiki/doku.php?id=wiki/'; |
---|---|
(2) | location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'&do=edit'; |
URLの書き換えを「dokuwikiによる設定」にして名前空間の区切り「/」にしている場合
(1) | var base='http://www.example.com/dokuwiki/doku.php/wiki/'; |
---|---|
(2) | location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'?do=edit'; |
URLの書き換えを「.htaccess」にして名前空間の区切り「/」にしている場合
(1) | var base='http://www.example.com/dokuwiki/wiki/'; |
---|---|
(2) | location.href = base+yyyy+'-'+mm+'-'+dd+'-'+hh+nn+ss+'?do=edit'; |
nspagesプラグインをインストールして、ページ中に下記のコードを記述します。表示オプションはnspagesプラグインを利用できます。
<nspages>
自分用の備忘録・メモ書きなど簡単に書き残したい時にはかなり便利になると思います。(もう少しnspagesプラグインの表示方法が色々変更できたり装飾できるとメインページでも使用できるのになー)
ページ名を自分で決めたい場合は Add New Page Plugin を使うと良いかもしれません(未検証)