web-dev-qa-db-ja.com

カテゴリの子としてサイドバーリストに投稿名とリンクを表示する

私はこのプラグインを使って私のサイドバーに展開可能/折りたたみ可能なウィジェットメニューを表示しています。 http://wordpress.org/extend/plugins/folding-category-widget それはとてもうまくいきます!

このプラグインと直接関連していないのですが、問題はどのようにしてリストに表示することができますか?カテゴリに関連するすべての投稿(タイトル+ href)?

例えば:

category A 
         post1
         post2

category B
         post3
         post4

category C
         post5

どうもありがとうございました。

2
Luke

私が考えることができる最も簡単な方法はこんな感じです….

<ul class="categories">
<?php
    $categories = get_categories(); //can add parameters here to swtich the order, etc;
    if(!empty(categories)):
        foreach($categories as $i => $category):
?>

<li class="category">
    <span><?php echo $category->name ?></span>

        <?php

        query_posts('posts_per_page=-1&cat=' . $category->term_id);
        if ( have_posts() ) :
        ?>
        <ul class="posts">
        <?php
             while ( have_posts() ) : the_post(); //we make a loop for each category, 
        ?>
            <li class="post">
                <a href="<?php the_permalink();?>"><?php the_title();?></a>
            </li>
            <?php endwhile; ?>
        </ul>
            <?php endif; ?>
        <?php wp_reset_query(); ?>
</li>
        <?php endforeach; endif; ?>
</ul>

警告:これはテストされていないコードですが、うまく動作するはずです。 (単にsidebar.phpファイルに追加するか、サイドバーを生成した場所に追加してください。)

0
Cronco