我的主题的index.php文件中包含以下代码。它可以从一系列类别ID中获取最新的四个帖子。这些ID是父级和子级类别的混合。
$args = array(
'cat' => '7, 5, 3, 4, 6', 'numberposts' => 4, 'order' => 'DESC', );
$context['stories'] = Timber::get_posts($args);
在tease.twig文件中使用以下代码。
{% block content %}
{{ post.content }}
{% endblock %}
在tease-stories.twig文件中使用以下代码。
{% extends "tease.twig" %}
{% block content %}
{% for story in stories %}
<article class="story" id="story-{{post.ID}}">
{% if loop.first %}
{% if story.thumbnail.src %}
<img src="{{story.thumbnail.src}}" class="" alt="" />
{% endif %}
{% endif %}
<h3 class="story__heading">
<a href="{{ story.link }}">
{{ story.title }}
</a>
</h3>
<div class="story__meta">
<time class="">{{ story.date }}</time>
</div>
{% if loop.first %}
<div class="story__content">
{{ story.preview.read_more(false) }}
</div>
{% endif %}
</article>
{% endfor %}
{% endblock %}
以下代码在index.twig文件中使用。
{% extends "base.twig" %}
{% block content %}
<section class="stories">
<h2>Latest Travel Stories</h2>
{% for story in stories %}
{% include ['tease-stories.twig'] %}
{% endfor %}
</section>
<section class="observations">
<h2>Observations</h2>
{% for observation in observations %}
{% include ['tease-observations.twig'] %}
{% endfor %}
<a href="{{ site.url }}/gerry/observations" title="More observations" class="more more-observations">
More Observations
</a>
</section>
{% endblock %}
循环内容的屏幕截图:
我不确定循环为什么循环四次。任何帮助是极大的赞赏。干杯。
#1
我已经在@DarkBee的协助下解决了这个问题。问题是使用了两次for循环, 一次在index.twig文件中, 一次在tease.twig文件中, 这导致故事被多次输出。我更新的index.twig代码如下。
{% extends "base.twig" %}
{% block content %}
<section class="stories">
<h2>Latest Travel Stories</h2>
{% include ['tease-stories.twig'] %}
</section>
<section class="observations">
<h2>Observations</h2>
{% include ['tease-observations.twig'] %}
<a href="{{ site.url }}/gerry/observations" title="More observations" class="more more-observations">
More Observations
</a>
</section>
{% endblock %}
评论前必须登录!
注册