0

嗨,我在 WP 页面中添加了一个循环代码,以显示帖子的列表。它工作正常,但它显示了我发布的每篇文章,即使不在选择的类别中。这是一个问题,因为有些帖子不应该显示!请问你能帮帮我吗?

<?php  $posts = get_posts('category=Products&numberposts=-1'); 
            foreach($posts as $post) : setup_postdata($post);
                ?><li><div class="fotoBoxContent"><a class="fotoBox" href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); the_title(); ?></a></div></li>
            <?php  endforeach; ?>

显示“产品”类别的帖子,也显示“产品”子类别的帖子,但显示其他类别的帖子,包括“未分类”。

PS:是打印的,在页面标题下方,“cat : 11,10,13,14,16,9,12,|”有办法避免这种打印吗?谢谢大家

4

2 回答 2

0

类别必须是 ID 而不是名称。另外,尝试设置get_posts()使用参数数组而不是内联:

<?php
$args = array(
'category' => '*ID*',
'numberposts' => -1
);

$posts = get_posts($args); 
foreach($posts as $post) : setup_postdata($post); ?>
    <li>
       <div class="fotoBoxContent">
       <a class="fotoBox" href="<?php the_permalink(); ?>">
       <?php the_post_thumbnail(); the_title(); ?>
       </a>
       </div>
    </li>
<?php endforeach; ?> 

来自 WordPress Codex -注意:类别参数需要是类别的 ID,而不是类别名称。 http://codex.wordpress.org/Template_Tags/get_posts

于 2013-04-23T05:54:40.217 回答
0

“产品”是您要抢夺的类别的实际内容吗?我会仔细检查。您需要类别的 slug,而不是其显示名称。

于 2013-04-22T14:51:39.253 回答