サイト設定用プラグインでは、Wiki の管理者が、その Wiki の設定を簡単に変更することができます。設定の変更は、オンラインでお気に入りの Web ブラウザから快適に行うことができます。このプラグインでは DokuWiki の基本的な設定およびその他の設定、そしてインストール済みのプラグインと現在使用しているテンプレートの設定を管理します。
このプラグインは DokuWiki に同梱されており、別途インストールする必要はありません。サイト設定は管理画面からアクセスできます (スーパーユーザーとしてログインし、「管理」ボタンをクリックし、「サイト設定」を選択してください)。
各設定項目は、その現在の状態をわかりやすくするため、異なる背景色で表示されます。青い背景はデフォルト値 (conf/dokuwiki.php) であり、例えばその設定値がユーザーから変更されていないことを示すために使用されます。白い背景はローカルで変更された値 (conf/local.php) であることを示します。薄い赤の背景は保護された設定 (conf/local.protected.php) であり、変更できない値であることを示します。
変更された設定を保存する際、このプラグインはまず現在のローカル設定ファイル (conf/local.php) を conf/local.php.bak ファイルにコピーし、その後更新された設定を conf/local.php ファイルに保存します。このプラグインでは conf/dokuwiki.php に保存されているデフォルト設定には一切変更を加えませんが、DokuWiki の設定で説明されているように conf/local.php ファイル内のすべての設定はデフォルト設定を上書きします。
このプラグインは、設定を更新する際に以下のような行を conf/local.php ファイルの一番上に追加します。
/* * DokuWiki's Main Configuration File - Local Settings * Auto-generated by config plugin * Run for user: <username> * Date: <current date/time, rfc 2822 format (day, dd MMM YYYY hh:mm:ss TZ)> */
特定の設定項目を conf/local.protected.php ファイルの中に置くことにより、その設定項目を保護することができます。
デフォルトでは、DokuWiki は以下の順番で設定ファイルを読み込みます。
conf/dokuwiki.phpconf/local.phpconf/local.protected.php
このようにすることで、conf/dokuwiki.php と conf/local.php で前もって設定された値が conf/local.protected.php の保護された設定値で上書きされることを保証しています。conf/local.protected.php に含まれる設定は、保護状態にあることを示すためサイト設定用プラグイン上では薄い赤で囲まれて表示されます。保護された設定値の変更は無効化されます。
なお、2009-02-14 以降にリリースされた DokuWiki では、設定ファイルの読み込み順はグローバル変数 $config_cascade で制御されています。2008-05-05 までは、このプラグインでは conf/local.php ファイルの末尾に以下のような行を追加することで conf/local.protected.php を読み込むようにしていました。
@include(DOKU_CONF.'local.protected.php');
設定データを保存できるようにするには、conf/local.php および conf/local.php.bak ファイルのパーミッションが Web サーバから書き込み可能となっている必要があります。設定用の conf ディレクトリ自身についても同様のパーミッションが必要です。様々なシステムでのファイルのパーミッションの設定方法については、ファイルのパーミッション設定を参照してください。
プラグインが設定ファイルに書き込めないことを検知した場合は、ページの上部に以下のようなメッセージボックスが表示されます。
『設定用ファイルを更新できません。もし意図して変更不可にしているのでなければ、 ローカル設定ファイルの名前と権限を確認して下さい。』
このエラーが発生した場合は、「保存」ボタンが表示されなくなります。
ソースコードは、Git から取得できます。
バグや機能の要望などは、DokuWiki のバグトラッカーに投稿してください。
英語版のページを参照してください。