2009-08-05 65 views
1

我試圖讓位於$ profile數組中的頭像(頭像圖片)出現在BLOCK中。變量$配置文件不能從塊訪問。它的範圍只在實際的user-profile.tpl.php文件中。所以...有沒有人知道我可以如何執行這樣的事情:

print $profile[user_picture]; 

在drupal BLOCK?

+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 2009-08-05 15:23:39

+0

您在下面提到您通過創建視圖塊來找到答案 - 任何分享技巧的機會? – Bevan 2009-08-06 09:51:26

+0

耶。我第一次去幫助別人! :-)基本上,我希望如果你點擊用戶X的個人資料,它會在一個塊中顯示他的名字。爲此,我創建了一個顯示用戶名的視圖。然後,我將這個觀點視爲一個爭論點,並將其視爲一個論點。 我最終使用一個名爲「插入視圖」的模塊擴展了它,這樣我就可以做一些時髦的PHP命令。讓我知道我是否必須提供更多指示。 – coderama 2009-08-06 21:03:39

回答

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 2011-11-12 08:09:37

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 2009-08-06 05:01:57

+0

gotcha - 謝謝你的感謝 – quickcel 2009-08-06 12:43:31