删除关于页面

您好,

有什么办法可以移除“关于”页面,或者至少控制其中的信息吗?
比如不显示某些管理员。

5 个赞

您可以像这样使用 CSS。将用户名放在“Bob”所在的位置。

.about-page div[data-username="Bob"] {
    display: none !important;
}
2 个赞

嗯,这会隐藏一个元素,但它仍然在 DOM 中。

2 个赞

你可以尝试使用 js 脚本来阻止

2 个赞

要将其从 DOM 中完全移除,您需要覆盖主题中的“关于”页面模板……这里有一些关于如何执行此操作的详细信息:(not recommended) Overriding Discourse templates from a Theme or Plugin

默认模板是这个:discourse/app/assets/javascripts/discourse/app/templates/about.hbs at 9e440dca332c0e2879a1a6a4ee49347aba33d1ef · discourse/discourse · GitHub

要覆盖,您需要复制上述文件的内容,将其添加到 {theme}/javascripts/discourse/templates/about.hbs,然后根据需要进行修改。您可以通过删除此块来删除所有管理员……

{{#if this.model.admins}}
  <section class="about admins">
    <h3>{{d-icon "users"}} {{i18n "about.our_admins"}}</h3>

    <AboutPageUsers @users={{this.model.admins}} />
    <div class="clearfix"></div>
  </section>
{{/if}}

如果您只想删除部分管理员,您可能需要覆盖路由以添加自己的过滤器(默认路由在这里:https://github.com/discourse/discourse/blob/098ab29d4150a5a39880d59ef6cad5f6795a18fd/app/assets/javascripts/discourse/app/routes/about.js)

5 个赞

也许我没有钻研得足够深入,但我还没有找到一个设置可以完全隐藏所有用户的“关于”页面(或者至少对除管理员以外的所有用户隐藏)。

我错过了什么吗?

不,你没有错过任何东西。目前没有为此设置。有一个#feature request来添加一个,你已经评论过了:

3 个赞

谢谢!