Есть cck поле, Тип "Изображение", может содержать много изображений. По умолчанию, через это поле выводятся все загруженные изображения. Но это не комильфо. Допустим надо вывести только первое изображение. В drupal6 это решалось простым кодом:
<?php print $node->field_canvas[0]['view']; ?>
В drupal7 похоже всё только усложнили...
Код
<?php print render($content['field_canvas']); ?>
и
<?php print render($content['#children']); ?>
выводит все изображения загруженное в поле field_canvas.
Если же написать <?php print $node->field_canvas['und'][0]['uri']); ?>
то мы получим uri - внутреннюю ссылку на файл, используя функцию image_style_url, которая преобразует uri в нормальную ссылку мы можем вставить изображение в ноду. Вот как это получилось у меня:
<?php <div class="field field-name-field-canvas field type-image field-label-hidden">
<div class="field_items">
<div class="field-item <?php print $zebra; ?>">
<a href="<?php print image_style_url('large', $node->field_canvas['und'][0]['uri']); ?>" rel="lightbox" class="lightbox-processed">
<img typeof="foaf:Image" src="<?php print image_style_url('medium', $node->field_canvas['und'][0]['uri']); ?>">
</a>
</div>
</div>
</div> ?>
Жуткий говнокод, но он частично работает. Не работает почему то lightbox, хотя rel="lightbox" стоит.