{{ 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.
这个小提琴有效:
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> foo</li></ul>'
];
echo $template->render($variables);
(老实说,有 ChatGPT 的一点帮助,但由人类提示和验证)