コンテンツ タイプに基づいてノード ページのテーマを設定しようとしています。ここでは、 http://drupal.org/node/249726の指示に従おうとしました。
私がしたことは、node.tpl.phpファイルをテーマディレクトリにコピーしました。名前を page-node-mycontenttype.tpl.php に変更し、上記のリンクに示すように、テンプレート ファイルに前処理関数を書き込みました。
ノードのコンテンツのみが表示され、共通のレイアウト要素 (HTML) (page.tpl.php で定義されているロゴ、ヘッダー、フッター、サイドバーなど) は表示されないことが明らかになりました。
では、page-node-mycontenttype.tpl.php で同じ共通レイアウト要素 (HTML) (page.tpl.php で定義されているもの) をもう一度定義する必要がありますか?
もしそうなら、2 つのテンプレート ファイルを管理する必要があります。HTML の変更は、両方のテンプレート ファイルで 2 回行う必要があります。
ページとノードの両方のコンテンツ タイプで共通のレイアウト テンプレート ファイルを参照するより良い方法はありますか?
これを達成するための一般的な慣行と方法を教えてください。
注:コンテンツ タイプに関してノード テンプレート ファイルをオーバーライドするには、テンプレート ファイル node.tpl.php と node-[content_type].tpl.php ファイルの両方がテーマ ディレクトリにある必要があることを確認してください。