wp_list_categories()で取得したカテゴリリストを開閉式にすることはできないか考えています。
親カテゴリーをクリックしたら子供のカテゴリーも表示されるようにする感じです。
<?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'category_name', 'show_count' => 0 ) ); ?>
現在はこういうコードで、カテゴリの一覧を表示している状態ですが、これをjqueryとかを使って、折りたたんだりすることはできないでしょうか。
このサイトを見て、
div class="wrap"> <ul id="CatList"> <?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'tag', 'show_count' => 0 ) ); ?> </ul> <script> $("#CatList li").has('ul').prepend('<a class="Open"> </a>').children('ul').css({"display":"none"}); $('.Open').click(function(){ $(this).toggleClass('On').stop().nextAll('ul').slideToggle(); }); </script> </div> </body> </html>
【追記】
すみません。別のサイトのコードを試していました。このサイトを元に作ったコードはこれですが、これも動かないです。
【追記】htmlの構造です。
<ul> <li class="cat-item cat-item-26"><a href=">親カテゴリー</a> <ul class='children'> <li class="cat-item cat-item-20"><a href="example" >子カテゴリー1</a> </li> <li class="cat-item cat-item-18"><a href="example" >子カテゴリー2</a> </li> <li class="cat-item cat-item-21"><a href="example" >子カテゴリー3</a> </li> </ul> </li> </ul>
【追記】一番初めの転写するのを間違えたコードです。
このサイトを参考にしました。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> </head> <body> <div class="wrap"> <ul> <?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'tag_name', 'show_count' => 0 ) ); ?> <?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'category_name', 'show_count' => 0 ) ); ?> </ul> <script> $(function(){ //カテゴリの折り畳み $(".tree-menu .children").hide(); $(".tree-menu li").hover(function() { $(this).children('ul').slideDown(400); }, function() { $(this).children('ul').hide(400); }); }); </script> </div> </body> </html>
$(function(){ //カテゴリの折り畳み $(".children").hide(); $(".cat-item li").hover(function() { $(this).children('ul').slideDown(400); }, function() { $(this).children('ul').hide(400); }); });
コメントに沿って、指摘を直してみたのですが、これでもダメでした。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。