用户目录中的自定义字段是否可搜索?

感谢这次更新!

通过两个问题确认我的理解——

  • 用户目录是否也可以通过自定义列进行搜索;在此示例中,例如,我可以通过用户对“喜欢的颜色”个人资料字段的回答进行搜索吗?

  • 这是否也使得“关于我”和“网站”这两个默认用户字段可以通过目录进行搜索?

3 个赞

据我所知,搜索仅限于用户名。也许 @HAWK 可以确认这一点(那一行是在我发帖后添加的)

4 个赞

我希望能够过滤/搜索用户目录中的自定义用户字段。

我们的社区运行着一个混合的 WordPress/Discourse 设置,我们在 WordPress 端创建了一个基于地图的成员目录。但我们的成员 真正 想要的是一个基于 兴趣 的成员目录。

这在 WordPress 端很难实现。但我认为在 https://[YourDiscourseSite]/u 实现它不需要太多工作。

例如,我们有自定义用户字段,用于记录当前的学习目标、居住地,以及——最受欢迎的——兴趣/热情/技能。如果我能通过关键词搜索“社区建设”的共同兴趣,或者“python 编程”的学习目标,那对我的社区来说将是不可思议的。

@HAWK,我知道你在 2022 年 9 月 @weallwegot 的回复中被提及过。如果你希望这个愿望以这种方式实现,我愿意详细说明功能请求的规格。

就我所知,我不是唯一一个在用户目录中寻求增强搜索功能的人。

5 个赞

我都快忘了这件事了,因为我之前在发布说明中看到过类似的内容。

看起来自定义字段在 2.7.0.beta8 中被设为了可选搜索项。(链接如下)

这是否满足您社区的要求?

5 个赞

你好 Joel :slight_smile:

无需在此提及团队成员,他们会阅读论坛,如果负责某项功能的人遗漏了什么,其他人会酌情提供信息 :slight_smile:

