【DokuWiki】 Bootstrap3 Templateのタイトルをかっこよく編集する
Posted in php, blog on November 4, 2020 by Henk Verlinde ‐ 1 min read
はじめに
自分が運用している DokuWiki サイト(Bootstrap3 Template)がインデックスされるときに 【dokuwiki [タイトル]】と表示されるのは他とかぶってダサいし見づらい。 以下にバージョン【v2018-02-16】でのタイトルを変更してみた。 追記【v2019-05-22】での変更方法も挙げておきます。
サイト設定から修正する
Bootstrap3 Template を使うと管理画面から tpl»bootstrap3»browserTitle 【@TITLE@-@WIKI@】 を設定すると 【dokuwiki-タイトル】に修正できる ただこの方法だけだと名前空間を使用していた場合 【dokuwiki-first:second:third】と表示されてさらにダサくなる
ソースを修正する
以下のファイルを修正する 【dokuwiki フォルダ】/lib/tpl/bootstrap3/tpl_functions.php
18 行目あたり
include_once(dirname(__FILE__) . '/inc/simple_html_dom.php');
以下に修正する
include_once(dirname(__FILE__) . '/inc/parserutils.php');
include_once(dirname(__FILE__) . '/inc/simple_html_dom.php');
1308 行目あたり
return str_replace(array('@WIKI@', '@TITLE@'),
array(strip_tags($conf['title']), $browser_title),
bootstrap3_conf('browserTitle'));
以下に修正する
$browser_title = p_get_metadata($ID,$key='title');
return str_replace(array('@WIKI@', '@TITLE@'),
array(strip_tags($conf['title']), $browser_title),
bootstrap3_conf('browserTitle'));
getBrowserPageTitle 関数の戻り値がそのまま Dokuwiki ページのタイトルとなる。
以上の変更で、ページの metadate から見出しを引っ張ってそのまま$browser_title を上書いてあげれば見出しがそのままタイトルとなる。つまり 【===== 見出し ======】 こういう見出しをページに設定していた場合 【dokuwiki-見出し】となる
注意しなければならないのは見出しを設定しないと dokuwiki- となってしまう 以上。
v2019-05-22 での対応方法 最近バージョンが上がったため、ソースの編集方法を変えてあげなければならなくなった。 と言ってもより簡単になったので、上の記載内容ができる人だったら問題にならないだろう。
【/lib/tpl/bootstrap3/Template.php】の 1308 に以下を追加してあげればいいだけだ。
$browser_title = p_get_metadata($ID,$key='title');