0

我在这个网站上找到了这段代码

但即使该类别下没有帖子,它也会打印猫名 (the )。如果猫中没有帖子,我将如何修改此代码以不打印标题?

 <?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;
                // Make a header for the cateogry
                echo "<h2>".$cat->name."</h2>";
                // create a custom wordpress query
                query_posts("cat=$cat_id&tag=torrington&post_per_page=100");
                // start the wordpress loop!
                if (have_posts()) : while (have_posts()) : the_post(); ?>

                    <?php // create our link now that the post is setup ?>
                    <a href="<?php the_permalink();?>"><?php the_title(); ?></a>
                    <?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

制作这一行:

echo "<h2>".$cat->name."</h2>";

只有在have_posts()为真时才执行。

<?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 cateogry
        echo "<h2>".$cat->name."</h2>";

        while (have_posts()):

            the_post();

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

        endwhile;

    endif; // done our wordpress loop. Will start again for each category

} // done the foreach statement
于 2012-11-25T20:04:35.430 回答