Наверно вы не раз создавали отдельные шаблоны для своих нод переопределяя их как node-content-type.tpl.php.
Иногда этим можно и ограничится, а иногда для отдельного контент типа необходимо задать определенный шаблон. К сожалению в 6ом Друпале так не получится сделать без написания дополнительного кода. Чтобы наши новые шаблоны для контент типов page-content-type.tpl.php заработали, нужно в файл template.php поместить следующий код:
function phptemplate_preprocess_page(&$vars) { if (isset($vars['node'])) { $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type); } }
Теперь можно создавать свой шаблон для контент типа, например page-news.tpl.php (где news машинное имя контент типа новостей).
Также в Друпале возможно переопределять шаблоны вывода термина таксономии добавив функцию в template.php:
После этого можно будет в папке с текущей темой переопределить шаблон node-taxonomy.tpl.php
function phptemplate_preprocess_node(&$vars) { if (arg(0) == 'taxonomy') { $suggestions = array( 'node-taxonomy' ); $vars['template_files'] = array_merge($vars['template_files'], $suggestions); } }
Комментарии
Добавить комментарий
А подскажите как для своего
А подскажите как для своего переопределеного шаблон прописать новую таблицу css? Или этот тип все равно будет брать родные стили? Если можно прописать, то где это прописывают кроме как в этом шаблоне?
новый файл css можно добавить
новый файл css можно добавить в файле .info
Например так. Если нужно переопределить уже существующий css, то можно использовать !important, например так
Или можно отключать css сторонних модулей, об этом в этой статье
http://drupalbook.ru/content/udalenie-ili-pereopredelenie-standartnykh-css-failov