【问题标题】:How to theme taxonomy terms drupal 8 using taxonomy-term.html.twig如何使用 taxonomy-term.html.twig 为 drupal 8 主题分类术语
【发布时间】:2019-07-14 06:09:25
【问题描述】:

我需要使用一个模板为所有术语的页面设置主题。我尝试这样做,并创建taxonomy-term.html.twig,清除缓存,但它不起作用。我桅杆做什么? 现在我找到了这个(https://drupal.stackexchange.com/questions/217850/how-to-make-page-html-twig-based-on-vocabulary),但它是为每个术语单独设置主题的。我想我需要相同的代码,但所有条款都需要一个文件。

【问题讨论】:

    标签: php twig drupal-8


    【解决方案1】:

    Drupal 8 默认使用 Views 模块来呈现分类术语。

    要解决这个问题,只需禁用名为 Taxonomy term (machine name: taxonomy_term) 的视图。

    一旦禁用,Drupal 8 将使用 taxonomy-term.html.twig 呈现每个分类术语页面。

    【讨论】:

      【解决方案2】:

      您可能将taxonomy-term.html.twig 文件放在Drupal 不查找它的目录中。查看https://www.drupal.org/docs/8/theming-drupal-8/drupal-8-theme-folder-structure 了解更多关于允许的地方。

      如果您启用 twig 调试,您可以看到 Drupal 加载了哪个文件。您可以关注此页面:https://befused.com/drupal/twig-debug。 实质上,启用调试后,通过浏览器查看站点的源代码。 Twig 添加了 HTML cmets 来查找和加载哪些文件。

      为了使主题更容易,我强烈建议停用渲染缓存。来自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'; 
      

      【讨论】:

      • 谢谢。但是,默认情况下,Drupal 8 使用视图()我可以以某种方式将其切换到分类术语.html.twig?我将此文件放在主题目录中,并将示例中的代码粘贴到此处api.drupal.org/api/drupal/…
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-02
      • 1970-01-01
      • 1970-01-01
      • 2011-05-28
      • 2016-04-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多