我在category.php
中有此代码,我希望显示我所属类别中的帖子," $cat
"和类别提到id
63.我写了一些东西,但不想工作:/
<?php
$cat->term_id;
$my_query_args = array(
'posts_per_page' => 6,
'tax_query' => array(
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(63, $cat),
'operator' => 'AND'
)
)
);
$my_query = new WP_Query($my_query_args);
if ($my_query->have_posts()) : while ($my_query->have_posts()) : $my_query->the_post();
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php
endwhile;
endif;
wp_reset_postdata();
?>
有人可以告诉我为什么不将当前显示的类别招致$cat
?
提前感谢您的帮助!
答案 0 :(得分:1)
$category = get_category( get_query_var( 'cat' ) );
echo $cat_id = $category->cat_ID;
这将为您提供当前的类别ID。 现在在category.php
中启动wordpress循环之前放置以下查询query_posts( 'cat='.$cat_id);
如果这是正常的类别,你不想让它复杂,有太多的args。这将通过检查您当前的类别ID动态地工作。
答案 1 :(得分:1)
可能是你在&#39; field&#39;你的tac_query中的参数。
'field' => 'term_id',
字段 - 选择分类法术语。可能的值包括&#39; term_id&#39;,&#39; name&#39;,&#39; slug&#39;或者&#39; term_taxonomy_id&#39;。默认值为&#39; term_id&#39;。
答案 2 :(得分:0)
可能你的$cat
变量是一个对象。尝试将'terms' => array( 63, $cat ),
更改为'terms' => array( 63, $cat->ID ),
或'terms' => array( 63, $cat->id ),
答案 3 :(得分:0)
尝试在cat = ..
设置你的猫咪ID或名字<?php
$catquery = new WP_Query( 'cat=3&posts_per_page=10' );
while($catquery->have_posts()) : $catquery->the_post();
?>
<ul>
<li><h3><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3>
<ul><li><?php the_content(); ?></li>
</ul>
</li>
</ul>
<?php endwhile; ?>