我有一个包含用户生成故事的网站。故事是节点。故事的评级为Fivestar。
我想创建一个日历样式视图,列出最受好评的故事 - 每一天,当天。所以最后我将列出365个故事。
我不知道如何处理这个问题,任何帮助都会很棒。
答案 0 :(得分:0)
你可以创建一个View,它接受一个Date参数,你将在那里传递一个特定的日期',并返回按Fivestar评级排序的结果,并将View限制为1个结果。
然后在您的自定义日历中,每天循环,每次调用View并显示结果,这将是“评价最高”的注释。虽然这可能有点矫枉过正,但它适用于显示当前最高评级节点的Block。我实际上不会在整整一个月甚至一年的时间里使用它。
另一种选择可能是,每隔24小时 - 并且在午夜过后 - 您使用该视图获取前一天的最高评分,并将其标记为最高评级。 这样,每天只会标记或存储1个节点,您可以构建一个视图,列出按日期排序的所有存储/标记的节点。评级与此无关,因为您在Cron中运行的View已经获得了最高评分。将此视图作为网格主题,并且可能使用参数Month,并且您接近每日最高评分节点的月视图等日历。
最后一个选项是构建一个View,它获取所有节点,并按评级对它们进行排序,并按天分组。然后确保每组只打印1个,即评分最高的一个。