我有一个带有自定义分类法('earsicles_category'(
的cpt('车辆'(我有4个类别(建筑,道路,废物,其他(,分配了许多这些类别的帖子。
我正在尝试将每个类别列出,并在下面分配给它们的帖子。
Construction
Post 1
Post 2
etc
Road
Post 6
Post 9
etc
一直在与此战斗。
我有这样的帖子...
$context['vehicles'] = Timber::get_posts([
'order' => 'ASC',
'post_type' => 'vehicles',
'posts_per_page' => -1,
'paged' => $paged,
]);
这是为了获得类别...
$context['categories'] = Timber::get_terms('vehicle_category');
$context['posts'] = $context['vehicles'];
到目前为止,我在树枝文件中都有这个...
{% for category in categories %}
{% if category.count >= 1 %}
<li>
<a href="{{site.url}}/vehicles/{{ category.slug }}">{{ category.title }}</a>
</li>
{% endif %}
{% endfor %}
,但它仅输出类别,因为我错过了输出帖子的位,但是我尝试的一切都无法使用。
有什么想法吗?谢谢
好吧,真的想到了这一点。
$context['categories'] = Timber::get_terms('vehicle_category');
车辆category是我的自定义分类法。
{% for category in categories %}
<h1>{{category.name}}</h1>
<div class="c-vehicle--list">
{% for post in category.posts %}
<div class="c-vehicle--list__item">
<a href="{{ site.url }}/vehicles/{{ post.slug }}" title="{{ post.title }}">
<img src="{{TimberImage(post.vehicle_image).src('postMedium')}}" alt="{{ post.title }}">
<span>{{ post.title }}</span>
<span>{{ post.terms('vehicle_category') | join(', ') }}</span>
</a>
</div>
{% endfor %}
</div>
{% endfor %}
因此,只需将我的自定义分类法中的类别循环出去,然后列出与该类别关联的帖子post in category.post
。