Drupal: Как отобразить часть профиля автора в узле - PullRequest
2 голосов
/ 09 декабря 2011

Я пытался отобразить пользовательское поле, которое я создал в разделе управления полями учетных записей пользователей для узлов в дополнение к странице профиля.Проблема, с которой я сталкиваюсь в этом коде, состоит в том, что он отображает первое найденное поле и отображает его для каждого пользователя, а не поле для этого конкретного пользователя.А идеи?Я полагаю, что он находит первое значение в массиве, а не значение для конкретного пользователя в массиве.

Здесь приведена настройка m: добавлено это в мой template.php моей темы:

function mythemename_preprocess_node(&$vars) {

global $user;
  $user = user_load($user->uid); // Make sure the user object is fully loaded
  $team = field_get_items('user', $user, 'field_team');
  if ($team) {
    $vars['field_team'] = $team[0]['value'];
  }
}

Затем добавил это в мой node.tpl.php, чтобы отобразить его на узлах.

if (isset($field_team) && !empty($field_team)) :
  echo '$field_team.'</div>';
endif;

ОБНОВЛЕНИЕ: Нашел здесь свой ответ: http://drupal.org/node/1194506

Используемый код:

<?php
  $node_author = user_load($node->uid);
  print ($node_author->roles[3]);
  print ($node_author->field_biography['und'][0]['value']);
?>

1 Ответ

2 голосов
/ 03 ноября 2012

Для этого вы можете использовать модуль Авторской панели drupal. Попробуйте это:

http://drupal.org/project/author_pane

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...