この覚書は 2009 年前半に DokuWiki Release 2008-05-05 および Release 2009-02-14 を導入したときに書き始めたもので、その後ときどき加筆しています。
検索のためのインデックス作成は、日本語では一文字単位になってしまい、文字列を普通に検索すると、個々の文字の「or 検索」になってしまう。検索文字列をダブルクォーテーションで囲む ことで文字列(フレーズ)を検索してくれるようだ。
検索結果からページに移動すると、ヒットした検索文字列がハイライトされている。
ページ右下の「索引」ボタンで、記事一覧を表示。
見出しごとにアンカーが作成されるが、そのラベルが見出しの内容になり、日本語の場合は日本語になる。
編集ウィンドウの下に「サマリーを編集」という入力欄が表示されるが、この内容は本文に保存されるのではなく、RSS や差分につける要約となる。
ページの削除 を行うには、該当ページの編集画面で内容を全部消してから保存する。
書きかけの項目は一時保存されるので、細かく保存する必要はない。
デフォルト状態では誰でもユーザー登録ができる。そのユーザーにどのような権限を与えるかは管理者が設定。
ユーザー登録すると、登録に使用したメールアドレスにパスワードが送付される。
画像などのメディアファイルをアップロードしたとき、各ページのソースファイルとは別のフォルダに、カテゴリごとに分けて格納される。画像に IPTC 情報などがあれば、detail.php で画像の詳細表示をする際に、指定されている項目が表示される。また、アップロード後にメディアマネージャから画像にタイトルや説明を付加した場合は、画像ファイルの IPTC 情報としてファイル内に保存される。
メッセージなどの日本語対応ファイルは inc/lang/ja/ にある。必要なら変更を加える。「txt」や「php」の拡張子のファイルはアップロードできない。
初期設定では、ページが編集された後、一定時間が経過しないとサーチエンジンの検索対象にならないよう、編集直後は「<meta name=“robots” content=“noindex,nofollow” />」となっている。この時間設定は、管理画面の「サイト設定」-「スパム対策」の インデックスを許可(何秒後) の数値による。初期値は「60*60*24*5」。
-
-
-
-
このスクリプトを DokuWiki を設置したい場所にアップロードして、スクリプトを走らせると、DokuWiki の配布ファイル(tarball)をサーバーにダウンロードし、ファイルを解凍し、インストーラの起動までが自動で行われる。現在このスクリプトが取ってくるのは 2009-02-14 のバージョンだが、バージョンが上がればダウンロードスクリプトも対応されるだろうし、そうでなくてもスクリプトの最初の $VERSION のところを変更すればよい。
実際に別の場所でやってみましたが、すべてが非常に迅速に完了しました。
PHP が
CGI モードで動いている場合はパーミッションの問題がないが、Apache Handler で処理される mod_php だと手作業でディレクトリのパーミッションを変更する必要が出てくる(「書き込み処理ができませんでした」という内容のエラーになる)ことがある。
URL をカスタマイズしてリンクから doku.php を消すのは、.htaccess で mod_rewrite が使える環境であれば、附属の .htaccess.dist のいちばん下にある一群の RewriteRule をそのまま使うと簡単にできる。 (だいぶ上にある RewriteEngine on も必要。)
有志の尽力による
日本語マニュアル もあります。(全部は日本語化されてませんが。)
ファイル群をアップロードした場合、その後に install.php を起動して各種設定を行うが、このときファイルに改変が加えられているとエラーになるので注意。(アップロードする前にローカルで動作させないこと。)
表示などを日本語にするのはインストール後でも、「管理 (Admin)」-「サイト設定 (Configration Settings)」から設定できる。(設定画面の上から 3 つめを「ja」に設定。)
「サイト設定」の言語指定は、それぞれのページのヘッダ情報の言語にも反映される。
デフォルト(Default テンプレートをそのまま使用)では、ページ下部に各種リンク(リンク画像つき)がある。この設定は lib/tpl/default/ の footer.html にあるので必要に応じて編集する。
Creative Commons のライセンス種別はいろいろあるので、選択を確認する。
サーバーが使用者の生活圏と違う地域にある場合は、
Setting TimeZone に従って、タイムスタンプの標準時の設定をして時間を合わせる。conf ディレクトリに local.protected.php という次のような内容のファイルを作成。local.php が管理設定の変更で書き換わっても変更されないよう、別ファイルにすることになっている。
<?php
//putenv("TZ=Asia/Tokyo"); // for PHP4
date_default_timezone_set("Asia/Tokyo");
?>
この関連のファイルは lib/tpl の下の使用中のスタイル名のディレクトリにある。インストール直後は lib/tpl/default/ 直下。
main.php – すべてのページで読み込む基本的な要素についての設定。
mediamanager.php – 「イメージやファイルの追加」ボタンをクリックしたときに表示されるページの内容。
footer.html – すべてのページに共通のフッタの内容の設定。
スタイルについては lib/tpl ディレクトリの下の使用中のスタイルの
CSS ファイルを直接編集する。(最初からあるのは default スタイルなので、これを別名で保存して初期状態のコピーを確保してから編集するか、別名で保存したコピーを編集する。)
lib/tpl の style.ini では、どのスタイルシートファイルをどの場合に使用するか、という設定と、さまざまな部分に共通に使うベース色が設定されている。(基本の色設定はここで行うほうが
CSS ファイルが簡潔になる。)
RewriteRule (.*) index.php?id=$1 [QSA,L]
#RewriteRule ^index.php$ doku.php
* ファイル内で doku.php に言及している部分を index.php に変更する。
* inc ディレクトリの common.php および init.php でそれぞれ1か所ずつ、doku.php を index.php に変更。
「管理」-「サイト設定」で「スタートページ名」を「index」にする。
これに該当するデータファイルは data/pages/ の index.txt になる。(ダウンロードしてローカルで編集できる。)
この変更で各ディレクトリ内でファイル名指定がない場合に表示されるファイルが index.txt になる。
DokuWiki 本体に付属の各国語インタフェースの用語は inc/lang/ にある。日本語のインタフェースをカスタマイズするには、この中の ja フォルダにあるファイルを編集する。実際に動かして表示される文字列で Grep をかけると変更すべき箇所が探しやすい。
プラグインの日本語インタフェースは lib/plugins/ のそれぞれのプラグインフォルダ内の lang フォルダにある。これも同じようにカスタマイズできる。
このセクションは運用状況に応じて更新します。
編集履歴は各ファイルごとに履歴フォルダに txt.gz で(ファイル形式は「管理」から変更可)逐次保存される。その結果差分ファイルの数はたいへん多くなる。
記事作成によりインデックスファイルがどんどん生成される(内容未確認)。
ブラウザのバージョンや設定によっては、編集ウィンドウの上の「簡単タグ挿入ボタン」が表示されないことがある。
ファイルのリネームについて
データファイルを作成しておいてアップロードし、読み込ませることも、まったく問題ない。 これはじつはすごく便利だったりするかも。
WinSCP でサーバーとつなぎ、ファイルの Edit を実行してローカルのテンポラリにダウンロード、これをローカルのテキストエディタで編集して保存すると、保存するごとに自動的にサーバーにミラーリングされる。その後、そのページを読み込むとちゃんとアップデートされている。ただし、この方法だとファイルロックその他、オンライン編集の各種機能が働かないので注意。
ページの雛形を使う機能もある。ページ作成時に同じカテゴリにある「_templtate.txt」というファイルが雛形として使用される。
Wiki 全体の表示スタイルを変更するには、
テンプレートの配布 から好みのものをダウンロードして、lib/tpl/ の下に入れ、「管理」画面で目的のものを選択する。
データベース不要で、そのわりに処理速度は速いらしい。データは記事ごとのテキストファイル。
データのバックアップには、/data/pages/ および /data/media/ の内容をコピーしておけばよいので、シンプル。
編集用の「見出し」や「リスト」タグ自動入力ボタンが期待以上に便利。
あらかじめ記法にそったテキストファイルを作成して、それをアップロードすることでも、記事が追加できる。
ファイル名を英数半角にしつつ、記事タイトルを日本語にし、かつ、記事一覧でもこの日本語を表示させることが、useheader 設定により可能。
ページ内のセクションごとの編集ができる。
ページの右上に表示される「目次」(
TOC) はなかなか便利。
カテゴリ分類ができる ― 「カテゴリ:項目」という書式を使う。この「:」はリンク上では「/」と表示するように設定することも可。
カテゴリはファイル上でもディレクトリに分けて格納されるので、わかりやすい。
カテゴリごと、あるいは、ページごとに、ユーザー権限の設定ができる。すなわち、カテゴリごと、ページごとに、各グループ(一般、登録ユーザー、名前をつけたグループ、管理者)がそれぞれ、どこまで許可されるのかが、細かく設定できるので、公開しないセクションやページを混在させられる。
ページの左上に「現在位置」を表示できるのが好み。(「サイト設定」で表示を選択)
デフォルトでは左上に「トレース」が表示されている。これは移動履歴の表示。これも便利かも。