我是一名Drupal开发人员,在我的Drupal网站上,我创建了一期名为test1时事通讯的时事通讯。时事通讯内容
我使用Twig作为我的模板引擎,并将Twig文件simplenews-newsletter-body--default.html.Twig应用于我的test1时事通讯。
我需要在我的Twig文件中放入一些内联css样式。为此,我遵循了https://twig.symfony.com/doc/2.x/filters/inline_css.html它告诉我,我首先需要下载几个库:twit/csinliner-extra和twitc/extra bundle,我在我的终端中做了这些(下面给出的代码(:
composer require twig/cssinliner-extra
composer require twig/extra-bundle
这就是我的简单news-newsletter-body--default.html.twig文件的样子:
{% apply inline_css %}
<html>
<body>
<div id="email" style="width:600px;margin: auto;background:white;">
<!-- Header -->
<table role="presentation" border="0" width="100%" cellspacing="0">
<tr>
<td bgcolor="#E2FFF8" align="center" style="color: black;">
<h1 style="font-size: 52px; margin:0 0 20px 0; font-family:Avenir;"> {{ node.getTitle }}</h1>
</tr>
</td>
</table>
</div>
</body>
</html>
{% endapply %}
当我去我的Drupal网站给自己发test1时事通讯的电子邮件时(在标题"测试电子邮件地址"下(看这里
我得到一个未知的";inline_css"过滤器错误。这是非常奇怪的行为,因为我确实成功地将库安装到了我的Twig目录中(来自composer,需要上面给出的代码(。
The website encountered an unexpected error. Please try again later.
TwigErrorSyntaxError: Unknown "inline_css" filter. in TwigExpressionParser->getFilterNodeClass()
如inline_css页面所示,默认情况下不会加载它
幸运的是,似乎有人已经制作了一个名为twig_inline_css的模块,它似乎完全可以满足您的需求
使用composer安装模块,您就可以开始了。或者只需将少量代码复制到您自己的自定义模块中。