2

使用 Drupal 7,

我有一个内容类型:电影,

它有一个演员分类:基努·里维斯、克里斯蒂安·贝尔、米拉·乔沃维奇等。

我想建立一个视图,其中列出了与分类术语匹配的内容计数的演员分类,例如:

Keanu Reeves (4)
Christian Bale (8)
Milla Jovovich (2)

我不确定如何构建这个视图,

我设置了一个使用聚合的视图,过滤器:=发布,内容类型=电影,语言=用户语言,

字段:COUNT(内容:演员)

它似乎没有实现我的目标,请帮助!

4

3 回答 3

2

找不到通过视图实现的方法,这是替换视图的自定义块代码。

$vid = 3; //vocabulary id
$num_term = 8; //limit maximum terms

$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
LIMIT ". $num_term . "
) AS t
ORDER BY name ASC";

$result = db_query($query);
foreach($result as $term) {
if ($term->count > 0) {
  echo l($term->name, "taxonomy/term/$term->tid").' ('.$term->count.')'.'<br/>';
}
}

?>
于 2012-06-04T16:03:58.017 回答
1

应该有办法生成您正在寻找的视图,而无需进行自定义编码。看看http://eureka.ykyuen.info/2012/01/20/drupal-7-get-number-of-nodes-of-taxonomy-term-in-views/http://dev.nodeone.se /en/the-aggregation-setting-the-emmajane-episode可以帮助您。

于 2012-06-05T14:09:44.943 回答
0

在 Drupal 7 中,可以使用视图来执行此操作。无需编码或附加模块。请参阅如何使用视图聚合器创建分类术语计数块?对于食谱。

于 2013-08-06T14:42:07.727 回答