Если типы содержимого отличаются весьма незначительно (например, размером закачиваемой картинки), то может как-то можно не плодить типы? Есть какое-то простое решение?
Конкретный пример: есть тип содержимого (заголовок, ссылка, картинка). По дизайну для банеров размер картинки один, для партнеров - другой. Ну не создавать же два одинаковых типа... Вариант, когда в одном типе два поля "изображение" тоже как-то не фонтан...
Комментарии
можете добавить свою логику. например поле с выбором и в зависимости от этого менять пресет.
можете сделать новое поле объединением полей селекта и картинки.
Вариант один, это вывод содержимого, в зависимости от Категории (Да придется добавить категории), и еще создать условия в tpl, а вот создание, это уже никак не изменить, только плодить типы.
Есть модулек называется context. И так же панели.
Вот создал я тип содержимого. Появилась соответствующая ссылка в Содержимое->добавить->мой_тип. Открываю, заполняю поля. Вот здесь по идее и нужно добавлять логику. Если селект (или галочка) партнеры - то скрываем поле загрузки картинки банеров. И наоборот. Так? Если да, то куда именно логику добавить? Про темизацию шаблонов в Представлениях я читал. Но здесь не представление...
Да, с категориями я уже делал. Только не понял куда там условия вставлять. В друпале можно темизировать все что угодно? Даже вывод полей типа содержимого?
этот вариант будет для вас самый простой.
если верить апи, то в полях доступен объект ноды https://api.drupal.org/api/drupal/modules!field!theme!field.tpl.php/7
вам всего лишь надо посмотреть категорию и в зависимости от этого отрендерить картинку в нужном пресете https://api.drupal.org/api/drupal/modules!image!image.module/function/th...
Спасибо за ссылочки. Буду изучать!
Допустим есть тип материала XXX, и работаем с изображениям
создаем node--XXX.tpl.php
В условиях PAGE пишем:
if(категория такаята) {
$image_styleXXX = $image_styleXXX;
}
$image = file_load($FID);
$image_style= array( 'style_name' => $image_styleXXX,
'path' => $image->uri,
'width' => '',
'height' => '', );
print theme('image_style',$image_style);
$FID = $node->field_image['und'][0]['fid'] //Это если одно изображение, если несколько, то выводить лучше вьюхой через views_embed_view
Я планирую добавить содержимое, для этого открываю нужный мне тип содержимого. Ссылка выглядит так:
site.ru/node#overlay=node/add/baners
На открывшейся странице формы, поля...И часть из них должна быть показана/скрыта в зависимости от выбранного в начале страницы значения в селекте (категории).
Какой мне нужно создать шаблон, как он должен называться и что там должно быть внутри?
Честно говоря, я еще не изучал эту тему. Поэтому вопрос скорее всего дилетантский... Но если вы на него ответите, то возможно сэкономите мне время
Может через зависимые поля?
500р