通知横幅

好的,我刚测试了一件事。关闭了测试横幅,更改了开始和结束日期,保存后重新加载了页面。没有横幅了。

所以一旦对用户消失,就永远消失了吗?

1 个赞

啊!@Roi,你说得很有道理,简单来说答案是肯定的。

每个横幅都会根据其索引号和插件插槽名称分配一个 ID。然后,关闭的横幅的 ID 会存储在浏览器的本地存储中。

因此,如果一个横幅被关闭,即使其配置发生更改,它仍将保持隐藏状态。

我明白这可能是一个问题;我会想出更好的处理方法。——欢迎提出建议 : )

1 个赞

versatile-banner 使用 cookie 名称设置,管理员可以更改该设置,以使用户重新看到被隐藏的横幅。

1 个赞

感谢 @Moin 的提示,重命名 cookie 以使已保存的 cookie 失效看起来是一个非常实用的解决方案。

在通知横幅中,横幅可以上下移动以更改排序顺序,或更改出口。如果之前在同一位置有一个横幅并已被关闭,这可能会导致新横幅被隐藏。

看来我需要更改 ID 的定义方式,然后或许调整 cookie 方法。:thinking:

那么,cookie似乎比ID更好,特别是当您更改排序顺序时,ID会发生变化。:eyes:

在我看来,每次更改横幅时生成一个新的(cookie)ID会很有用。

关于周期:如果已经是圣诞节,我希望有一个周期,可以按工作日(一个或多个)和月份中的某一天(一个或多个)来完成。而且可能两者都可以是“每隔x”,这样我就可以选择例如“每隔一个星期一和星期五”或“每隔三个月的第1天和第16天”。

实际上,我已通过混合解决方案解决了此问题。

一个新的横幅配置版本设置将应用于所有横幅;以及新的独立横幅 ID 值。

每个横幅的实际 ID 使用这两个值构建。我认为此方法应提供更好的灵活性:

  • 可以通过更新单个横幅的横幅 ID 来重置其可见性,而不会影响其他横幅的可见性。
  • 如果需要重置多个横幅或所有横幅的可见性,则可以更新横幅配置版本。

我将很快部署此更改。


更新: v1.4.0 现已发布。

为每个通知横幅引入了一个必需的[1] 横幅 ID 字段,并更新了相关的设置、迁移逻辑和测试以支持此更改。此外,还添加了一个 横幅配置版本 设置,以帮助在发生重要更改时重置用户的横幅可见性。这些改进确保了横幅的关闭跟踪更加健壮且面向未来。


  1. 唯一性取决于用户。不幸的是,主题对象设置不允许要求唯一值。但是,选项卡标签现在使用 ID 值使其更加可见。 ↩︎

太棒了!谢谢!我会进行测试并向您提供反馈。 :slight_smile:

1 个赞

说得对!太棒了。再次感谢!:slight_smile:

1 个赞

我刚注意到,当一个横幅应该对所有用户显示并且在 top-notices 上时,它也会显示在登录和注册屏幕上。这对于桌面使用来说不是什么大问题,但它会干扰移动设备上这两个屏幕的使用。是否可以省略这些屏幕上的 top-notices 横幅?如果你问我,我也不介意在桌面版的登录/注册屏幕上没有横幅。 :wink:

@Roi 如果您想将横幅限制为仅限登录用户,您可以简单地在受众群体中选择所有 TL 组。

或者,您可以使用可用的 CSS 选择器在登录/注册页面上隐藏横幅。

不,为未登录用户显示横幅会很好。

是的,我想起来我也隐藏了其他东西,现在我用 CSS 和 display: none; 帮自己解决了 login-page(登录页面)、signup-page(注册页面)和 invite-page(邀请页面)的问题。:slight_smile: