If statement 如何在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=

我试图在用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="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)%}{%的变量
{%的条目中的值存在问题}