完成イメージ

実装手順
以下の手順で実装します。
- ラベルJavaScriptを追加
以下のコードをjavascript.jsに追加します。
jQuery(function ($) { $(".widget_nav_menu").each(function () { // サブメニューを非表示 $('.sub-menu', this).hide(); // サブメニューの直前にボタンを追加 $('.sub-menu', this).before('<div class="nav-menu__toggle"></div>'); // ボタンクリックの場合 $('.nav-menu__toggle', this).click(function () { // 直後にあるサブメニューの表示を切り替え $(this).next('ul').toggle(); $(this).toggleClass('active'); }); }); }); - ラベルCSSを追加
以下のコードをstyle.cssに追加します。
.body .widget_nav_menu { ul { padding-left: 0; } li { position: relative; } a { padding: 3px 2em 3px 0; } .nav-menu__toggle { border: 1px solid #ccc; cursor: pointer; display: grid; height: 20px; place-content: center; position: absolute; right: 5px; top: 8px; width: 20px; &::before { color: #ccc; content: '\f078'; font-family: 'Font Awesome 5 Free'; font-size: 5px; font-weight: bold; } &.active::before { content: '\f077'; } } }
さいごに
今回紹介した方法を使えば、「ナビゲーションメニュー」ウィジェットで子メニューを簡単に折りたたみ表示にすることができます。
ユーザーにとって見やすいナビゲーションを提供し、サイト全体の利便性を向上させることが可能です。

