问题标签 [twig-filter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
twig - Silex 中 Twig 的自定义过滤器
我需要在 Silex 框架中为 Twig 添加自定义过滤器。例如,我想将此函数应用于某个变量:
在 twig-template 中执行以下操作:
阅读http://twig.sensiolabs.org/doc/advanced.html后,我创建了“Project_Twig_Extension.php”:
但我无法理解我需要把这个文件放在哪里,以及如何在 Silex 的“index.php”中注册这个过滤器。
你能给我一步一步的指导吗?方法,在Twig addFilter using Silex 中描述?不工作。
php - 树枝过滤多个参数
我正在尝试创建一个可以处理 2 个参数的特定树枝过滤器。
并将过滤器添加到渲染中:
现在在模板中请求过滤器:
但是,我收到该函数不存在的错误。很奇怪......因为它确实存在并且被包括在内。就像我的其他 15 个过滤器一样。
我是否以错误的方式请求过滤器?(大概是...)
php - 如何在 Symfony3 中获取 TWIG 自定义过滤器参数?
我只是尝试根据示例制作一个简单的 TWIG 过滤器
src/BlogBundle/Services/TwigExtension.php
服务.yml
并在一些 template.twig 中使用它
正确调用回调函数(agoFiler)并显示其输出,但我无法获取过滤器参数。在上面的示例中,我总是返回 NULL,尽管 comment.date 肯定是一个日期(默认 TWIG 的日期过滤器可以正常工作)。如何在 agoFilter 函数中获取 comment.date?
更新:按预期返回,{{ 5|ago }}
返回,但仍然返回,尽管返回正确的日期。integer
{{ [5]|ago }}
array
{{ comment.date|ago }}
{{ comment.getDate()|ago }}
NULL
{{ comment.date|date('d.m.Y') }}
twig - 如何将标量树枝过滤器映射到数组
我有一个简单的浮点数组。我需要将其显示为逗号分隔的字符串。
由于过于微不足道的准确性,因此是不好的解决方案。
不好,因为末尾有多余的逗号。
我想做这样的事情:
但我还没有找到过滤器map
或类似过滤器的树枝。Аnd 我不知道如何实现这样的过滤器。
twig - 在树枝中使用服务而不创建树枝扩展
我有一个服务类:
在/src/App/DesktopBundle/Resources/config/services.yml
我有:
在/app/config/config.yml
我有:
在模板中我尝试:
但我有错误:Variable "mediaService" does not exist in
。你能帮我吗?先感谢您。
php - 树枝 {% raw %} 块内的翻译过滤器
我有一个 html 模板,其中包含一些 handlebarsjs 代码,我将这些代码包含在我的页面中以呈现一些产品弹出窗口。问题是这些模板有点复杂,我也需要翻译它们上的标签,有没有办法将异常通知给树枝解析器?这样,即使代码在raw
块内,它还是会被渲染?显然,如果我使用翻译标签,它就不起作用{{ 'translations.project.template.price'|trans }}
例如:
index.html.twig:
product-template.html.twig:
目前我正在通过将翻译传递给车把呈现的对象来解决它,所以我有这样的东西:
index.html.twig:
模板.渲染(数据);
product-template.html.twig:
这种方法有效,但它显然是矫枉过正,我有模板,我必须在其中传递超过 12 个字符串,这样看起来对我来说效率不高。
有没有办法直接在树枝中解决这个问题?
php - Twig - 如何随机化数组中的项目并循环它们?
如何随机化数组中的项目并循环它们?
我收到此错误:
第 30 行“partials/content.twig”中的未知“shuffle”过滤器。
如果我使用random():
什么都没有返回。
有任何想法吗?
笔记:
我不想使用 PHP 顺便说一句。
symfony - Twig:如何将过滤器应用于翻译字符串
可以说我有这个:
打印这个字符串
这是一个带有一些
<i>
html</i>
标签的字符串。
我想应用 Twig 过滤器striptags
来获得这个:
这是一个带有一些 html 标签的字符串。
如您所见,我已经“删除”了斜体标签。
所以我需要一种方法来做类似的事情:
显然这不是对翻译后的字符串应用过滤器的正确方法,那么,我该怎么做呢?
twig - 如何不在 Twig 模板中转义 path()
我的目标是渲染一个 Twig 模板并通过 API 将生成的 HTML 发送到 Mailchimp 以发送出去。
我目前的流程:
1)创建一个 Twig-Template email.html.twig
。
2)$html = $this->renderView('MyBundle:email.html.twig');
3)sendHtmlViaApi($html);
问题:
我需要一个包含 Mailchimp 合并标记字符串的 URL,它必须是*|VARIABLE|*
. 我用{{ path('my_route', {variable : '*|VARIABLE|*'}) }}
. 期望的结果:/myroute/*|VARIABLE|*
。我得到的结果:/myroute/*%7CVARIABLE%7C*
。
已经尝试和失败的方法:
1)使用{% autoescape %}
2)|raw
3) 带有来自 Symfony2 Twig 的新 url_decode 过滤器的 Twig 扩展停止转义路径
twig - 如何在多行显示的文本中添加“阅读更多”,但只有一定数量的带有树枝的行
我在 twig 中使用以下函数来显示保存在数据库中的新闻项目描述的部分内容:
使用 html 元素中的这个函数p
,我得到字符不超过 300 的文本,然后我添加了一个元素“阅读更多” a
:
此代码适用于包含超过 300 个字符的段落中的文本,但例如,如果我有另一个带有几个“p”元素的文本,然后在 twig 中更改为
元素,我需要它只显示几行,因为我有显示它的容器的最大高度,我不知道该怎么做,因为它会显示所有换行符,直到它不超过 300 个字符。
我需要的是,在 Title2 有很多换行符的情况下,只需显示一些并在之前添加“阅读更多”,以便 div 的高度等于前一个(显示示例我删除了 max-Height和溢出:隐藏)。
我怎么能得到那个?
我提前向您的帮助致意。