If statement 如何在twig中实现工作if语句?我的坏了
我试图在用twig做模板时做一个简单的IF语句。看起来它被忽略了,并且每次都读取以下代码。应该很简单,但不起作用If statement 如何在twig中实现工作if语句?我的坏了,if-statement,twig,If Statement,Twig,我试图在用twig做模板时做一个简单的IF语句。看起来它被忽略了,并且每次都读取以下代码。应该很简单,但不起作用 {% extends "_layout" %} {% block content %} <div class="box"> {% set x = 1 %} {% for entry in craft.entries.section('news') %} {% if x % 3 == 0 %} <div class=
{% extends "_layout" %}
{% block content %}
<div class="box">
{% set x = 1 %}
{% for entry in craft.entries.section('news') %}
{% if x % 3 == 0 %}
<div class="row">
</div>
{% endif %}
{% set x =+ 1 %}
<div class="beitrag col l4 m12 s12">
<h3 class="beitrag_titel">{{ entry.title }}</h3> <p>{{ entry.textnews }}</p>
</div>
{% endfor %}
</div>
{% endblock %}
{%extends“\u布局”%}
{%block content%}
{%set x=1%}
{%craft.entries.section('news')%%中的条目
{%x%3==0%}
{%endif%}
{%set x=+1%}
{{entry.title}{{entry.textnews}
{%endfor%}
{%endblock%}
我希望代码每三次输入一个新的“row”div。他所做的就是每次做一个新的
对于答案,您分配的
x
是错误的。twig
此时,您只需每次将
x
设置为+1
。您应该使用{%set x=x+1%}
注意,不必跟踪for循环中的额外计数器,因为您可以使用
loop.index
或loop.index0
,分别从1和0开始
您还可以使用test可被
整除,以提高可读性
{0..10%中的i的%
{%如果loop.index可被(3)%}
{loop.index}}可被3整除
{%endif%}
{%endfor%}
要解决行的html问题,还可以使用
{数据中的行的百分比|批处理(3)%}
{第%行中的值为%0}
{{value}}
{%endfor%}
{%endfor%}
从您(已删除)的注释中,如果您希望内容进入
行
,您需要按照以下方式调整代码
{%set x=1%}
{entries%%中的条目的百分比}
{%if loop.first%}
{%endif%}
{{entry.title}
{{entry.textnews}
{%如果x可被(3)整除,而不是loop.last%}
{%endif%}
{%set x=x+1%}
{%if loop.last和条目|长度不能被(3)%整除}
{%endif%}
{%endfor%}
但这样你就可以更好地使用批处理了
{条目的行百分比|批处理(3)%}
{第%行中的值为%0}
{{value.title}}
{{value.textnews}
{%endfor%}
{%endfor%}
@Recone0816更新了答案以反映您的评论批次现在运行良好。非常感谢!不过,我不得不调整一些事情。craft.entries.section('news')| batch(3)%}{%的变量
{%的条目中的值存在问题}