0

特定のタグのカテゴリ別にすべての投稿をグループ化するためのループがあります(以下のコードを参照)。私はそれを好転させてまったく同じことをする必要がありますが、与えられたカテゴリーのタグによってです。

コードサンプルでは、​​「torrington」というタグが付けられたすべての投稿を取得し、ループを実行して、カテゴリのH2(「レストラン」など)を使用してカテゴリ別にグループ化して表示しています。

したがって、逆に、すべてのアイテムカテゴリ「レストラン」を取得してから、タグでグループ化する必要があります(たとえば、「torrington」、「danbury」など)。

<?php           
        // get all the categories from the database
        $cats = get_categories(); 
            // loop through the categries
            foreach ($cats as $cat) {
                // setup the cateogory ID
                $cat_id= $cat->term_id;

                // create a custom wordpress query
                query_posts("cat=$cat_id&tag=torrington&post_per_page=100");

                // start the wordpress loop!
                if (have_posts()) :     

                // Make a header for the category
                echo '<h2 class="cat-title">'.$cat->name.'</h2>';

                while (have_posts()) : 
                the_post(); ?>

                    <?php // create our link now that the post is setup ?>
                    <div class="listing">
                    <a href="<?php the_permalink();?>"><?php the_title(); ?></a>
                    <?php the_content(); ?>
                    </div>
                    <?php //echo '<hr/>'; ?>

                <?php endwhile; endif; // done our wordpress loop. Will start again for each category ?>
            <?php } // done the foreach statement ?>

編集:私はこれまでに得ましたが、query_postsステートメントは何も返さないようです:

 <?php           
        // get all the categories from the database
        $tags = get_tags(); 
            // loop through the categries
            foreach ($tags as $tag) {
                echo($tag->name);
                // setup the cateogory ID
                $tag_id = $tag->term_id;

                echo($tag_id);

                // create a custom wordpress query
                query_posts("tag_id=$tag_id&cat=eats&post_per_page=100");

                // start the wordpress loop!
                if (have_posts()) :     

                echo('posts');
                // Make a header for the category
                echo '<h2 class="cat-title">'.$tag->name.'</h2>';

                while (have_posts()) : 
                the_post(); ?>

                    <?php // create our link now that the post is setup ?>
                    <div class="listing">
                    <a href="<?php the_permalink();?>"><?php the_title(); ?></a>
                    <?php the_content(); ?>
                    </div>
                    <?php //echo '<hr/>'; ?>

                <?php endwhile; endif; // done our wordpress loop. Will start again for each category ?>
            <?php } // done the foreach statement ?>
4

1 に答える 1

0

とった。の単純な変更tag_id=$tag_idでしたtag=$tag_id

上記のコードが更新されました。関連する行はquery_posts("tag_id=$tag_id&cat=eats&post_per_page=100");

于 2012-11-27T16:21:04.190 に答える