2013-04-22 76 views
0

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

<?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,|”是否有避免此打印的方法?感谢所有人

回答

0

“产品”是您试图抓取的类别的实际slu??我会仔细检查一下。你想要的是类别的slug,而不是它的显示名称。

+0

slug也是产品,我尝试用“pro”重命名slug,但没有任何发生。 – user2224610 2013-04-22 15:28:25

+0

产品是“产品”还是“产品”?我相信它是区分大小写的。 – 2013-04-22 15:32:58

+0

不,它是所有产品都是小写字母的,并且变成试用一个不同的名字,但它是一样的。 – user2224610 2013-04-22 15:42:23

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的法典 - 注:类别参数必须是该类别的ID,而不是类别名称。 http://codex.wordpress.org/Template_Tags/get_posts

+0

谢谢我会尝试让你知道! – user2224610 2013-04-23 07:49:49

+0

@ user2224610为你做了这个工作吗? – 2013-04-27 13:50:45