Drupal 7:单个论坛的标志和覆盖所有论坛的索引搜索


Drupal 7: Flags for a single forum and indexed search covering all forums

我正在使用Drupal 7核心论坛,在我的网站顶部有高级论坛。其中一个论坛是为支持请求提供的,其功能与stackoverflow.com类似。但与Stack Overflow不同的是,用户只能将整个线程设置为"已解决",而不是单个帖子。现在,这是通过一个标志来实现的,我通过一个钩子来检查支持论坛的id,并相应地显示链接和消息,这感觉更像是一种变通方法,而不是实际的解决方案。

此外,当使用搜索API模块搜索多个论坛时,如果用户选择了"已解决"或"未解决"(而不是"任何"),则不会有来自除支持论坛之外的其他论坛的任何结果,因为它们没有设置标志。不过,它应该只对真正允许设置标志的论坛有效,而所有其他论坛都应该简单地搜索关键字。

有更好的方法吗?我已经搜索了这类模块,但没有成功。如果有人过去有过类似问题的经历,我们将不胜感激。

编辑:当为状态"已解决"/"未解决"创建标志时,此标志会出现在我创建的每个论坛的主线程中,而不仅仅是支持论坛。但其他论坛都不应该有设置它的选项。现在我正在使用线程视图的自定义模板,并从论坛的面包屑中读取tid,以检查我是否在正确的论坛中显示标志。但是有更好/正确的方法吗?有没有办法告诉标志只出现在支持论坛中,而不使用面包屑?

为什么要用自定义代码对消息进行编程?你看过flags规则集成吗?然后,您可以加载标记的内容并显示消息

关于搜索:定义中未标记的内容。无论是已解决的还是未解决的,它都是null或待清除的:与标志过滤器有关。我不知道如何使用搜索API实现它,但使用视图本身,您只需添加与标记内容的关系(不需要),并在标记内容的用户为空(null)的地方进行过滤。