Seperti yang dilaporkan dalam Saran Template Drupal 7 , saran template yang digunakan secara default dari Drupal 7 untuk halaman adalah halaman - [depan | internal / path] .tpl.php.
Untuk halaman yang terlihat di http://www.example.com/node/1/edit , Drupal akan mencari file templat berikut:
- halaman - simpul - edit.tpl.php
- halaman - simpul - 1.tpl.php
- halaman - node.tpl.php
- page.tpl.php
Untuk menambahkan saran tambahan, tema Anda harus menerapkan template_preprocess_page () dan menambahkan saran baru di $variables['theme_hook_suggestions']
( $variables
adalah variabel yang diteruskan oleh referensi ke fungsi).
Jika Anda melakukannya, maka satu-satunya alasan file templat yang disarankan tidak digunakan adalah karena file tersebut tidak diberi nama dengan benar: dalam kasus ini halaman menampilkan halaman buku, misalnya, file templat tersebut harus berupa halaman - book.tpl .php. Anda dapat mengubah kode untuk tema Anda, dan membiarkannya menggunakan halaman - template node-type.tpl.php, jika tidak menemukan template seperti halaman - book.tpl.php.
Untuk memperhatikan juga bahwa, di theme_get_suggestions () (yang merupakan fungsi yang disebut oleh template_preprocess_page () ) tanda hubung diganti dengan _
, dan bukan sebaliknya. Alasan yang dilakukan dijelaskan dalam komentar yang dilaporkan dalam kode fungsi.
// When we discover templates in drupal_find_theme_templates(),
// hyphens (-) are converted to underscores (_) before the theme hook
// is registered. We do this because the hyphens used for delimiters
// in hook suggestions cannot be used in the function names of the
// associated preprocess functions. Any page templates designed to be used
// on paths that contain a hyphen are also registered with these hyphens
// converted to underscores so here we must convert any hyphens in path
// arguments to underscores here before fetching theme hook suggestions
// to ensure the templates are appropriately recognized.
$arg = str_replace(array("/", "\\", "\0", '-'), array('', '', '', '_'), $arg);