如何在if..else语句中组合is_category()和query_posts()?

时间:2013-07-09 19:18:49

标签: php wordpress

我有一些代码片段,我想检查类别是否正确,如果帖子确实存在,目前我有一个if_category()函数,然后查询我所需的类别,但我认为这些是冲突所以没有我正在显示该类别的帖子,有人可以建议我如何修复此代码吗?

PHP

<?php if(is_category('Rainwater Harvesting Product')) { ?>
            <!-- Related Projects -->
            <?php query_posts('category_name=rainwater-harvesting-project&showposts=5'); ?>
            <?php if (have_posts()) { ?>
                <div class="aside-mod related-projects">
                    <div class="curved-ctn">
                    <h2 class="module-header">Related Projects</h2>

                        <ul class="project-list clearfix">
                                <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                                    <li class="project">
                                        <a href="<?php the_permalink();?>" class="project">
                                            <?php if ( has_post_thumbnail() ) {
                                              the_post_thumbnail('thumbnail');
                                            } ?>

                                            <h3><?php the_title(); ?></h3>
                                            <!-- <i class="icon-project"></i> -->

                                        </a>
                                    </li>
                                <?php endwhile; ?>
                                <?php endif; ?>
                        </ul>
                    </div>
                </div>
            <?php } ?>
        <?php } ?>
        <?php wp_reset_query(); ?>

1 个答案:

答案 0 :(得分:0)

它不起作用,因为在你的 <?php query_posts('category_name=Greywater Recycling Project&showposts=5'); ?> 你给的是category_name,而不是类别slug,query_posts参数,category_name只接受slug。例如:它必须是

<?php query_posts('category_name=greywater-recycling-project&showposts=5'); ?>

此处有更多信息:http://codex.wordpress.org/Function_Reference/query_posts