如何创建 Drupal 论坛报告/分析视图?

Posted

技术标签:

【中文标题】如何创建 Drupal 论坛报告/分析视图?【英文标题】:How to create a Drupal forum reporting/analytics view? 【发布时间】:2011-02-09 00:48:28 【问题描述】:

我想在 Drupal 中创建一个页面来报告一些基本的论坛信息。我以为我会使用 Views,但 Views 只允许您为每个视图设置一个“实体”类型,但论坛主题由节点和 cmets(也称为主题和回复)组成。

理想情况下,如果可能,我想要一个视图,将所有论坛节点和 cmets 一起列出在一个表中(按日期排序),以及两者的总和。有没有办法用 Views 做到这一点?

更新:我正在寻找的是这样的:

-------------------------------------------------------
| User | Post                      | Type    | Date   |
-------------------------------------------------------
| amy  | post text appears here    | post    | 1/5/01 |
| bob  | comment text appears here | comment | 1/5/01 |
| amy  | another comment here      | comment | 1/5/01 |
| cid  | another post appears here | post    | 1/4/01 |
| dave | yet another comment here  | comment | 1/4/01 |
-------------------------------------------------------
total posts + comments: 5

【问题讨论】:

【参考方案1】:

不确定你真正想要什么。您可以在同一级别显示节点+ cmets 或节点和 cmets 的数量,但是它们没有总数,因为它们都是分开的?或者您想单独显示每条评论以及该线程中的 cmets 数量?

如果是后者,那可能不是小事。

基本上,您可以创建一个 UNION Select 查询并同时查询节点和评论表。可能看起来像这样:

(SELECT 'node' AS type, n.nid as id, n.title as title, nncs.comment_count as comment_count, n.created as timestamp FROM node n INNER JOIN node_comment_statistics nncs ON n.nid = nncs.nid)
UNION
(SELECT 'comment' AS type, c.cid as id, c.subject as title, cncs.comment_count as comment_count, c.timestamp as timestamp FROM comments c INNER JOIN node_comment_statistics cncs ON c.nid = cncs.nid)
ORDER BY timestamp DESC LIMIT 10;

这将返回一个包含以下内容的结果:节点/评论 |编号 |标题 |评论数 |时间戳

有关 UNION 的更多信息,请参阅http://dev.mysql.com/doc/refman/5.1/en/union.html

然后您可以将其主题化为表格。

提示:

如果您需要更多数据,请扩展 查询或使用 node/comment_load 您也可以将 node 加入 第二次查询并使用节点标题 而不是评论主题 该查询会缓慢 因为它总是会做一个文件排序 因为你在那里有一个工会。它 实际上可能执行得更快 两个单独的查询,然后 mangle 如果你有一个 大量节点/cmets

【讨论】:

我添加了一个更新,以防有助于澄清。看起来你是说 Views 不是一个选项。对吗?【参考方案2】:

事实证明Tracker 2 module 提供了足够我需要的东西。

【讨论】:

以上是关于如何创建 Drupal 论坛报告/分析视图?的主要内容,如果未能解决你的问题,请参考以下文章

Drupal:最好的论坛模块? [关闭]

Python爬虫实战:爬取Drupal论坛帖子列表

PHP Drupal Block可见性:在论坛上显示

PHP Drupal Block可见性:在博客和论坛上显示

团队项目-选题报告

Drupal块可见性:在论坛上显示