我在使用自定义分类模板时遇到了一些麻烦。我继承了一个由其他人开发的网站,他们使用“类型”插件添加一些自定义分类法。
有一个存档模板,只显示其中包含特定分类术语的帖子example-domain.com/people/harrison-ford
此代码引入了未选择分类的帖子。
<?php
$year = get_post_meta($post->ID, 'year', true);
$post_type = 'post';
$tax = 'people';
$tax_terms = get_terms( $tax );
if ($tax_terms) {
$args = array(
'post_type' => $post_type,
'people' => 'harrison-ford',
"$tax" => $tax_term->slug,
'post_status' => 'publish',
'posts_per_page' => -1,
'caller_get_posts'=> 1,
'orderby' => 'date',
'order' => DESC
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) : ?>
<h2 class="wwNews"><?php echo $tax_term->name; ?> News</h2>
<?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
<-- display stuff -->
<?php endwhile; // end of loop ?>
<?php endif; // if have_posts()
wp_reset_query();
}
?>
答案 0 :(得分:1)
你在这里期待什么? "$tax"
将成为'people' =>
,它会将'harrison-ford'
覆盖为$tax_term->slug
的值。
'people' => 'harrison-ford',
"$tax" => $tax_term->slug,
此外,我不知道任何名为people
的自定义参数,我很确定您需要tax_query
:
'tax_query' => array(
'taxonomy' => 'people',
'terms' => array('harrison-ford', $tax_term->slug)
)
这将为您提供harrison-ford
1>分类中所有匹配$tax_term->slug
和people
值的人的结果