在 Twig 中调用变量内部的宏

发布于 2024-10-31 13:30:09 字数 414 浏览 2 评论 0原文

是否可以使用 Twig 模板调用变量内的宏?

{# in your template #}
{% macro say_hello(name) %}
<p>Oh! Hello {{ name }}!</p>
{% endmacro %}

然后...

// In your php script
$post = "Lorem ipsum... {{ _self.say_hello('name') }} ... plus ultra";

后来...

{% ...in template... %}
{{ post }}

我想这样做是为了允许用户自定义他们的博客模板。

谢谢。

Is it possible to call a macro inside a variable using Twig templating?

{# in your template #}
{% macro say_hello(name) %}
<p>Oh! Hello {{ name }}!</p>
{% endmacro %}

And...

// In your php script
$post = "Lorem ipsum... {{ _self.say_hello('name') }} ... plus ultra";

And later...

{% ...in template... %}
{{ post }}

I want to do this to allow users to customize their blog template.

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

面犯桃花 2024-11-07 13:30:09

不,我认为这是不可能的。您最终得到的只是来自 $post 变量的原始数据,如下所示:

Lorem ipsum... {{ _self.say_hello('name') }} ... plus ultra

No, I don't thinks its possible. What you'll end up with is a just raw data from your $post variable something like this:

Lorem ipsum... {{ _self.say_hello('name') }} ... plus ultra
故人爱我别走 2024-11-07 13:30:09

目前可以使用 StringLoader 扩展。

请参阅此示例: http://twig.sensiolabs.org/doc/functions/template_from_string.html

Currently it is possible using StringLoader extension.

See this example: http://twig.sensiolabs.org/doc/functions/template_from_string.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文