我今天刚刚开始使用Smarty,所以我可能完全错了,但我似乎无法找到问题的解决方案.我试图让for循环迭代4次,每次迭代增加$ i.很标准的东西.
根据Smarty文档,for循环应该是以下形式:
{for $var=$start to $end}
Run Code Online (Sandbox Code Playgroud)
我当前的循环语句如下:
{for $i=0 to 3}
Run Code Online (Sandbox Code Playgroud)
但是我在运行时收到以下错误:
致命错误:Smarty错误:[in ..views/landing/index.tpl第69行]:语法错误:无法识别标签'for'(Smarty_Compiler.class.php,第590行)in ../library/1.11/Smarty/Smarty 1093行的.class.php
循环在第69行,这是编译器失败的行.我还缩短了该错误消息中的URL以便于阅读.
我不确定我在这里做错了什么.我试过谷歌搜索错误信息的各个部分,但无济于事.
谢谢你的时间.
我在做一些我认为应该是相对简单的drupal 8视图的问题.
我有一个名为Countries的内容类型.我想在一个视图块中显示我主页上的3个最新国家节点.每个国家/地区都在容器div上显示"views-row"类.我正在使用视图 - 视图 - 未格式化 - 国家/地区 - block_1.tpl来模拟输出.
我想输出类似以下标记的内容:
<a class="view-row-1" href="/link/to/node">
<img src="source-of-teaser-image.png">
<h3>Title of node</h3>
</a>
<a class="view-row-2" href="/link/to/node">
<img src="source-of-teaser-image.png">
<h3>Title of node</h3>
</a>
<a class="view-row-3" href="/link/to/node">
<img src="source-of-teaser-image.png">
<h3>Title of node</h3>
</a>
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是访问模板中的各个字段.如果我使用视图模式,我可以访问各个字段.如果我在视图中选择"显示字段",我可以为"查看结果计数器"和"路径"添加一个字段,这将允许我添加"view-row-N"类并将a标记链接到节点,但我无法单独访问这些字段.我有{{row.content}}变量,但任何进一步挖掘变量的尝试(例如row.content.field_name)都没有给我任何信息并且调用{{dump(row.content)}}会使网站崩溃.
由于两个原因,我无法将其输出为视图模式.我无法在视图模式下访问"查看结果计数器"或"路径"字段,即使我有这些变量,某些字段也会嵌套在其他字段中(图像和标题嵌套在其中)
我觉得这应该真的很简单
<a class="view-row-{{ row.content.view_result_counter }}" href="{{ row.content.path }}">
Run Code Online (Sandbox Code Playgroud)
等等,但我已经尝试了我能想到的一切.我完全走错了路吗?到目前为止,Twig和我相处得不好......