这是我目前的实现:
灵感来源于:
https://meta.discourse.org/t/topics-created-by-ignored-users-showing-on-homepage/170366/14
并配合这个主题组件:
它同样适用于移动端。
另外,如果你将这一行:
修改为:
<a href="{{topic.lastPostUrl}}" data-user-card="{{topic.last_poster_username}}" data-user-id="{{topic.creator.username}}">{{avatar topic.lastPosterUser imageSize="large"}}</a>
并将我的代码在以下位置:
https://github.com/notedboi/Discourse-Hide-Ignored-Users/blob/main/common/head_tag.html#L13
修改为:
let tr = $('*[data-user-id="' + ignored[u] + '"]');
你就可以在移除由被忽略用户创建的帖子的同时,保留最后发帖人的头像和卡片视图。
我唯一的担忧是脚本会每 500 毫秒检查一次,可能会占用过多内存。