ブログアコーディオンメニュー
ブログでもアコーディオンメニューを使いたい
HAIKの旧Topページのように、全部の項目をずらずら並べたメニューではなくて、このページの様に、「WordPress導入」関係のページなら、他の項目の詳細は折りたたんで、導入の所だけが詳細に表示される方が、閲覧者にとっても、とても親切なメニューになります。
固定ページでこれをやるには、前ページで紹介した Accordeon Menu CK というプラグインが使えます。
ところがこれでブログ投稿のカテゴリーを表示しようとしてうまく機能しませんでした。おそらく2段階までのメニュー表示ならうまく動くのでしょうが、このページのメニューの様に、3段階の表示にすると、どんなにメニューの作り方を工夫しても、必要なところでもメニューが途中で閉じてしまいます。
bellows-submenu導入
令和3年10月まで jQuery Vertical Accordion Menu を使ってきましたが、今回よく見てみると、なんか表示がおかしくなっていました。それで、bellows-submenu にプラグインを変えました。
導入は、プラグインを登録して、サイドメニューの所にこのプラグインを登録し、「プラグイン>インストール済みプラグイン」からこのプラグインの Control Panel を開いて、Automatically expand the submenu of the current menu item のタブにチェックを入れれば終了です。
ただこれだと、 Accordeon Menu CK 用に設定した他のサイドメニュー部分と表示が合わないので、ちょっとcssをいじりました。
いい加減ないじり方なので、不要な設定要素がまだ残っているかもしれません。
このプラグインを設置したブログ見本はこちら。
cssの調整
設定を必要箇所だけ再設定するためのファイルを作ります。
/* bellows-submenu.css */
#bellows_navigation_widget-2 .bellows {
margin: 20px 0px;/*20*/
--bellows-item-padding-v: 5px;/*5*/
--bellows-item-padding-h: 5px;/*5*/
--bellows-sub-item-padding-v: 5px;/*5*/
--bellows-indent: 10px;/*10*/
}
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-item-level-0 .bellows-submenu {
padding-left:15px;/*15*/
}
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-target,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-custom-content.bellows-custom-content-padded,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows .bellows-target.bellows-target-w-image > .bellows-target-text,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-target.bellows-target-w-image > .bellows-image.bellows-image-padded {
--bellows-level: 1;
padding: var(--bellows-sub-item-padding-v) var(--bellows-sub-item-padding-h);
padding-left: calc(var(--bellows-sub-item-padding-h) + (var(--bellows-indent) * (var(--bellows-level) - var(--bellows-indent-level-offset))))-5;
}
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-target > .bellows-target-text {
color: #6600FF;
font-size: small;
}
#bellows_navigation_widget-2 ul{
list-style-type: none;
}
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-target,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-custom-content.bellows-custom-content-padded,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows .bellows-target.bellows-target-w-image > .bellows-target-text,
#bellows_navigation_widget-2 .bellows .bellows-nav .bellows-submenu .bellows-target.bellows-target-w-image > .bellows-image.bellows-image-padded {
margin-left: 0px;
padding-left: 0px;
}
これでもまだAMP時のメニュー表示がおかしいですが、これ以上の直し方がまだ発見できません。
プラグインの設定で、skin は None(Disable) を選択します。
追加cssの設定
元のcssはそのままに残して、上で設定し直したcssを 「独自CSSやJavascript追加」のやり方で追加指定します。
こうすれば、もとのプラグインがいくら更新されても、設定が上書きされてしまう心配がありません。
Simple Custom CSS and JSプラグインを使う場合は、
<link rel=’stylesheet’ id=’bellows-submenu.css’ href=’https://www.ne***.com/bellows-submenu.css’ type=’text/css’ media=’all’ />