Php 细枝错误加载程序:未定义模板-Drupal
我在Drupal中创建了一个Php 细枝错误加载程序:未定义模板-Drupal,php,drupal,twig,drupal-8,Php,Drupal,Twig,Drupal 8,我在Drupal中创建了一个include: {%include目录~'/partials/header.html.twig%} 但我得到了这个错误: Twig\u错误\u加载程序:未在第1行“themes/custom/myteme/partials/header.html.Twig”的“themes/Core\Template\Loader\ThemeRegistryLoader:无法在Drupal主题注册表中找到模板“themes/custom/myteme/partials/header
include
:
{%include目录~'/partials/header.html.twig%}
但我得到了这个错误:
Twig\u错误\u加载程序:未在第1行“themes/custom/myteme/partials/header.html.Twig”的“themes/Core\Template\Loader\ThemeRegistryLoader:无法在Drupal主题注册表中找到模板“themes/custom/myteme/partials/header.html.Twig”)。在Twig\u Loader\u Chain->getCacheKey()中(vendor/Twig/Twig/lib/Twig/Loader/Chain.php的第115行)。
根据Drupal和Twig文档,我的做法是正确的
我有一个名为partials
的目录和一个名为header.html.twig
的文件
我做错了什么?我在MAMP和OSX运营Drupal,El Capitan。Drupal 8.3.7在Drupal 8中使用Twig的
include
或extends
时,必须指定主题/模块名称空间
以下是Drupal.org的完整解释:
另外,您应该将您的部分文件添加到自定义主题的模板文件夹中。这是最好的做法
用法示例
{% include "@mytheme/partials/favicons.html.twig" %}
嗨,你清理你的缓存了吗?是的,很多次了!您可以在主题上添加drupal plz的版本吗。您是否将主题附加到注册表,是新模块还是覆盖了核心文件?是Drupal 8.3.7,我没有将主题附加到注册表,不是一个新模块,我也没有触及核心文件。因此,您有2个解决方案创建一个新模块制作一个挂钩,以附加regitry到您的模板或覆盖您使用的模板,但这意味着您无法更新模板或覆盖核心。第一个解决方案是最好的,敬请注意。在这里解决您的问题谢谢!我把它移到了templates文件夹中,现在可以正常工作了!没有错误,还在学习:)很高兴它能帮助你!没有错误,我们总是学习新东西。很高兴认识你。