- 追加された行はこの色です。
- 削除された行はこの色です。
[[morikawa]]
* 階層化しなくても、カテゴリ毎に同一サブメニュー [#adae40ef]
includesubmenu プラグイン(以下、サブメニュープラグイン)は、構造化されていないWikiサイト上にメニューという秩序をもたらすので、とても重宝します。しかし、階層化されていることが前提なので、横のつながりに若干弱さを感じます。
そこで、設定によって階層上はまったく関係のないページも、同じSubMenuを表示できるようにしました。インライン型の追加も加えているので、メニューの階層化も行え、訪問者のナビゲーションには役に立つと思います。
最新は、m031121。
- 設定サンプル、動作デモは、[[こちら:http://www.tetsuo.morikawa.name/m/?pukiwiki%2Fplugins]]
-- 上記デモの動作は、もう少し手を入れて、同階層メニューの現ページ項目下へ、下階層のメニューを差し込むサブメニューの多重化を行っています。よくJavaScriptで実現してる、クリックするとビヨ~ンと下階層メニューが現れるみたいな感じのメニューです。ビヨ~ンとはいきませんが。
-- [[official:質問箱3/496]]
RIGHT:2003-11-21
RIGHT:2003-11-14
** Config 対応分のみの差分 [#q7926320]
これ以降、インライン型を追加したので、この差分自体は更新されていきません。。。 - 2003-11-21
3a4,5
> define("PLUGIN_INCLUDESUBMENU_CONFIG", 'plugin/includesubmenu/config');
>
17a20
> $SubMenuPageName3 = false;
29a33,50
>
> // config
> $cfg = new Config(PLUGIN_INCLUDESUBMENU_CONFIG);
> $cfg->read();
> $ary = $cfg->get('CATEGORY');
> unset($cfg);
> if ( is_array($ary) ) {
> foreach($ary as $_set){
> // print_r($_set);
> if (is_array($_set) && ($_set[0] == $tmppage) ) {
> $SubMenuPageName3 = $_set[1];
> break;
> } //
> } //
> } //
>
>
40a62,65
> }
> else if (is_page($SubMenuPageName3)) {
> //ConfigにSubMenu有り
> $SubMenuPageName = $SubMenuPageName3;
* サブメニューの入れ子 [#v57d036e]
インライン呼び出しを追加して、例題みたいなことを実現。
- 説明は[[こちら:http://www.tetsuo.morikawa.name/m/?pukiwiki%2Fplugins%2Fsubmenu]]。
- デモは[[こちら:http://www.tetsuo.morikawa.name/m/?pukiwiki%2Fplugins]]:。
** ''例題A.'' メニューの階層化 [#vd7f633e]
状態1.pukiwiki/plugins 表示中
-../plugins
--bookmark
--submenu
--whats new
--wikinote
-../SubMenu
状態2.pukiwiki/SubMenu 表示中
-../plugins
-../SubMenu
** ''例題B.'' Config と組み合わせた階層化 [#nd288f93]
状態1.技術系 表示中
-Debian
-PukiWiki
-Java
-config page
-this
状態2.Java 表示中
-Debian
-PukiWiki
-Java
--LANG
--SWT
--DesignPattern
--../
-config page
-this