Php 在Pico CMS内容标记文件中如何定义数组

Php 在Pico CMS内容标记文件中如何定义数组,php,twig,yaml,Php,Twig,Yaml,在我简单的基于Pico(0.9)的网站中,我想添加一些类别页面,这些页面将列出一组对象,每个类别都不同,并在每个类别的标记文件中定义。理论上,应该可以使用set%}语法中的{%for object%}在细枝模板中列出它们 我一直很高兴使用自己的插件从.md文件中获取自己的变量,该插件将我的自定义键值对标签:映射到模板中meta变量中的自定义字段。但我就是不能让它与数组一起工作 显然,markdown头文件使用YAML,我已经阅读了该文件的规范,有很多方法可以指定这样的列表。所以我尝试过像 /*

在我简单的基于Pico(0.9)的网站中,我想添加一些类别页面,这些页面将列出一组对象,每个类别都不同,并在每个类别的标记文件中定义。理论上,应该可以使用set%}语法中的
{%for object%}在细枝模板中列出它们

我一直很高兴使用自己的插件从
.md
文件中获取自己的变量,该插件将我的自定义
键值对标签:
映射到模板中
meta
变量中的自定义字段。但我就是不能让它与数组一起工作

显然,markdown头文件使用YAML,我已经阅读了该文件的规范,有很多方法可以指定这样的列表。所以我尝试过像

/*
Title: Example Category Page - Cutlery
My Items: ['fork', 'spoon', 'knife']
*/
或者这个:

/*
Title: Example Category Page - Cutlery
My Items:
 - fork
 - spoon
 - knife
*/
但是当它加载到模板中时(我的插件将其映射到
meta.my_items
),代码如下:

{% for item in meta.my_items %}
    <p>{{ item }}</p>
{% endfor %}
{%for meta.my_items%}
{{item}}

{%endfor%}
如果数组
meta.my_items
为空,则不显示任何内容

理想情况下,我希望将数组中的对象从简单字符串扩展到一组KVP(标题、图像、描述),我应该能够在YAML中这样做

所以我的问题是-这在Pico CMS中是否得到支持?如果是,我做错了什么

我尝试过(使用1.0版),但我找到的唯一有效解决方案是在定义中使用uderscore名称重命名它。所以试试这个:

My_Items: ['fork', 'spoon', 'knife']
与此相反:

My Items: ['fork', 'spoon', 'knife']

希望能有所帮助。

您尝试过的两种方法中的YAML都代表完全相同的结构,只是在样式(流与块)上有所不同,但在语义上却不同。如果一个不起作用,尝试另一个是浪费时间。虽然你在一个完美的世界里是对的,但这并不完美。我不同意以不同的方式尝试事情是浪费时间,这可能导致见解和解决办法。这里有五个可能暴露的问题。。。1.用户对其中一种样式的语法有误解,2。细微的打字错误会导致语法错误,3。其中一种样式4的文档不正确。使用中的YAML解析器未完全实现标准,5。YAML解析器中的错误。另外,特别是对于stackoverflow,它表明在我提出问题之前已经做了研究,不会得到我已经尝试过的答案。我发现升级到pico cms 1.0使这一切成为可能。@Matteo示例中的语法与我问题中第二个示例中的“划线分隔”样式一样有效。不仅如此,我还能够用多个字段定义列表项,这非常有用。升级破坏了我主题中的一些东西,但我相信它们可以修复。谢谢