我怎样才能强制一个树枝变量解析为一个字符串?
How can I force a twig variable to resolve to a string?
我有一个在博客页面底部生成 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
解析为预期值?
我能够使用 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",
你可以使用template_from_string
树枝的功能:
The template_from_string
function is not available by default. You must add the Twig_Extension_StringLoader extension explicitly when creating your Twig environment:
您可以在 http://twig.sensiolabs.org/doc/2.x/functions/template_from_string.html
上找到更多详细信息
我有一个在博客页面底部生成 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
解析为预期值?
我能够使用 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",
你可以使用template_from_string
树枝的功能:
The
template_from_string
function is not available by default. You must add the Twig_Extension_StringLoader extension explicitly when creating your Twig environment:
您可以在 http://twig.sensiolabs.org/doc/2.x/functions/template_from_string.html
上找到更多详细信息