Conforme relatado nas Sugestões de modelos do Drupal 7 , a sugestão de modelo usada por padrão no Drupal 7 para páginas é página - [frente | interno / caminho] .tpl.php.
Para uma página visível em http://www.example.com/node/1/edit , o Drupal procuraria os seguintes arquivos de modelo:
- página - nó - edit.tpl.php
- página - nó - 1.tpl.php
- página - node.tpl.php
- page.tpl.php
Para adicionar sugestões extras, seu tema deve implementar template_preprocess_page () e adicionar novas sugestões em $variables['theme_hook_suggestions']
( $variables
é a variável passada por referência à função).
Se você fez isso, a única razão pela qual o arquivo de modelo sugerido não está sendo usado é porque o arquivo não está nomeado corretamente: no caso de a página mostrar uma página de livro, por exemplo, o arquivo de modelo deve ser page - book.tpl .php. Você pode alterar o código do seu tema e deixá-lo usar a página - modelo node-type.tpl.php, se não encontrar um modelo como a página - book.tpl.php.
Observe também que, em theme_get_suggestions () (que é a função chamada por template_preprocess_page () ), os hífens são substituídos por _
, e não vice-versa. O motivo é explicado em um comentário relatado no código de função.
// 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);