Drupal 8 如何为自定义块类型创建模板
Drupal 8 how to create a template for a custom block type
我想为我创建的自定义块类型创建一个模板,方法是转到 structure/block 布局/类型/添加自定义块类型。我创建的类型称为菜单。我如何从这里为这种自定义块类型创建模板?我对 Drupal 不太熟悉,因此将不胜感激。
首先,将主题建议添加到您的主题中,将其粘贴到 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
我想为我创建的自定义块类型创建一个模板,方法是转到 structure/block 布局/类型/添加自定义块类型。我创建的类型称为菜单。我如何从这里为这种自定义块类型创建模板?我对 Drupal 不太熟悉,因此将不胜感激。
首先,将主题建议添加到您的主题中,将其粘贴到 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