サポート » 使い方全般 » カテゴリーメニューのアコーディオン化

  • 塀 シスター

    (@takahiro-onozuka)


    私自身PHPが全く分からない上にCSSもCSS1くらいならわかるのですがCSS3がわからないレベルです。
    このフォーラムで投稿のカテゴリーリストをアコーディオン化する方法がたくさん紹介されていましたが、自分の環境にあった回答が見当たらず、質問させていただきました。
    また、今回使っているものは「人が作ったテンプレート」を使用しているため、カスタマイズがうまくできないのもあって、テンプレートやウィジットなど「外観」に関するメニューが非表示?削除?されていて、その辺のことは使用できないことを前提にお話しさせていただきます。

    使用中の[sp-sidebar.php]にカテゴリー表示する部分があることはなんとなく把握できたのですが、今の状況では”親も子も関係なく同一軸上に表示”されてしまいます。

    コードはこんな感じです

    <nav class="nav">
    		<ul>
    			<?php
    				$cat_all = get_terms('category', 'fields=all&get=all&orderby=order');
    				foreach($cat_all as $value) {
    					echo '<li><a href="'.get_category_link($value->term_id).'">'.$value->name.'</a></li>';
    				}
    			?>
    		</ul>
    	</nav>

    私の望むものとしては
    親カテゴリ
    ┗子カテゴリ
    ┗子カテゴリ
    ┗子カテゴリ
    親カテゴリ
    ┗子カテゴリ
    ┗子カテゴリ
    ┗子カテゴリ
    をアコーディオンでできるようにしたいのです。

    やりたいのは
    JQuery Accordion Menu Widget
    みたいに親と子でデザインの異な背景だけど余白等は同一縦軸で表現したいのです。子だから右に文字分ずれるのではなく。

    また、カテゴリの順番を変えたりする「メニュー」の設定画面も表示されなく、「My Category Order」で設定しているにもかかわらず、順番も変更できなくて困っておりました。

    自分でももう少し試してみますが、お手間かけない程度に教えていただけたら幸いです。
    よろしくお願いいたします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • 上げていただいたコードを見ると、categoryをとにかく取得して
    全てただliでくくっているだけなのでそのようになります。
    (ただ、並び順を指定しているので他にプラグインを入れているのであれば
     意味があるかもしれません。)

    親子関係を維持したリストを表示するのであれば
    wp_list_categories
    を使用するのが一番簡単です。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「カテゴリーメニューのアコーディオン化」には新たに返信することはできません。