次のような前処理ページフックを使用して成功しました。
function mytheme_preprocess_page__node_front(&$variables) {
...
}
と
function mytheme_preprocess_page__node_12(&$variables) {
...
}
それぞれ、page--front.html.twig および page--12.html.twig という名前のカスタム テンプレートと相関します。
ビデオというコンテンツ タイプに同じフックとテンプレートの組み合わせを実装しようとしています。私の例は特定のページのカスタム テンプレートであり、私の目標はコンテンツ タイプ全体のカスタム テンプレートであるという違いがあることは理解していますが、node--video.html.twig という名前のカスタム テンプレートを取得しました。すべてのビデオ ページのテンプレート。ただし、このテンプレート名に基づいてフックを作成しようとすると:
function mytheme_preprocess_node__video(&$variables) {
...
}
これは動作しません。このようなフックを定義できないか、名前が間違っているだけだと思います。すべてのノードのフックを定義し、各タイプを個別に処理する if ステートメントを記述する必要があることを暗示しているように思われるthisなど、これに多少関連するいくつかのスレッドを見つけました。そう.......
最後の質問: コンテンツ タイプ全体のフックを定義できますか? もしそうなら、何が間違っていますか?