PHP Twig 中的 for 循环
PHP for-loop in Twig
我在 Twig 中循环时遇到了一个小问题。
如何循环整个sub-nav
?目前它使 sub-nav
in sub-nav
嵌套。
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
{% endfor %}</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
{% endif %}
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endfor %}
</ul>
您的最后一个 endfor
标签应该 在 之后 </ul>
。
看完你的转储后,一切正常
我认为您应该按如下方式编辑您的代码:
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
{% endfor %}</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
{% endif %}
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
<!-- replace the end for after the ul -->
</ul>
{% endfor %}
欢迎在此处发表评论,我可以为您提供帮助
如果它不起作用,请尝试检查您的网页并从您的数据库中搜索随机名称,我所做的是在 html 输出词“扫描仪”等上搜索您的D b 。 :) 好锁
在 twig 中非常重要,正确关闭 if
语句和 for
语句...我没有检查过这段代码是否有效,但您可以...:)
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endif %}
</ul>
{% endfor %}
{% endif %}
我在 Twig 中循环时遇到了一个小问题。
如何循环整个sub-nav
?目前它使 sub-nav
in sub-nav
嵌套。
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
{% endfor %}</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
{% endif %}
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endfor %}
</ul>
您的最后一个 endfor
标签应该 在 之后 </ul>
。
看完你的转储后,一切正常 我认为您应该按如下方式编辑您的代码:
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
{% endfor %}</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
{% endif %}
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
<!-- replace the end for after the ul -->
</ul>
{% endfor %}
欢迎在此处发表评论,我可以为您提供帮助
如果它不起作用,请尝试检查您的网页并从您的数据库中搜索随机名称,我所做的是在 html 输出词“扫描仪”等上搜索您的D b 。 :) 好锁
在 twig 中非常重要,正确关闭 if
语句和 for
语句...我没有检查过这段代码是否有效,但您可以...:)
{% if categories %}
{% for category in categories %}
<ul class="sub-nav">
<li>
<a href="{{ category.href }}" class="cat-name">{{ category.name }}</a>
<ul class="sub-sub-nav list-inline">
{% if category.children %}
<li class="list-inline">
<a class="sub-cat-name" href="">{% for children in category.children|batch(category.children|length / category.column|round(1, 'ceil')) %}</a>
<ul class="sub-cat-menu">
{% for child in children %}
<li><a href="{{ child.href }}">{{ child.name }}</a></li>
{% endfor %}
</ul>
</li>
<a href="{{ category.href }}" class="see-all">{{ text_all }} {{ category.name }}</a>
</ul>
</li>
{% else %}
<li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endif %}
</ul>
{% endfor %}
{% endif %}