2011-05-06 73 views
1

我有一个用户生成的故事的网站。故事是节点。故事被评为Fivestar。Drupal视图显示每天每天最高评分的节点?

我想创建一个日历样式视图来列出最受好评的故事 - 每一天,为当年。所以最后我会列出365个故事。

我不知道如何解决这个问题,任何帮助都会很棒。

回答

0

您可以制作一个采用日期参数的视图,您将在该视图中传递特定日期,并返回按星级评分排序的结果,并将视图限制为1个结果。

然后在您的自定义日历中,每天循环,每次调用视图并显示结果,这将是“最高评分”的音符。虽然这可能有点矫枉过正,但它适用于显示当前最高评级节点的Block。我实际上不会用它整整一个月甚至一年的观点。

另一种选择是,每24小时 - 和午夜过后 - 您可以使用该视图获取前一天的评分最高的评分,并将其存储或标记为评分最高的评分。 这样,每天只有1个节点将被标记或存储,并且您可以构建一个视图,列出按日期排序的所有存储/标记节点。评级与此无关,因为您在Cron中运行的View已经获得了最高评分。将此视图作为网格主题,并且可能带有参数Month,并且您接近日历,例如每天最高级别Nodes的月视图。

最后一个选项是构建一个View,它可以获取所有节点,并按照等级对它们进行排序,并按天进行分组。然后确保您只打印每组1个,即最高评分的一组。

+0

谢谢Vodde,我认为在这种情况下,第一个选项 - 遍历块的效率太低。第二种选择不是合意的,因为它不是实时的。第三种选择似乎是最好的。现在要弄清楚如何按天分组...... :) – limbovski 2011-05-09 19:08:49