2011-10-12 39 views
0

我不明白如何在Drupal 6中爲此設置塊視圖:Drupal 6 - 如何設置VIEWS塊?

用戶提交圖片。如果獲得批准,我將其上傳到網站。

有一個節點顯示圖片的詳細信息和作者信息。我想有一個塊,說,更多由這個作者。此塊將列出此作者提交的更多圖像。我怎樣才能做到這一點?

網址是:mysite/content/name-of-image所以我不知道如何創建一個視圖來顯示這個作者的所有圖像,因爲用戶名不在URL中。有人能告訴我如何做到這一點?

謝謝。

回答

0
  • 將一個用戶:uid參數添加到視圖中。
  • 爲這個論點選擇「提供deafult論證」選項。
  • 選擇「php code」作爲默認參數類型。
  • 回車下面的PHP代碼:

    if (arg(0) == 'node' && is_numeric(arg(1))) { 
        $node = node_load(arg(1)); 
        $uid = $node->uid; 
    } 
    return $uid; 
    
你的情況

要從節點的CCK領域的UID,所以PHP代碼應該是這樣的:

if (arg(0) == 'node' && is_numeric(arg(1))) { 
    $node = node_load(arg(1)); 
    //if the field contains a user id 
    $uid = $node->field_authorid[0][value]; 

    //if the field contains a username 
    $user = user_load(array('name' => check_plain($node->field_authorname[0][value]))); 
    $uid = $user->uid; 
} 
return $uid; 

現在您將在url中擁有來自節點的作者用戶標識。 現在您可以將字段添加到由此作者創建的節點的視圖中。

注意:視圖預覽不會顯示任何結果,因此您必須保存此視圖並在視圖構建器之外對其進行測試。

+0

謝謝,但我不認爲你明白我在做什麼。爲什麼參數是節點:id?我可以訪問這個「圖像細節」節點中的content_author字段。我只需要以某種方式顯示作者提交的所有圖像。 – Adam

+0

對不起,我是misead。我認爲「更多關於這位作者」應該放在方塊視圖中,並且在更多的圖像中以獨立的視角來概述。我將更改答案 – jan

+0

這不是「該作者的更多評論」,而是「該用戶的更多圖片」。另外,我提到** I **批准並上傳作者圖片,因此node:id總是我 - 而不是圖片的作者。所以,我有一個頁面,其中包含用戶提交的大圖,並且會顯示其旁邊的所有詳細信息,包括作者的用戶名。下面是一個應該顯示該作者提交的所有其他圖像的塊視圖。 – Adam