有人能帮我看看这个房屋改造代码吗?

如果您想通过覆盖模板来删除列,这是一个很好的起点:

https://meta.discourse.org/t/beginners-guide-to-developing-discourse-themes/93648#overriding-discourse-templates-23

它解释了如何覆盖模板以删除列。

直接解决方案
  1. 在您的管理员面板中,转到“自定义” → “主题” → “您的主题” → “编辑 CSS/HTML”

  2. 在“Head”选项卡中,粘贴此代码:

    <script type="text/x-handlebars" data-template-name="list/topic-list-item.hbr">
    
    </script>
    
  3. <script> 标签之间,粘贴原始模板的内容:
    https://raw.githubusercontent.com/discourse/discourse/main/app/assets/javascripts/discourse/app/templates/list/topic-list-item.hbr

  4. 删除此部分:

    <td class="num views {{topic.viewsHeat}} topic-list-data">
      {{raw-plugin-outlet name="topic-list-before-view-count"}}
      {{number topic.views numberKey="views_long"}}
    </td>
    
  5. 转到 CSS 选项卡并插入此代码:

    .topic-list-header th.views {
        display: none;
    }
    
  6. 别忘了保存您的更改。

结果:


仅 CSS 解决方案(更短):

.topic-list {
    .views {
        display: none;
    }
}

我补充说,覆盖模板需要更多的“监控”,因为 Discourse 模板代码会随着版本更新而变化,并且需要相应地更改您的覆盖。

CSS 解决方案更灵活。

4 个赞