Shopware 树枝小提琴

问题描述 投票:0回答:1

我想在 https://shopware.foo/

中渲染树枝表达式
{{ page.product.translated.description|raw|striptags|sw_sanitize|u.truncate(125, '…') }}

https://twigfiddle.com/ 但不支持

sw_sanitize

如何以编程方式运行 twig 解释器。

我尝试过(小提琴

var_dump($container->getParameter('kernel.shopware_version'));


$loader = new \Twig\Loader\ArrayLoader([
    'template.twig' => "Hello {{ name|raw|striptags|sw_sanitize|u.truncate(125, '…') }}!",
]);
$twig = new \Twig\Environment($loader);

echo $twig->render('template.twig', ['name' => ' foo ']);

但这也不会加载

sw_sanitize
过滤器:

Unknown "sw_sanitize" filter in "template.twig" at line 1.
twig shopware6
1个回答
0
投票

这个小提琴有效:

var_dump($container->getParameter('kernel.shopware_version'));

$twig = $container->get('twig');

$templateString = "Hello {{ name|raw|striptags|sw_sanitize|u.truncate(125, '…') }}!";
$template = $twig->createTemplate($templateString);

// Provide variables to the template
$variables = [
    'name' => '<ul><li>&nbsp;foo</li></ul>'
];

echo $template->render($variables);

(老实说,有 ChatGPT 的一点帮助,但由人类提示和验证)

© www.soinside.com 2019 - 2024. All rights reserved.