#drupal
#drupal
Вопрос:
Можно ли выбирать разные шаблоны при создании нового узла?
Например: Когда я хочу создать узел типа контента Product, я хочу выбрать один из 4 разных шаблонов.
Ответ №1:
У меня есть два ответа:
1) создайте поле CCK, в котором пользователь будет выбирать, какой шаблон использовать (например, field_template), и добавьте этот фрагмент в свой template.php:
function mytheme_preprocess_node(amp;$vars) {
if (!empty($vars['field_template'][0]['value'])) {
array_unshift($vars['template_files'], 'node-' . $vars['field_template'][0]['value']);
}
}
Которые затем попытаются использовать node-template.tpl.php в качестве вашего файла шаблона и будет заменен на node.tpl.php если он не находит это.
2) создайте таксономию для этого типа контента и оформляйте в соответствии с таксономией (что-то вроде кода выше, только немного измененного).
Комментарии:
1. Мне нравится думать о таксономии как о классификации атрибутов, а не о добавлении атрибутов к чему-либо. Итак, хотя ваш второй вариант может сработать, первый использует CCK в качестве атрибута узла, который является более подходящим.
2. именно так я и думал. однако прикрепить таксономию довольно просто для начинающих, а CCK является более сложным.