我试图创建一个绑定到自定义分类法的类别列表,但使用每个类别中第一篇文章的特色图像。
获取类别非常简单,但当我尝试查询帖子缩略图时,我总是会看到第一个类别中最近帖子的详细信息。
如果这有什么区别的话,我是在循环之外运行的;
<ul class="product-categories">
<?php
$categories = get_terms(
array(
\'produkter\'
),
array(
\'hide_empty\' => false,
)
);
foreach( $categories AS $cat )
{
$taxonomy = new WP_Query( array( \'posts_per_page\' => 1, \'tax_query\' => array( \'taxonomy\' => \'produkter\', \'terms\' => $cat->slug ) ) );
while ( $taxonomy->have_posts() )
{
$taxonomy->the_post();
?>
<li class="produkter">
<div class="product-image">
<a href="<?php bloginfo( \'wpurl\' ); ?>/produkt/">
<?php the_post_thumbnail( "product-small" ); ?>
</a>
</div>
<a class="product-title" href="<?php bloginfo( \'wpurl\' ); ?>/produkt/"><?php echo $cat->name ?></a>
</li>
<?php
}
}
?>
</ul>
最合适的回答,由SO网友:Vinod Dalvi 整理而成
tax\\u query采用tax查询参数数组(它采用数组数组),但您只使用单个数组。正确的代码如下所示。
<ul class="product-categories">
<?php
$categories = get_terms(
array(
\'produkter\'
),
array(
\'hide_empty\' => false,
)
);
foreach( $categories AS $cat )
{
$taxonomy = new WP_Query( array( \'posts_per_page\' => 1, \'post_type\' =>\'book\', \'tax_query\' => array( array(\'taxonomy\' => \'produkter\',\'field\' => \'slug\', \'terms\' => $cat->slug ) )) );
while ( $taxonomy->have_posts() )
{
$taxonomy->the_post();
?>
<li class="produkter">
<div class="product-image">
<a href="<?php bloginfo( \'wpurl\' ); ?>/produkt/">
<?php the_post_thumbnail( "product-small" ); ?>
</a>
</div>
<a class="product-title" href="<?php bloginfo( \'wpurl\' ); ?>/produkt/"><?php echo $cat->name ?></a>
</li>
<?php
}
}
?>
</ul>
有关更多信息,请访问
this page.