2011-04-08 57 views
0

我的節點按2個分類詞彙表分類。兩個詞彙表都具有列出所有標記節點的分類頁面。每個節點都有來自每個詞彙表的1個標籤。Drupal Views - 在不同的詞彙表頁面上分類術語權重的排序順序?

使用視圖覆蓋來控制分類頁面。對於我的主要詞彙表的分類頁面,我使用CCK整數字段來控制順序。這很簡單,工作正常。

對於我的輔助詞彙的分類頁面,我希望訂單成爲主詞彙的詞彙權重,然後是CCK整數字段順序。

我想我可以用2個排序命令來做到這一點,第一個詞是第一個詞彙表中的詞,第二個詞是CCK詞序。然而,即時通訊的問題是,如果我將術語或術語權重作爲排序標準添加到我的視圖中,我無法指定主要詞彙表,因此它使用頁面所在的分類術語。這意味着它在主分類頁面上工作正常,但它不適用於第二分類頁面。

我不知道它是否會有所幫助,但下面是一個例子順序:

1st Vocab 
-TERM1 
--NodeA 
--NodeB 
-TERM2 
--NodeC 
--NodeD 

2nd Vocab 
-TERM3 
--NodeA 
--NodeC 
-TERM4 
--NodeB 
--NodeD 

我怎樣才能解決這個問題? 感謝

回答

1

如果你正在處理一個長期的觀點有沒有簡單的方法,我建議你到一個自定義模塊這樣在使用hook_views_query_alter:

function YOURMODULE_views_query_alter(&$view, &$query) { 
    if ('YOUR VIEW NAME' == $view->name) { 
    $query->add_orderby(<TABLE ALIAS>, <TABLE FIELD>, 'ASC'); 
    } 
} 

,如果你能負擔得起過濾掉空方面我的建議將使用content taxonomy module並改爲創建一個節點視圖。

+0

那麼我一旦做了這個模塊該怎麼做?這是否會創建一個可通過視圖訪問的新字段?感謝 – Evans 2011-04-09 15:04:59

+0

在您的視圖字段中添加您想要排序的字段(重量)(最終從顯示中排除它),然後您可以在上面的示例的add_orderby()子句中引用它。 – gpilotino 2011-04-11 13:36:00

+0

我可以將術語權重添加爲字段轉換爲視圖,但我不能指定使用哪個詞彙表。目前它使用錯誤的詞彙。謝謝 – Evans 2011-04-12 12:14:31

相關問題