====== Loadskin プラグイン ====== ---- plugin ---- description: スキン・テンプレート・テーマを変更します。管理者によるページ・名前空間毎のテンプレート選択、またはユーザーによる Wiki 全体のテンプレート選択が可能です。 author : Anika Henke (previous author: Michael Klier) email : anika@selfthinker.org type : action admin helper lastupdate : 2016-04-07 compatible : Ponder Stibbons, Weatherwax, Adora Belle, Angua, 2011-05-25 "Rincewind", 2010-11-07 "Anteater", 2009-12-25 "Lemming", 2009-02-14, 2008-05-05, Binky, "Ponder Stibbons", Hrun, Detritus depends : conflicts : similar : tags : template, skin, theme downloadurl: https://github.com/selfthinker/dokuwiki-plugin-loadskin/tarball/master bugtracker : https://github.com/selfthinker/dokuwiki-plugin-loadskin/issues sourcerepo : https://github.com/selfthinker/dokuwiki-plugin-loadskin/ ---- ===== ダウンロードとインストール ===== [[ja:plugin:plugin|プラグイン管理]]と上記 URL を使用してプラグインをダウンロード・インストールします。 手動でプラグインをインストールする方法は[[ja:plugins|プラグイン]]を参照してください。 **:!: 重要 :!:** DokuWiki が Angua 版より古い場合、利用しているテンプレートが古い場合((例:テンプレートのコードに ''DOKU_TPL'' ''DOKU_TPLINC'' 定数が含まれている場合))、DokuWiki のソースコードに以下の小さな変更を行う必要があります。 そうしないと、部分的に(または完全に)空白のページを取得する可能性があります。 ''/inc/init.php'' 内の以下の行を削除(またはコメント化)する: // DEPRECATED, use tpl_basedir() instead if(!defined('DOKU_TPL')) define('DOKU_TPL', DOKU_BASE.'lib/tpl/'.$conf['template'].'/'); // DEPRECATED, use tpl_incdir() instead if(!defined('DOKU_TPLINC')) define('DOKU_TPLINC', DOKU_INC.'lib/tpl/'.$conf['template'].'/'); テンプレートの修正は簡単です。 全ての ''DOKU_TPLINC'' を ''tpl_incdir()'' に ''DOKU_TPL'' を ''tpl_basedir()'' に置き換えるだけです。 ([[github>c4766956646b53ab644ec6ddbd17d9cba07cf872|非奨励を参照してください]])。 ===== 使用方法 ===== 二種類の使用方法があります: * 管理者がWiki ページ・名前空間単位に個別のテンプレートを指定する * ユーザーが Wiki 全体に対するテンプレート切替を使用する 併用も可能ですが、どちらか片方だけを使用することをお勧めします。 併用する場合はどちらを優先するかを決める((''preferUserChoice'' 設定を使用します))必要があります。 ==== 管理者:名前空間・ページ毎のテンプレートを指定する ==== {{ plugin:plugin_loadskin_admin.png?direct&200}} 管理者メニューに Loadskin テンプレート管理が追加されます。 この画面を使用してページ・名前空間毎に使用するテンプレートを指定します。 指定されなかったページは管理画面のテンプレート変数で指定されたテンプレートを使用します。 ==== ユーザー:Wiki 全体に対するテンプレートを選択する ==== {{plugin:plugin_loadskin_switcher.png?direct&100 }} テンプレート切替を使用して、ユーザーが Wiki 全体のテンプレートを選択できます。 ユーザーは、この目的のためにクッキーを許可する必要があります(そうしないと、テンプレート切替内容が保存できません。)。 ===== 設定 ===== ^''automaticOutput'' | 全ページにテンプレート切替を自動的に表示する(テンプレート切替を表示したくない、他のどこかに入れたい場合は、これをオフにします)| ^''excludeTemplates''| テンプレート切替から除外するテンプレート(カンマ区切り一覧) | ^''mobileSwitch'' | モバイル用テンプレート切替(通常用テンプレートとモバイル用テンプレート)を表示する? | ^''mobileTemplate'' | モバイル用テンプレート(モバイル用テンプレート切替を表示する場合) | ^''preferUserChoice''| 管理者指定テンプレートよりユーザー選択テンプレートを優先する(管理者指定を優先にする場合、これをオフにします) | ^''inheritInTranslations''| 言語別名前空間内で名前空間毎のテンプレート選択を継承する([[ja:plugin:translation|翻訳プラグイン]]を使用する場合) | ^''allowInAdmin'' | 管理画面でもテンプレート選択を維持する ((デフォルトでは、管理画面は設定管理で選択したテンプレートを常に表示します。このオプションを有効にすると、別のテンプレートのページに行き(又はテンプレート切替から別のテンプレートを選択し)、管理画面に移動すると該当のテンプレートで表示します。つまり、該当のテンプレートの設定ができることになります。)) | テンプレート切替は自動的に Wiki コンテンツの前に配置されます。 別の場所(例えば、ログインボタンの近く、またはサイドバー)に配置したい場合、''automaticOutput'' を切り替えて、好きな場所に表示するためにテンプレート内に以下のコードを配置する必要があります: loadHelper('loadskin', true); echo $loadskinHelper->showTemplateSwitcher(); ?> 自動的に Wiki コンテンツの前に配置した場合、プラグインに付属するスタイルが大体のテンプレートに合わせます。 しかし、テンプレートによっては、[[ja:devel:css#ユーザスタイル|ユーザスタイル]]の助けが必要な場合があります。 ===== クッキー ===== このプラグインは、DokuWiki のコアがすでに使用している ''[[ja:faq:cookies#doku_prefs|DOKU_PREFS]]'' クッキーを使用し、新しいクッキーは使用しません。 ユーザーがテンプレート切替を使用した場合、選択したテンプレートを ''loadskinTpl'' に設定します。 何も選択しなかった場合に表示される元のテンプレートを ''loadskinOrig'' に設定します。 ===== 変更履歴 ===== 完全な変更履歴は[[https://github.com/selfthinker/dokuwiki-plugin-loadskin/commits/|こちら]]です。 {{rss>https://github.com/selfthinker/dokuwiki-plugin-loadskin/commits/master.atom date}} ===== 議論 ===== 問題の報告は [[https://github.com/selfthinker/dokuwiki-plugin-loadskin/issues|issue tracker]] にして下さい。 議論は独立した[[plugin:loadskin:discussion|議論ページ]]で行って下さい。