我需要使用一个模板对所有术语页面进行主题化。我尝试这样做,并创建taxonomy-term.html.twig,清除缓存,但是它不起作用。我桅杆做什么? 现在,我找到了这个(https://drupal.stackexchange.com/questions/217850/how-to-make-page-html-twig-based-on-vocabulary),但这是为了分别为每个术语设定主题。我想我需要相同的代码,但所有条款都需要一个文件。
答案 0 :(得分:0)
您可能将taxonomy-term.html.twig
文件放在Drupal找不到的目录中。看看https://www.drupal.org/docs/8/theming-drupal-8/drupal-8-theme-folder-structure,了解有关允许的地方的更多信息。
如果启用树枝调试,则可以查看Drupal加载的文件。您可以关注此页面:https://befused.com/drupal/twig-debug。 本质上,启用调试后,通过浏览器查看站点的源。 Twig在要查找的文件和加载的文件上添加了HTML注释。
为了简化主题制作,强烈建议停用渲染缓存。来自https://www.drupal.org/node/1903374:
要禁用渲染缓存,请在以下任一行中添加以下行: settings.php,请注意不要将其添加到生产站点 或settings.local.php,方法是先取消注释settings.php底部的行。 这些行是:
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';
$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';
答案 1 :(得分:0)
Drupal 8默认使用“视图”模块来呈现分类术语。
要解决此问题,只需禁用名为分类术语(machine name: taxonomy_term
)的视图。
禁用后,Drupal 8将使用taxonomy-term.html.twig
渲染每个分类术语页面。