Drupal: шаблоны типов контента

#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 является более сложным.