我已经成功使用了预处理页面挂钩,例如:
function mytheme_preprocess_page__node_front(&$variables) {
...
}
和
function mytheme_preprocess_page__node_12(&$variables) {
...
}
分别与名为 page--front.html.twig 和 page--12.html.twig 的自定义模板相关联。
我正在尝试为名为 Video 的内容类型实现相同的钩子和模板配对。我知道不同之处在于我的示例是针对特定页面的自定义模板,而我的目标是针对整个内容类型的自定义模板,但是我得到了一个名为 node--video.html.twig 的自定义模板,它可以作为所有视频页面的模板。但是,当我尝试基于此模板名称编写挂钩时:
function mytheme_preprocess_node__video(&$variables) {
...
}
这不起作用。我认为我要么无法定义这样的钩子,要么我只是错误地命名它。我发现了一些与此有些相关的线程,例如这似乎暗示我需要为所有节点定义一个钩子,然后编写一个 if 语句来分别处理每种类型。所以.......
最后一个问题:我可以为整个内容类型定义一个钩子吗?如果可以,我做错了什么?