Web

DokuWiki の Tips

投稿日:2018年11月19日 更新日:

DokuWiki の設定やカスタマイズなどの細かい Tips をここにまとめておきます。

きれいな URL にする

DokuWiki は、デフォルトのままだと以下のようなURLになります。

https://example.com/doku.php?id=foo

これではカッコ悪いので、以下のような URLになるように修正します。

https://example.com/foo

手順

(1) [管理者メニュー] – [サイト設定] ページを開きます。

(2) [高度な設定] – [URLの書き換え] のところで、「.htaccess」を選択します。

(3) すぐ下の [URL上の名前空間の区切りにスラッシュを使用] にチェックを入れます。

これをチェックしないと、コロンで区切られます。

(4) ページの最下部にある [保存] ボタンを押して、設定変更を保存します。

(5) ウェブサーバー上の DokuWiki サイトのディレクトリ最上位にある .htaccess ファイルに以下の記述を追加します。

RewriteEngine on

RewriteRule ^_media/(.*)              lib/exe/fetch.php?media=$1  [QSA,L]
RewriteRule ^_detail/(.*)             lib/exe/detail.php?media=$1  [QSA,L]
RewriteRule ^_export/([^/]+)/(.*)     doku.php?do=export_$1&id=$2  [QSA,L]
RewriteRule ^$                        doku.php  [L]
RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteRule (.*)                      doku.php?id=$1  [QSA,L]
RewriteRule ^index.php$               doku.php

書き換える手段は、FTPクライアントでも何でも構いません。

この記述は、DokuWiki に付属している .htaccess ファイルに、コメントアウトされた状態で記述されているかもしれません。その場合は、各行頭の # を削除するだけで良いです。

※ (5) は、Webサーバーとして Apache か LiteSpeed が使われている場合の手順になります。nginx や IIS を使っている場合は、ja:rewrite [DokuWiki] を参照してください。

参考

DokuWiki に付属している .htaccess ファイル

最初は .htaccess.dist というファイル名になっていますが、このファイルを使う場合は末尾の “.dist” を削除しておきます。

デザインを変える

デザインを変えるには、自分用のテンプレートを用意して利用するのがお勧めです。安全ですし、自由度も高いからです。

自分用のテンプレートを用意するための一番ラクな方法は、デフォルトのテンプレートをコピーすることです。

手順

(1) デフォルトのテンプレートである lib/tpl/default ディレクトリを lib/tpl/yourname へコピーします.

  • yourname のところは、何か適当なディレクトリ名(テンプレート名)を指定して下さい。

(2) [管理者メニュー] – [サイト設定] を開きます。

(3) [基本] – [テンプレート] のところで、先程作ったテンプレート(ディレクトリ)を選択します。

あとは、テンプレートディレクトリ内を好きに改造します。

参考

ファビコンを変更する(ファイル名や拡張子を変更する場合)

DokuWiki でのファビコンのファイル名は、デフォルトでは favicon.ico になっています。

これを、例えば favicon.png に変更したい場合の方法を説明します。

※ デフォルトテンプレートに対する変更方法になりますが、他のテンプレートでも考え方は適用できるはずです。

手順

(1) 使用中のテンプレートの images フォルダに favicon.png ファイルを配置します。

(2) テンプレート内の3つのファイル detail.php, main.php, mediamanager.php において、以下の箇所を編集します。

※ この3つのファイルとは、「headタグを出力しているファイル」になります。

変更前

<?php echo tpl_favicon(array('favicon', 'mobile')) ?>

変更後

<?php echo tpl_favicon(array('mobile')) ?>
<link rel="shortcut icon" href="<?php echo tpl_getMediaFile(array('images/favicon.png')) ?>" />

※ favicon の行の出力を、tpl_favicon() 関数に任せず、自分で <link> タグを記述するように変更しています。
tpl_getMediaFile() 関数に、「テンプレートディレクトリから画像ファイルまでの相対パス」を配列に入れて渡すとURLを返してくれます。

外部リンクを別ウィンドウで開く

DokuWiki では、デフォルトのままだと記述したリンクは全て「現在のタブ」で開くようになっています。

これを「外部へのリンクは別ウィンドウで開く」ように設定変更します。

手順

(1) [管理者メニュー] – [サイト設定] を開きます。

(2) [リンク] – [外部リンクの表示先] に、”_blank” をセットします。

[外部リンクの表示先] に、"_blank" をセットします
[外部リンクの表示先] に、"_blank" をセットします

ページ名に日本語は使わないほうが良い(使うなら簡潔に!)

ページ名に日本語を使うと、その日本語を Base64 でエンコードした文字列がファイル名になります。この仕様自体に問題はありません。ただ、日本語が Base64 でエンコードされると、かなり文字列が長くなるため、例えば Windows のファイル名としての上限の長さを超えやすくなります。こうなると、FTP でこのファイルをダウンロードしようとしてもエラーが起きてしまいます。そのため、ページ名はなるべく英語にするとよいです。もしくは日本語を使うなら、なるべく短くしましょう。

ページへのリンクを以下のように書けば、「本来のページ名(英語)」と「表題(日本語)」を分けることもできます。

[[英語名|日本語名]]

注意点

Windows の場合、ファイル名の長さは 最大で半角255文字となっていますが、気を付けなければいけないのはこれだけではありません。
ファイル名を含む パスの長さ は、半角260文字 までという制限もあります。ファイルをダウンロードした結果のファイルパスの長さがこれを超える場合も FTP でエラーになります。

参考

📂-Web

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Chrome

Chrome の通信ログ(TCP/IPも含む)を記録する

Chrome の通信ログ(TCP/IPも含む)を記録する方法を紹介します。

プライバシー

ウェブブラウザの DNT (Do Not Track) を有効にする方法

目次1. Do Not Track とは?2. トラッキングを拒否する意思を送信する手順Chrome の場合Firefox の場合Microsoft Edge の場合Internet Explorer …

Glitch

Glitch プロジェクトの .git ディレクトリ・サイズを小さくしました

Glitch プロジェクトの .git ディレクトリ・サイズを小さくしました。そのときの作業内容を紹介します。

Web Vitals

Google Fonts がフォントファイルを読み込む様子を観察する

Google Fonts がフォントファイルを読み込む様子を観察します。

Web

AMP に関する情報

AMP 本来の目的からずれているように見える。この機能は必要?