在Drupal 7塊中,我試圖列出無序列表中特定詞彙表的分類術語,並且還有任何已發佈的節點分類術語作爲兒童。Drupal 7:手動列表分類術語和具有這些術語的節點
例子:
說我有一個叫做產品的詞彙,它具有分類術語啤酒,葡萄酒,威士忌&。說啤酒有2個內容節點連接到它(吉尼斯&百威)等。
它應該結束這樣看:
- 啤酒(2)
- 吉尼斯
- 百威
- 酒(2)
- 黑比諾
- 白色金芬黛
- 威士忌(3)
- 傑克丹尼
- 莊家馬克
- 冠冕
我已經想通了如何顯示 「公正」 與分類術語計數,但無法弄清楚如何打印與每個術語相關的所有已發佈節點。下面是我的了:
<?php
$vid = 1; //vocabulary id
$query = "SELECT tid, name, count
FROM (
SELECT td.tid AS tid, name, COUNT(td.tid) AS count
FROM taxonomy_term_data AS td
JOIN taxonomy_index AS tn
ON td.tid = tn.tid
JOIN node AS n
ON n.nid = tn.nid
WHERE td.vid = ". $vid ."
AND n.status = 1
GROUP BY td.tid
ORDER BY count DESC
) AS t
ORDER BY name ASC";
$result = db_query($query);
print '<ul>';
foreach($result as $term) {
if ($term->count > 0) {
print '<li>';
echo l($term->name, "taxonomy/term/$term->tid").' ('.$term->count.')';
print '</li>';
}
}
print '</ul>';
?>
這將產生以下輸出:
- 啤酒(2)
- 酒(2)
- 威士忌(3)
但我如何讓這些分類術語的孩子顯示作爲該分類術語組成部分的已發佈節點?
任何想法?
謝謝
你爲什麼不使用視圖來做到這一點? – mmiles
我不確定我是否可以使用Views來做到這一點。你能解釋一下更多的細節來幫助我嗎? – WebMW