我在做一些我认为应该相对简单的drupal 8 View 时遇到了麻烦。
我有一个称为国家的内容类型。我想在我的主页上的 View 栏中显示3个最新的国家/地区节点。每个国家/地区在容器div上显示为“views-row”类。我正在使用 View - View -未格式化-国家-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>
我遇到的问题是访问模板中的各个字段。如果使用查看模式,则可以访问各个字段。如果在 View 中选择“显示字段”,则可以为“ View 结果计数器”和“路径”添加一个字段,这将允许我添加“view-row-N”类并将该标记链接到节点,但我无法单独访问这些字段。我有{{row.content}}变量,但是任何进一步深入该变量的尝试(例如row.content.field_name)都没有给我任何帮助,调用{{dump(row.content)}}会使网站崩溃。
由于以下两个原因,我无法将其输出为查看模式。我无法在查看模式下访问“查看结果计数器”或“路径”字段,即使我拥有这些变量,某些字段也会嵌套在其他字段中(图像和标题嵌套在中)
我觉得这应该真的很简单
<a class="view-row-{{ row.content.view_result_counter }}" href="{{ row.content.path }}">
等等,但是我已经尽力了。我完全走错了路吗?特威格(Twig)和我到目前为止相处不融洽...
最佳答案
我想出了一种使用kint的方法。
在views-view-unformatted.html.twig内部,使用以下代码显示您的各个字段:
{% for row in rows %}
{{ row.content['#view'].style_plugin.render_tokens[ loop.index0 ]['{{ YOUR_FIELD_NAME }}'] }}
{% endfor %}
关于twig - 访问Drupal 8 View 模板中的各个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40101100/