Drupal无法识别新Twig文件的问题求助
解决Drupal无法识别新Twig文件的排查步骤
确认Twig文件命名与路径完全符合Drupal模板规范:
- 自定义模板需遵循
[主题名]-[钩子名].html.twig格式,主题模板放templates/目录,模块模板放对应模块的templates/目录 - 注意文件名大小写,ddev/docker用类Unix环境,大小写敏感,比如
page--front.html.twig不能写错大小写
- 自定义模板需遵循
检查development.services.yml的Twig配置:
- 确保已禁用Twig缓存,配置如下:
parameters: twig.config: debug: true auto_reload: true cache: false - 确认该文件未被意外覆盖,且settings.local.php里没有强制开启Twig缓存的配置
- 确保已禁用Twig缓存,配置如下:
验证ddev容器内的文件同步:
- 执行
ddev ssh进入容器,到对应主题/模块的templates目录下,确认新Twig文件存在 - 排除本地文件到容器的同步延迟问题
- 执行
确认主题/模块状态:
- 执行
drush theme:list检查当前启用的默认主题,drush module:list检查模块是否启用 - 未启用的主题/模块,其Twig文件不会被识别
- 执行
强制清理Twig专属缓存:
- 执行
drush cache:rebuild twig单独清理Twig缓存,比全量缓存清理更精准 - 或者直接删除容器内Twig缓存目录:
rm -rf sites/default/files/php/twig/,之后再跑drush cr
- 执行
检查settings.local.php配置:
- 确认没有设置
$config['system.performance']['cache']['page']['max_age']为非0值,避免强制页面缓存 - 确保
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';这行代码正确引入了开发环境配置
- 确认没有设置
内容的提问来源于stack exchange,提问作者MM Williams
相关产品推荐
相关产品推荐

