我正在尝试访问深入嵌入数组的内容类型的值。这是实际情况:
我想使用其他字段信息自定义Drupal 8的默认搜索结果页面布局。要知道哪些字段可供我访问,我使用了{{ kint(item.value) }}
,其中显示了这一点:
我要访问的字段嵌套在 #result>node>fields
下,如body
,field_category
等。
有什么方法可以直接在我的树枝模板中访问它们吗?我在猜{{ item.value['node']['fields']['field_name']} }
之类的东西?但这没有给我什么!
我思考的方式很可能不是一种合适的方法,甚至可能根本就不是一种方法!我对Drupal来说还是一个新手。
我想要的只是访问嵌套在数组结构内部深处的所需字段。是否有一种拇指规则或语法可供遵循?如果有人请解释从嵌套的Drupal数组中访问特定元素的过程,这将是一个很大的帮助。
注意:为了自定义布局,我将item-list.html.twig
文件从/core/themes/stable/templaes/dataset
复制到了我主题的模板文件夹。
Drupal版本:8.2.3
编辑:搜索结果的模板文件(item-list.html.twig
)
<p class="righteous">Makes sure the page is being hit!</p>
{% if context.list_style %}
{%- set attributes = attributes.addClass('item-list__' ~ context.list_style) %}
{% endif %}
{% if items or empty %}
{%- if title is not empty -%}
<h3>{{ title }}</h3>
{%- endif -%}
{%- if items -%}
<{{ list_type }}{{ attributes }}>
{%- for item in items -%}
<li{{ item.attributes }}>{{ content.body }}</li>
{%- endfor -%}
</{{ list_type }}>
{%- else -%}
{{- empty -}}
{%- endif -%}
{%- endif %}
答案 0 :(得分:0)
如果要渲染模板中的特定字段,则必须使用例如:
{{ content.field_feature }}
您可以在数组或d8的UI中看到字段的计算机名称。
{{ content.field_<machine-name> }}
有了这个,你可以自己访问你的数组并主题你的内容类型。