是否可以不向匿名访客展示广告?

在官方的 House Ads 插件中,是否有可能添加一个“不对匿名用户显示广告”的偏好设置?

使用场景如下:

我的社区设置为任何人都可以加入或创建账户。因此,我设置了一个横幅来鼓励用户注册,而 Discourse 本身在“您似乎很喜欢……”这类提示方面做得很好,例如点赞或回复会引导用户登录或创建账户等。

我正使用 House Ad 来鼓励用户订阅。订阅后,他们会被添加到特定的 Discourse 用户组中,从而获得额外权益。

目前,匿名用户会同时看到“创建免费账户”的提示和订阅推广的 House Ad。在我看来,更好的做法是只向他们提供一个“下一步”选项:如果是匿名用户,就引导他们创建免费账户;如果是已登录用户,则显示 House Ad。(当然,如果用户已经属于订阅插件所授予的特定用户组,则不会显示 House Ad。)

我还没研究具体怎么做,但我觉得最简单的方案是用 CSS 隐藏它们。只需在你的站内广告中添加一些 CSS,即可轻松对匿名用户隐藏这些内容。

哦!我该如何为匿名用户编写 CSS 选择器呢?(我从未想过要尝试这个。)

我不太清楚,但你可以搜索“Hide css anonymous”,应该能找到一些提示。

您需要选择 html.anon 以针对匿名用户。

html.anon .discourse-adplugin {
    display: none;
}

……真是个简单的解决方案。

我收回我之前关于需要该功能的主意了 :wink: