2017-03-16 58 views
1

我有一个树枝模板,可以在博客页面的底部生成JSON-LD。这里是JSON元数据的一部分:如何强制一个树枝变量来解析字符串?

{% set dateString %} 
     "datePublished": "{{ post.post_date|date('c') }}", 
    {% endset %} 
    {{ post.settings.hide_publish_date ? '' : '{{ dateString }}' }}, 

当我查看网页的源代码是这样的输出:

"DatePublished": "{{ dateString }}", 

我希望看到的是这样的:

"DatePublished": "2017-03-15T10:59:56+00:00", 

如何确保我的变量dateString解析为期望值?

回答

0

我能够通过使用twig replace filter正确输出日期值。

{% set dateString %} 
    "datePublished": "{{ post.post_date|date('c') }}", 
{% endset %} 
{{ post.settings.hide_publish_date ? '' : '%dateOutput%'|replace({'%dateOutput%': dateString}) }} 

的网页现在的预期值输出到JSON-LD:

"DatePublished": "2017-03-15T10:59:56+00:00", 
+1

'{%设定dateString =更多的细节:创建枝杈环境时,必须明确添加Twig_Extension_StringLoader扩展c')〜'“,'%}' – DarkBee

+1

'set'和'endset'之间的分支不是内插的,就像PHP中的'''和'”'一样 – DarkBee