根据自定义分类术语显示帖子
Posted
技术标签:
【中文标题】根据自定义分类术语显示帖子【英文标题】:Display posts based on custom taxonomy terms 【发布时间】:2016-03-15 06:32:53 【问题描述】:您好,我正在尝试根据其术语显示自定义分类的帖子。下面的代码一个接一个地返回我需要的只是一个特定术语。例如,我的自定义分类城市指南城市中有两个城市,可以说是巴黎和纽约。我只需要在巴黎下显示帖子。 我尝试在 wpq 数组中将 paris 作为术语 arg 传递,它仅显示 paris 帖子,但循环有效。意味着 paris 帖子显示在第一个 paris 下,然后显示在 newyork 下。我不希望 newyork 显示在那里,或者不希望在加载 paris 或 newyork 后循环运行。
<?php
$terms = get_terms('city-guide-cities');
foreach ($terms as $term)
$wpq = array ('taxonomy'=>'city-guide-cities','term'=>$term->slug);
$myquery = new WP_Query ($wpq);
$article_count = $myquery->post_count;
echo "<h3 class=\"term-heading\" id=\"".$term->slug."\">";
echo $term->name;
echo "</h3>";
if ($article_count)
echo "<ul>";
while ($myquery->have_posts()) : $myquery->the_post();
echo "<li><a href=\"".get_permalink()."\">".$post->post_title."</a></li>";
endwhile;
echo "</ul>";
?>
【问题讨论】:
我的帖子类型是城市指南,分类是城市指南城市,术语是巴黎,我想要巴黎下的帖子 【参考方案1】:见https://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters。应该适合你。
$query = new WP_Query(
array(
'post_type' => 'city-guide',
'tax_query' => array(
array(
'taxonomy' => 'city-guide-cities',
'field' => 'slug',
'terms' => 'paris',
),
)
)
);
您还可以使用 AND 或 OR 将它们链接起来,以根据需要执行多个术语查询。
【讨论】:
所以我可以给出这个文件的命名规则 你可以把它放到single-city-guide.php中。见codex.wordpress.org/Post_Type_Templates。 taxonomy-city-guide-cities-paris.php 这样的东西? 我认为您不能仅在 php 文件名中指定该术语 - 除非您可以在我列出的文档中找到它。 等等,我可能错了。见developer.wordpress.org/themes/template-files-section/…。据此,taxonomy-city-guide-cities-paris.php 应该像你说的那样工作。以上是关于根据自定义分类术语显示帖子的主要内容,如果未能解决你的问题,请参考以下文章