我们正通过电子邮件联系会员,但在导出最新的用户列表为 .csv 文件时,其中包含了被暂停、被禁言以及可疑的用户。我们并不希望将这些用户纳入邮件列表,因此不得不逐个手动筛选并删除。为简化这一流程,建议在导出用户列表时提供过滤这些不必要用户的选项。这将有助于我们,也可能惠及许多其他 Discourse 管理员。
等等,难道不能用 Excel 宏来清除它们吗?我们确实会导出 CSV 状态对吧?
我正在使用 LibreOffice。我该怎么做?
我想 LibreOffice 中可能没有这个功能。
无需宏。
只需按包含状态的列对列表进行排序,然后删除包含您不想要状态的每一行块。
感谢您的建议,但这正是我提出此功能请求的原因。随着时间的推移,用户列表自然会增长,这将使操作变得更加困难。
在 LibreOffice 中,您可以按如下方式筛选数据:
在筛选对话框中,为 suspended_till 列选择 empty,这样您就得到了未被暂停的用户。如有必要,对其他列也执行相同操作,然后将筛选后的列表导出,用于您的邮件发送。
我理解您希望拥有这项功能,但在等待一个可能永远不会被开发的功能期间,您不必采取这种费力的方式。现在您有两种更简便的选项来完成此任务:
- 按状态排序,然后删除您不需要的状态对应的用户块。
- 按单元格内容筛选某一列,以选中您想要的用户,从而导出或复制他们。
此外,还有更多可能对您有帮助的选项:
-
将用户列表导入邮件列表管理器或其他专为处理电子邮件地址而设计的工具。这样,您就可以使用发送定期邮件时所需的其他功能。此外,您的电子邮件服务提供商可能也提供邮件列表管理功能。对于像 Mailgun 这样的事务性电子邮件提供商来说,这是很常见的。
-
使用 Data Explorer 插件(作为托管客户,您需要处于足够高的套餐等级)创建查询,以选中您要导出的用户。以下是选择电子邮件地址的示例:
投票支持某项功能的用户
导出组成员 -
付费定制开发一个插件。
-
如果您仅向用户发送邮件,可以考虑使用群组来选中用户,并发送私信而非电子邮件。
顺便提一下,我认为这项功能的优先级会非常低,因为使用普通的电子表格技能就能轻松实现相同的结果。只有当存在某些重大困难(例如用户列表过长,无法放入工作表中)时,才需要这项功能。但当前 Microsoft Excel 和 LibreOffice Calc 的行/记录数限制均为 1,048,576。
