2009-08-05 11 views
1

$ profile配列にあるアバター(プロフィール画像)をBLOCKに表示しようとしています。変数$ profileにはブロックからアクセスできません。スコープは実際のuser-profile.tpl.phpファイルにのみあります。 drupalのBLOCKで

print $profile[user_picture]; 

:そう...誰が、私はこのような何かを実行する方法を知っているのですか?

+0

は、これまでのところ私はそれがこれらとは何かを持って想像することができます。 http://api.lullabot.com/file/core/modules/profile/profile-block.tpl.php 及びこれら: ます。http: //api.drupal.org/api/function/template_preprocess_profile_block/7 – coderama

+0

あなたはビューブロックを作成することで答えを見つけましたが、テクニックを共有する機会はありますか? – Bevan

+0

Yay。初めて私は誰かを助けることができます! :-)基本的には、ユーザーXのプロファイルをクリックすると、その名前がブロックに表示されたかったと思います。これを行うために、ユーザーの名前を表示するビューを作成しました。私は、この見解を議論として取り上げて、議論として取り上げましょう。 私は最終的に、「挿入ビュー」と呼ばれるモジュールを使用して少し拡張しました。これにより、ファンキーなPHPコマンドを実行できます。もっと指示をしなければならないかどうかを教えてください。 – coderama

答えて

2

私は同様にここに投稿するかもしれないと考えました。この議論の最初のスレッドに関する私の2番目のコメントを見てください。以下は、私が欲しかったものを手に入れるINSERT VIEWを使用私のコードです:

<?php 
     $profileUser = ""; 
     if (arg(0) == "user") { 
      $profileUser = arg(1); 
     } 
     // removed some other checks i do to populate $profileUser 
?> 

[view:VIEWED_PROFILE_AVATAR=block=<?php print $profileUser; ?>] 

私は誰かに役立ちます願っています。

+0

おかげで男は同じものを探していた:) – abhishek

1

新しいブロック(admin/build/block/add)に次のコードを使用して試すことができます:

<?php 
global $user; 
$output = theme_image($user->picture, $alt = 'user pic', $title = 'user pic'); 
print $output; 

これは、あなたがグローバル$user変数にアクセスできるようになり、その後、あなたは現在のURLを取得するには、画像のプロパティを使用することができますユーザープロフィール画像。

+0

はい、それは私が望む写真ではありません。誰かのプロフィールを見ているなら、その人の写真を見たいと思っています。私はブロックビューを作成して解決しました。 – coderama

+0

gotcha - udpateのおかげで – quickcel

関連する問題