Темизация вывода node reference [РЕШЕНО]

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

Аватар пользователя fedor_cool fedor_cool 31 марта 2015 в 19:16

Есть тип материала Тренер - имеет различные поля(ФИО, фото, описание и тд).
Есть тип материала Тренинг - имеет поле Тренер(node Reference).

Как в шаблоне ноды Тренинг вывести нужные мне поля Тренера? Выводить поля нужно отдельно, т.к. дизайн требует этого, просто анонс материала не подойдет

Комментарии

Аватар пользователя Koreychenko Koreychenko 31 марта 2015 в 22:40

hook_preprocess_node, получаем значения связанной ноды и добавляем их как поля в основную ноду. А дальше в шаблоне основной ноды ставим в нужные места.

Аватар пользователя fedor_cool fedor_cool 31 марта 2015 в 23:22

Koreychenko wrote:
hook_preprocess_node, получаем значения связанной ноды и добавляем их как поля в основную ноду. А дальше в шаблоне основной ноды ставим в нужные места.

а из переменной $content я не могу вытащить значения?

Аватар пользователя Koreychenko Koreychenko 31 марта 2015 в 23:28

А в контенте оно уже отрендерено, кажись. Т.е. опять лежит одним куском. (Сейчас посмотреть не могу, но, скорее всего, именно так.

Аватар пользователя yurasandul@gmail.com yurasandul@gmail.com 1 апреля 2015 в 2:57

Делаешь блок с вьюхой и через контекстный фильтр вытаскиваешь нужные поля у тренера. Блок "пристегиваешь" к ноде.
Как варианты пристегивания через админку - DS, Panels, Views Field.

Аватар пользователя fedor_cool fedor_cool 1 апреля 2015 в 14:40

Решил проблему через подгрузку ноды

<?php
$coach = node_load($node->field_service_coach['und'][0]['nid']);
print render(field_view_field('node', $coach, 'field_coach_photo'));
?>