【问题标题】:Drupal 8 how to create a template for a custom block typeDrupal 8 如何为自定义块类型创建模板
【发布时间】:2018-11-23 09:52:38
【问题描述】:

我想为我创建的自定义块类型创建一个模板,方法是转到结构/块布局/类型/添加自定义块类型。我创建的类型称为菜单。如何从这里为这种自定义块类型创建模板?我对 Drupal 不太熟悉,因此我们将不胜感激。

【问题讨论】:

    标签: drupal drupal-8 drupal-theming drupal-blocks custom-code


    【解决方案1】:

    首先,将主题建议添加到您的主题中,将其粘贴到 yourthemename.theme 文件中

    function yourthemename_theme_suggestions_block_alter(array &$suggestions, array $variables)
    {
      // Block suggestions for custom block bundles.
      if (isset($variables['elements']['content']['#block_content'])) {
        array_splice($suggestions, 1, 0, 'block__bundle__' . $variables['elements']['content']['#block_content']->bundle());
      }
    }
    

    现在您可以为每个块捆绑使用主题建议,将 block.html.twig 复制到您的主题并将其重命名为:block--bundle--your-block-type.html.twig

    【讨论】:

    • 以及确保在 development.services.yml 中启用 twig.debug 以打印页面用于该块的 twig 模板。 (见drupal.org/node/2598914
    猜你喜欢
    • 2016-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 2022-11-12
    • 2016-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多