Как распечатать "визуализированный узел" версии поля ссылки на узел в шаблоне?


У меня есть два типа контента: Тип A и тип B. У меня есть поле ссылки на узел в типе контента A (с использованием модуля Ссылок ), которое настроено для отображения с использованием версии "Отображаемого узла" этого ссылочного узла. Он ссылается на узлы типа контента B. Как я могу распечатать содержимое этого поля в виде отрисованного узла в файле пользовательского шаблона для типа контента A?

Author: mpdonadio, 2013-06-10

1 answers

В вашем объекте $node вы найдете объект подчиненного узла в $node->field_fieldname['und'][0]['node']. Чтобы отобразить это на странице, вы должны превратить ее в визуализируемый массив. Вы делаете это с помощью node_view(), указывая тип режима отображения. Попробуйте:

<?php
if(isset($node->field_fieldname['und'][0]['node'])) {
  $second_node = $node->field_fieldname['und'][0]['node'];
  $view_mode = 'teaser'; // or 'full' as the case may be
  $render_array = node_view( $second_node, $view_mode);
  print render($render_array);
}
?>

РЕДАКТИРОВАТЬ

MPD верен. Вышеизложенное предполагает, что поле является полем ссылки на узел. Если вы используете поле ссылки на сущность, код следует изменить на:

 <?php
    if(isset($node->field_fieldname['und'][0]['entity'])) {
      $second_node = $node->field_fieldname['und'][0]['entity'];
      ...
 4
Author: Triskelion, 2013-06-10 23:47:58