我正在使用Timber来构建我的Wordpress网站。它为基于Twig的Wordpess带来了丰富的模板引擎。
我无法解决的一种情况如下。 我有一个模板文件负责在每个循环上下文中显示帖子(存档,搜索等)。此模板也被我用来展示精选帖子的插件使用。
该插件有一些选项可以显示或隐藏信息,例如缩略图或摘录后。
此代码如下。
精选帖子插件循环,设置一些变量,包括稍后控制缩略图和摘录应该可见的变量:
<?php while( $flexible_posts->have_posts() ) : $flexible_posts->the_post(); global $post; ?>
<?php
$data = Timber::get_context();
$data['showthumb'] = $thumbnail ?: true;
$data['thumbsize'] = $thumbsize ?: 'thumbnail';
$data['excerpt'] = $excerpt;
$data['post'] = new TimberPost( $post );
if ( $post->post_type == 'product') {
Timber::render('woo/tease-product.twig', $data);
} else {
Timber::render('partials/tease-post.twig', $data);
}
?>
<?php endwhile; ?>
从上面的代码加载的模板,由插件触发,但也来自常见的wordpress循环,以显示帖子&#34; tease&#34;:
<article {{ fn('post_class', ['$classes', 'entry'] ) }}>
<div class="Media">
{% do action('tha_entry_top') %}
<div class="Media-figure">
{% if post.thumbnail %}
<img src="{{ post.thumbnail.src('thumbnail') }}" />
{% else %}
<span class="thumb-placeholder"><i class="icon-camera"></i></span>
{% endif %}
</div>
<div class="Media-content">
<h2 class="entry-title"><a href="{{post.link}}">{{post.title}}</a></h2>
<div class="entry-meta">{{post.date|date("F jS\\, Y")}} in {{ post.terms('categories')|first }}</div>
<p>{{post.get_preview(35)}}</p>
</div>
{% do action('tha_entry_bottom') %}
</div>
</article>
我的问题是,如何使用插件选项以显示或隐藏缩略图,但仍然可以使用相同的帖子模板输出没有该变量集的常规WP循环?