我希望扩展OpenCart 3.0.3.2中的“ if”和“ for”测试功能...我从未坦白地体验过TWIG(我对perl感到满意),所以我会尽力避免惹恼或输掉任何人。
在OpenCart后端: 设计->主题编辑器我正在处理TWIG文件: 普通/footer.twig 具体来说,我正在研究下面显示的第一栏“信息”。
{% if informations %}
<div class="col-sm-3">
<h5>{{ text_information }}</h5>
<ul class="list-unstyled">
{% for information in informations %}
<li> <a style="font-size: 10pt;" href="{{ information.href }}">
<i style="color: #FFCC00; font-size: 9pt;margin-right: 2px;" aria-hidden="true" class="fas fa-info"></i>
{{ information.title }}</a></li>
{% endfor %}
</ul>
</div>
{% endif %}
上面的“ if”和“ for”测试正在返回站点运营商定义的值,
目录->信息-“信息” [隐私,条款,退款等],将在页脚中显示为锚点。
到目前为止,我已经尝试制定出我认为可行的方法,但是我只能在最坏的情况下产生应用程序错误,或者绝对不会从我想到的测试中打印任何内容。
下面,我将因不打印任何内容而失败的尝试而感到尴尬。
{% if informations %}
<div class="col-sm-3">
<h5>{{ text_information }}</h5>
<ul class="list-unstyled">
{% for information in informations == "Privacy Policy" %}
<li> <a style="font-size: 10pt;" href="{{ information.href }}">
<i style="color: #FFCC00; font-size: 10pt;margin-right: 2px;" aria-hidden="true" class="fas fa-user-secret"></i> {{ information.title }}</a></li>
{% endfor %}
</ul>
</div>
{% endif %}
我想实现的是在TWIG的“ if”和“ for”测试上进行扩展,以便可以确定这些返回值之一是“ Privacy Policy”还是“ Delivery Information”,例如文本除了与该值相关的适当的Font Awesome图标之外,还将在页脚中打印信息。
任何输入将不胜感激,在此先感谢您抽出宝贵的时间阅读此更不用说的回复了。
最好的问候
答案 0 :(得分:1)
您看不到任何输出的主要原因是您的语法已关闭。
{信息中的信息所占百分比==“隐私权政策”%}
那并不能满足您的期望。您要做的只是在循环中检查一个特定的值并采取相应的措施:
{% if informations %}
<div class="col-sm-3">
<h5>{{ text_information }}</h5>
<ul class="list-unstyled">
{% for information in informations %}
{% if information.title == "Privacy Policy" %}
<li>
<a style="font-size: 10pt;" href="{{ information.href }}">
<i style="color: #FFCC00; font-size: 10pt;margin-right: 2px;" aria-hidden="true" class="fas fa-user-secret"></i> {{ information.title }}
</a>
</li>
{% else %}
<li>
<a style="font-size: 10pt;" href="{{ information.href }}">
{{ information.title }}
</a>
</li>
{% endif %}
{% endfor %}
</ul>
</div>
{% endif %}
如果选中information.title
,请注意嵌套。