Как мне назвать файлы шаблонов узлов для моей темы?
Я немного запутался в том, как называть файлы шаблонов. Это первый раз, когда я начал возиться с шаблонами в drupal 7, и почему-то я этого не понимаю.
Мне нужен файл шаблона, который изменит поведение моих записей в блоге, которые находятся на моей главной странице. В Drupal 6 файл с именем node-blog.tpl.php это было все, что мне нужно было, чтобы испортить свои записи в блоге.
Я попробовал то же самое с Drupal 7, но это не сработало. Я искал ответ и прочитал, что следующая функция должно быть уместно при выборе файлов шаблонов.
function template_preprocess_node(&$variables) {
...
// Clean up name so there are no underscores.
$variables['theme_hook_suggestions'][] = 'node__' . $node->type;
$variables['theme_hook_suggestions'][] = 'node__' . $node->nid;
}
Я также читал о некотором преобразовании между "-" и "_", потому что "-" нельзя было использовать в именах функций. Поэтому я попробовал несколько вариантов.
node__blog.tpl.php
node--blog.tpl.php
node-blog.tpl.php
node_blog.tpl.php
Ни один из них не распознается Drupal. Что я делаю не так?
2 answers
Должно работать следующее:
node--blog.tpl.php
Убедитесь, что у вас также есть node.tpl.php в папке вашей темы и что вы очистили кэш.
Смотрите также Предложения по шаблонам страниц не работают для получения дополнительной информации.
Рад, что вы отказались от добавления пользовательских предложений!
Это хорошо только в том случае, если вы хотите запустить несколько типов узлов через один и тот же шаблон альтернативного узла.