web-dev-qa-db-ja.com

menu_hookページのpage.tpl.phpのオーバーライド

hook_menuにあるカスタムページのテンプレートを上書きしようとしています。

 $items['announce_your_new_products'] = array(
    'title' => 'Announce Your New Products',
    'description' => 'Announce New Products.',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('announce_new_product_form'),
    'access arguments' => array('access content'),
    'file' => 'view_new_products.pages.inc',
    'type' => MENU_CALLBACK,   );

特定のノードのページテンプレートを上書きするために読んだのはpage--node-[nid].tpl.phppage--announce_your_new_products.tpl.phpで、アンダースコアありとアンダースコアなしですが、これにはnidがないため、誰かが私に正しい方向を教えてくれることを望んでいましたこれを達成するために。 page--node-announce_your_new_prodcts.tpl.phpを試しましたが、動作しないようです。ありがとうございました。

5
dm03514

あなたは必要ありませんnode-は、パスがノードページではないため、テンプレートファイル名の先頭にあります。 Drupal 7テーマフックの提案 をオフにすると、ファイルは次のように呼び出されます。

page--announce_your_new_products.tpl.php

それでもうまくいかない場合は、以下を試してください。

page--announce-your-new-products.tpl.php

残念ながら、ドキュメントはどちらの方法が機能するかについてあまり明確ではありません。

5
Clive