带术语的木材插件(WordPress)

时间:2016-12-28 09:16:25

标签: wordpress twig timber

我有一个帖子列表,其中一个帖子分配了一个帖子。

我有5个学期。我生成了一个使用的术语列表。我想在我的存档页面中只显示具有相同术语的帖子。

archive.php:

$templates = array( 'archive.twig', 'index.twig' );

$context = Timber::get_context();
$context['categories'] = Timber::get_terms('category', array('hide_empty' => true));

$context['title'] = 'Archive';
if ( is_day() ) {
    $context['title'] = 'Archive: '.get_the_date( 'D M Y' );
} else if ( is_month() ) {
    $context['title'] = 'Archive: '.get_the_date( 'M Y' );
} else if ( is_year() ) {
    $context['title'] = 'Archive: '.get_the_date( 'Y' );
} else if ( is_tag() ) {
    $context['title'] = single_tag_title( '', false );
} else if ( is_category() ) {
    $context['title'] = single_cat_title( '', false );
    array_unshift( $templates, 'archive-' . get_query_var( 'cat' ) . '.twig' );
} else if ( is_post_type_archive() ) {
    $context['title'] = post_type_archive_title( '', false );
    array_unshift( $templates, 'archive-' . get_post_type() . '.twig' );
}

$context['posts'] = Timber::get_posts();

Timber::render( $templates, $context );

在我的 home.twig 文件中显示所有帖子:

<ul class="category--list">
  {% for cat in categories %}
     <li><a href="{{cat.link}}" class="h-cat">{{cat.name}}</a></li>
  {% endfor %}
</ul>

我必须在我的&#34; archive.twig&#34;中创建什么循环?文件只显示单击的术语中的帖子?

1 个答案:

答案 0 :(得分:0)

@Jardon,第一步是获得相关术语......

<强> archive.php

$context['term'] = new Timber\Term(); 
//this will fetch whichever term is in the scope of that php file

然后你只需要将它发送到twig文件进行显示......

<强> archive.twig

<h2>{{ term.name }}</h2>