0
我注意到团队已经删除了块 - [区域] .twig.html模块钩子。 https://www.drupal.org/node/1968360每个区域的模板钩子建议
但是,我有一个网站从D7迁移并使用模板很多。
我是前端开发人员,所以我没有任何编写自定义主题钩子的经验,是否有任何主题钩子可以用来制作区域作品的模板?
我注意到团队已经删除了块 - [区域] .twig.html模块钩子。 https://www.drupal.org/node/1968360每个区域的模板钩子建议
但是,我有一个网站从D7迁移并使用模板很多。
我是前端开发人员,所以我没有任何编写自定义主题钩子的经验,是否有任何主题钩子可以用来制作区域作品的模板?
将此代码添加到您的THEMENAME.theme文件:
function THEMENAME_theme_suggestions_block_alter(array &$suggestions, array $variables) {
if (!empty($variables['elements']['#id'])) {
$block = Block::load($variables['elements']['#id']);
$suggestions[] = 'block__' . $block->getRegion();
$suggestions[] = 'block__' . $block->getRegion() . '__' . $variables['elements']['#id'];
} else if (isset($variables['elements']['#configuration']['region'])) {
$suggestions[] = 'block__page_' . $variables['elements']['#configuration']['region'];
$suggestions[] = 'block__page_' . $variables['elements']['#configuration']['region'] . '__' . end(explode(':', $variables['elements']['#plugin_id']));
}
return $suggestions;
}
我发现这个代码,但我补充一点。