为群组定制的主页

啊!抱歉。我错过了。

嗯。是的。我想知道为什么我移除了对那些的支持。我想也许你现在可以在核心中更改那些了?

我会看看核心中是否有,如果有的话,就移除那些设置。

或者核心中发生了什么事情导致那些更改失效了。我会看看我能弄清楚什么。。。

3 个赞

我仍然不确定之前为什么要删除对默认主页和匿名主页的支持。我已经把它们放回去了。

现在,如果有 custom_default_homepage,则使用它,除非有匹配的群组匹配。如果有 anon_page 并且用户是匿名的,则使用它。

我不知道应该如何或何时设置移动页面(是为匿名用户设置的吗?所有用户?它会覆盖默认页面吗?群组映射?),所以我把它删除了。如果您正在使用该移动页面,请告诉我您认为它应该覆盖什么(我认为如果他们在移动设备上,也许应该将其设置为默认页面,但是如果有群组页面,则使用该页面?仍然不清楚匿名用户与登录用户该怎么做——我想可能需要为所有这些页面提供移动版本?)。

这是代码:

      let url = null;

      if (settings.custom_default_homepage) {
        url = settings.custom_default_homepage.replace(/^\/+/g, "");
      }

      if (user) {
        if (user.primary_group_name 

And then it changes the homepage only if `url` has a value.
8 个赞

此主题组件是否旨在将组中的任何人在登录时或使用链接时重定向到主页?我已经安装了它,徽标会指向所选页面,但登录时用户仍然被重定向到默认的 /latest 页面。如果它处理登录重定向,那我肯定还有什么地方设置不正确。

我的目标是所有用户都包含在一个默认组中,并且在登录时都被重定向到一个备用页面。

这需要是他们的主要组,此TC才能生效。这是设计使然,以避免用户属于多个带有重定向的组时发生冲突。

2 个赞

信任级别0是否被视为一个有效群组?这会是群组页面映射 (Group Page Map) 的正确设置吗?trust_level_0:/discourse-ai/ai-bot/conversations。这就是我当前的设置。

不,信任等级组无法使用,因为它们不能被设置为主组。如果这对你来说至关重要,你可以通过使用动态组插件来创建一个镜像组作为变通方案。

3 个赞

您是否尝试过将所有人的自定义主页设置为您的AI机器人页面,然后将匿名用户的主页设置为最新?

1 个赞

啊。好的。我认为我电子邮件通知中发送的这个版本有所不同。我更喜欢这个答案。 :slight_smile:

2 个赞

我就知道你会!还在用电子邮件通知吗??那有点像老古董了,杰!

2 个赞

我说的“everyone”是指“global”,而不是伪组。我会编辑我的帖子,以免产生误导。

2 个赞

我年纪很大了。而且,我每天登录元(meta)的时间不到10个小时,我不想错过任何事情!

5 个赞

首先,感谢大家的积极参与和帮助!非常感激!

这让我感到困惑。

我已经成功安装了这个插件,并在设置中将 trust_level_0 设置为“设为主组”。网站上的所有成员都已添加到该组。现在所有用户的首选组都显示为这个组。

在“自定义主页(按组)”组件设置中,这是我的设置。

访问页面时,属于“Community-Core”首选组的用户仍然会跳转到 /latest。如果我将“匿名页面”更改为 /latest 以外的其他内容,当用户登录时,他们将看到该字段中显示的页面,这就是正在发生的重定向。

我正在使用 Canvas Screen 主题,并切换到默认主题进行测试,结果相同。

我还禁用了所有主题组件和插件,看看这是否有帮助,但没有成功。

我怀疑是我遗漏了某些对其他人来说可能很明显的东西,或者该组件可能存在问题。

您在检查器中看到 body 标签中的主组了吗?

杰伊,真的不确定这是哪个检查员?

用户显示在组中,并且他们的个人资料上的指示器与我在此图像中的指示器相同。

当您右键单击您的网站并选择“检查”时,您可以看到 pfaffman 正在寻找的内容。
例如,我在我的用户管理页面(/admin/users/{user_id}/{username})上看到这个


由于这是我的帐户,当我右键单击并选择“检查”时,我看到

在那里您可以在 <body> 中看到“testgroup”

这就是我的意思,但我现在记得/看到该组件是从用户模型中获取主组,而不是从 CSS 中获取。

所以,也许在管理员用户路由中找到一个用户,并在 URL 中添加 .json。然后检查他们的主组是什么,并在浏览器中搜索 primary_group: true,并检查名称是否与您在主题配置中使用的名称完全匹配。

2 个赞

大家好,

感谢您的澄清。我遵循了这些说明,并使用了 .json URL 来确认确切的组名。

主组名确实是 Community-Core,包括大写字母和连字符,这正是我在主题组件设置中输入的。

不幸的是,它仍然不起作用。匿名页面重定向仍然有效。所以,问题一定出在别的地方。

其他人可以确认这对他们来说是有效的吗?

你还有其他什么想法可以检查吗?

不。如果它转到匿名页面而不是“自定义默认主页”,那么它在执行时找不到用户

      const user = api.getCurrentUser();

如果用户确实已登录,我不知道这怎么会发生。

啊,你试过重新加载页面吗?

1 个赞

谢谢 Jay,我尝试过重新加载。我尝试了对 URL 和类似内容进行多次调整。它确实加载了匿名页面。如果我更改它,它会转到该页面,并且还在浏览器 URL 中显示 /latest。

我搜索过,并认为没有其他简单重定向的方法。使用 PHP 网站更容易。我对 Discourse 仍然是新手。

这是一个非常奇怪的边缘情况,并且触及了让 Discourse 做它不擅长的事情的领域。