Темизация вывода ImageField во Views. [РЕШЕНО]

Главные вкладки

Аватар пользователя IPlayer IPlayer 20 февраля 2009 в 11:38

Прошу помочь начинающему.

Имем:
1. Пользовательский Conten Type : Album
2. У Album единственное добавленное поле Photo типа ImageField
3. Создана нода типа Album и к ней подгружено 10 Photo. У каждой Photo заполнены Title и Description (атрибуты ImageField)
4. Создано View со style:Grid которая отображает превьюхи всех Photo, загруженных в Ноду.

до этого момента все работает и все устраивает.

Проблема:

Нужно дооформить этот грид, а именно - вывести под каждой превью либо Title либо Description (от ImageField ессно, не Ноды). Конструктор Views в группе Field дает доступ только к самому изображению. Как я понял весь остальной вывод можно дописать в шаблоне к этой view. Вот тут и наступает полный ступор. Прошу либо ткнуть в пример либо набросать основу ентого шаблона.

Спасибо.

Комментарии

Аватар пользователя IPlayer IPlayer 24 февраля 2009 в 22:36

Решение следующее:

На основе дефолтного шаблона Field Content (Правка View/Theming information) был создан шаблон views-view-field--Album-view--field-image-fid.tpl.php, который был положен в папку темы. В этом шаблоне доступен объект $row, в которм содержатся все поля того селекта, что мы видим в редакторе View, когда жмем Preview. Искомые параметры image_field (Title, Description) хранятся в поле node_data_field_image_field_image_data в виде массива. Привел шаблон к такому виду:

<?php
        print $output;
?>
<br>
<?php
        $image_data_array = unserialize($row->node_data_field_image_field_image_data);
        print (($image_data_array["title"]));

?>
<br>

ЗЫ. Не забывать делать Rescan Template Files после операций с шаблонами....

Аватар пользователя Antoniy Antoniy 30 июля 2009 в 10:10

Спасибо! Подскажите, пожалуйста, а как вообще выводить поле (одно превью из ноды) ImageField в Views? Пытался через поля, но там не доступно такое поле для вывода.