node.tpl.php内の作成者のプロファイル情報にアクセスする場合は、user_profile関数ではなくphptemplate_preprocess_node関数を使用する必要があります。ただし、ノードの前処理関数にはデフォルトで$ accountオブジェクトがないため、次の場所にロードする必要があります。
これは、template.phpファイルのphptemplate_preprocess_node関数に含まれます。
if ($vars['uid']) {
$vars['account'] = user_load(array('uid' => $vars['uid']));
}
そうすれば、node.tpl.phpで作成者のプロファイル値にアクセスできるようになります。あなたが具体的に尋ねた価値は次のようになります:
print($account->profile_real_name);
ただし、ノードの作成者の名前をアカウント名ではなくprofile_real_name値として表示したい場合はどうでしょうか。
その場合、はるかに効率的な方法は、theme_username関数をオーバーライドすることです。
それはあなたが直接質問したことではないので、ここでは説明しませんが、drupal.orgフォーラムのこの投稿は、Drupal 5または6を開始するのに最適な場所です:http:
//drupal.org/node/122303 #comment-204277