在这种情况下,HAWK 并不是要提及的人(请参阅 Sam Saffron and Sarah Hawk named Discourse Co-CEOs

我测试了用户目录按自定义字段搜索,确实还有改进的空间。

除其他外,特殊字符可能导致搜索不返回应有的结果,布局没有太多空间显示更多列,等等……

我认为如果要做更改,应该从这里开始,以便拥有一个更清晰、更可靠的功能来使用。

我已经告知团队了! :v:

7 个赞

很高兴你同意。 :slight_smile:

我完全从功能角度来考虑。例如,我能否在自定义的“兴趣”字段中进行关键词搜索“社区建设”,或者在“学习目标”字段中搜索“python 编程?”

在用户体验方面,你的眼光可能比我更敏锐。

我会先从功能入手,然后再处理用户体验。但那只是我个人的想法。我知道 Discourse 的开发者们,他们可以同时做到这两点。 :grinning:

我很乐意进行更多对话,甚至创建一些功能规范,如果这能帮助加快未来在用户目录中可搜索自定义字段的开发进度的话。

4 个赞

不确定您设想的搜索是在普通搜索页面还是单独在用户目录页面进行。

如果在用户目录中,我希望有类似这样的功能:

理想情况下,我希望它是 Discourse 的核心功能,但如果感兴趣的人更多,也许我们可以创建一个插件/主题来实现它。

1 个赞

Jim,我看到你的论坛帖子了,当时我正在寻找一种方法来做你和我想要做的事情。从我这个不懂代码的人的角度来看,将此功能集成到 Discourse 核心似乎是最有意义的,因为它似乎对所有 Discourse 用户来说都是一个有用的工具。

如果有一个插件或主题组件来实现我们想要的功能,这意味着绝大多数 Discourse 用户甚至不知道他们有这个选项。

2 个赞

是的,我同意,我更希望它在 Discourse 核心中。我认为用户目录可以是 Discourse 的最大功能之一,具体取决于用户的使用方式。我设想将其用于非营利协会,沟通可以在这里进行,会员目录,以及人们想要的订阅。

也许它可以先作为一个插件/主题,然后集成到核心中。

1 个赞

这在核心版本的用户字段搜索中目前是否有效?我查看了该版本的提交,看起来应该是有效的。我现在没有方便的实例来测试它——但我很好奇你具体觉得缺少了什么!

我问这个问题是因为我在 2020 年为这个用例制作了一个插件,但一直没有时间开源它。我非常有兴趣探索让社区内容可搜索的用例(尤其是在多个平台之间——所以如果碰巧这是你的用例,请告诉我,我很想进一步交流!)。

总之——这是插件,我 80% 确定它与核心版本的实现方式是冗余的,但万一有改进或合作开发——我想我应该分享一下。

4 个赞

不,正如我所描述的,在 Discourse 3.1.0.beta4 版本中目前还不能实现。

太棒了!

我们实际上使用 WordPress-Discourse 混合模式来管理我们的社区。如果能用一个工具搜索这两个平台,那将是 太棒了,但我对仅能在 Discourse 中搜索自定义字段也感到满意。

你提到你在 2020 年创建了它,所以我没指望你现在还会更新它。 :grinning:

我猜在插件与当前的 Discourse 核心版本兼容之前,还需要进行一些进一步的更新。而且,由于我不认为 Discourse 开发人员有任何计划在核心版本中加入自定义字段搜索功能,所以我只能等待像你这样的人说“我的插件有效了!”……然后我再进行测试。 :slight_smile:

2 个赞

您可以通过自定义字段进行搜索。 :+1: 您可以在设置中使它们可搜索:

您也可以将它们包含在目录的列中(这意味着您可以单击列标题对其进行排序):

搜索示例:

您需要等待 Jobs::ReindexSearch 后台作业运行 [1] 才能包含它们,但如果您有权访问 /sidekiq/scheduler 页面,则可以通过触发该作业来加快速度。


  1. 最多可能需要一个小时 ↩︎

5 个赞

_这个_知识点对我来说是一个巨大的缺失!以前,我只是将某些自定义字段设置为可搜索,然后在 /u 添加一个用于显示它们的列,然后立即进行搜索。我没有得到任何结果,因为 Jobs::ReindexSearch 后台作业还没有运行。

现在我知道了这个关键信息,我能够尝试如何使用自定义字段搜索。不幸的是,当前功能存在太多的用户体验问题,这会阻止我允许我的论坛成员使用自定义字段搜索。

我录制了这个视频,向 Discourse 开发人员、插件开发人员或任何好奇的人展示我的意思。

如果您无法观看视频,以下是我对用户体验问题的书面总结。

  • 显示的默认选项可能不是“全部时间”(例如,“周”或“月”)。因此,搜索者可能会认为他们获得搜索结果仅限于过去 X 周/月/季度/年内活跃的用户。
  • 搜索框中的文本是“按用户名过滤”。没有任何内容表明“用我进行关键字搜索”。
  • 下拉菜单显示“所有组”,人们可能会认为搜索的主要用途与组相关,而不是整个论坛。
  • 您无法按单个自定义字段进行搜索。您正在一次搜索所有字段,这可能会返回过多的结果,具体取决于您的用户数量和/或关键字。
  • 在搜索框中键入时,会随着您继续键入而返回实时结果。但是,在加载新结果并使光标移出输入字段之前,光标的停留时间非常短。有些人打字慢或会停顿,所以这不太好。
  • 您必须向右滚动才能看到自定义字段。这在移动视图上不现实,因为大多数人都是通过移动视图访问论坛的。
5 个赞

我一直渴望有一个新的目录界面,我在这里稍微提了一下:

我想知道这样的用户界面是否也是你想要的。

我还考虑过,当结合“Locations”插件的用户地图功能时,过滤器/搜索会有多大帮助。

3 个赞