我正在使用get_categories 列出我的分类法的所有术语“genre“,但我有另一种分类法叫做”brands“。
在品牌页面中(taxonomy-brands.php) 我需要返回品牌和相关流派的所有帖子。
For example, I have a taxonomy page for Ferrari:
. 品牌名称:法拉利
..类型:红色、黄色
But I also have a taxonomy page for Wolkswagen:
. 品牌名称:Wolkswagen
..类型:蓝色、绿色
问题是,法拉利的页面也列出了“蓝色”和“绿色”,即使法拉利没有任何与蓝色和绿色相关的帖子。
最后,有没有办法在不使用“蓝色”和“绿色”时隐藏它们?
以下是我目前得到的信息:http://codepad.org/rWaVmuUT
如果您需要视觉示例:http://i.imgur.com/PKGpi2o.png - “Sucos”和“CD”不应该出现,因为这个品牌只有带有“Macarrão Instantaneo”的帖子。
最合适的回答,由SO网友:Rarst 整理而成
API返回的类别对象在count
领域对于那个些并没有帖子的人,你们应该简单地检查一下,跳过其余的迭代。
类似于:
foreach( $categories as $category ) {
if( 0 == $category->count ) {
continue;
}
划伤那个。如果我这次做得对的话,你真正需要的是在你输出分类标题之前检查你是否有任何帖子。类似(不要使用
query_posts()
顺便说一下,这很麻烦):
$stuff = new WP_Query( $args );
if ( $stuff->have_posts() ) {
?><a href="#" class="list-group-item active"><?php echo $category->name; ?></a><?php
while ( $stuff->have_posts() ) : $stuff->the_post();
// posts output
endwhile;
}