2
프로필 페이지 외에도 노드에 대한 사용자 계정의 관리 필드 섹션에서 만든 사용자 정의 필드를 표시하려고했습니다. 이 코드를 가지고있는 문제는 발견 한 첫 번째 필드를 표시하고 해당 사용자의 필드가 아닌 모든 사용자에 대해 표시한다는 것입니다. 아이디어가 있습니까? 배열의 특정 사용자에 대한 값이 아니라 배열의 첫 번째 값을 찾는 것으로 생각됩니다. 내 테마의 내 template.php에 추가 된이 : Drupal : 노드에 작성자 프로필의 일부를 표시하는 방법
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이 추가 여기
지금까지 m의 설정입니다.
if (isset($field_team) && !empty($field_team)) :
echo '$field_team.'</div>';
endif;
UPDATE : 찾을 여기 내 자신의 aswer : 사용 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']);
?>
,'변수 (중 하나는 알려진 로그인 한 사용자 또는 익명 사용자) 요청을하는 사용자에게 의미 _not_을 노드 작성자에게 전달합니다. 이를 위해서'user_load ($ vars [ 'node'] - uid)'를 할 필요가 있습니다. –
업데이트 결과를 자신의 질문에 대한 대답으로 바꾸고 나중에 받아 들여서 질문을 '대답하지 않은 채로'열어 두지 않아야합니다. –
헨릭, 감사합니다. 여기에 새로운 교환, 나는 노력했다. 그리고 나는 내가 8 시간 기다려야했다라고 말했다. 그래서 나는 다른 것에 게보기 위해 질문을 최신의 것으로 바꾸었다. 나는 8 시간 후에 돌아올 수 있다고 대답한다. – kidA