Hide ignored users' topics

:information_source: Summary This component allows you to hide topics from users you’ve ignored
:hammer_and_wrench: Repository GitHub - Lhcfl/discourse-hide-ignored-user-topics
:question: Install Guide How to install a theme or theme component
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Take inspiration from this post:

This component allows you to hide topics from users you’ve ignored.

It does exactly what it sounds like, and its main principle is very simple, so I will paste the main code below:

<script type="text/discourse-plugin" version="1.6.0">

const { alias } = require("@ember/object/computed");

api.modifyClass("component:topic-list-item", {
    pluginId: "remove-ignored-users-topic",
    attributeBindings: ["data-topic-id", "role", "ariaLevel:aria-level", "data-creator-name"],
    "data-creator-name": alias("topic.creator.username"),

const s = document.createElement("style");
for (const u of api.getCurrentUser()?.ignored_users) {
    s.innerHTML += `tr.topic-list-item[data-creator-name="${u}"] { display: none; }`;



@Lhc_fl ,

Essentially if the feature of this theme component could be expanded to include a toggle add ab additional hide option.

Default Ignore will hide said user’s posts.

Could an option be added to this component to add hide replies to an ignored user. As some overly sensitive ppl complain they can still see other ppl responding ti the ignored user.

1 Like

It’s not difficult, but I don’t know if it’s necessary…
Ignored user posted. They don’t want to see it. Then someone replied to this user. They also don’t want to see it. Then someone else replied to this reply, and then another reply to the reply to the reply… Shouldn’t these be seen?

  • It causes discussions to break down. Fine, you mute someone, so you “never” see that person’s posts. But then another user you like quotes the muted user in their post, or references their @name, or replies to their post. Do you then suppress just the quoted section? Suppress the @name? Suppress all replies to their posts, too? This leaves big holes in the conversation and presents many hairy technical challenges. Given enough personal mutes and blocks and ignores, all conversation becomes a weird patchwork of partially visible statements.

this is necessary…
if A wants to ignore B, that means all topic/posts, that will be ideal

  1. topics by B are ignored totally, this is good/done

  2. in others’ topics, B replied,
    2.1 B’s posts should be hidden, done
    2.2 B’s avator should be removed from the post list page (the participates), this seems not hard to do ?
    2.3 if B’s post is quoted, not sure if that part is easy to remove/hide ?

thanks for this great efforts, this is really useful, hope you could consider 2.2, and 2.3 if possible to do…


Well as I said or had in one of my posts. In sime respects seems excessive. As a member should be able to skip replies. Unfortunately some ppl seem to lack this skill.

Personally I myself think maybe just direct responses. However for these overly sensitive users the origin to end point could be of value.

Even as a supplemental separate component. Just something that can be of value not only to the overly sensitive user. But also the. mod team(s) to have 1 less potential headache. Could maybe use a user feild to allow the User to toggle this on/off maybe?


In my particular case the community lost a valuable member because he couldn’t gloss over skip reading responses. That in his opinion were gaslighting ppl. So in his irritation demanded I ban the user he had an issue with.

To be clear this user(overly sensitive one) in 2 or 3 years as a member was never a problem and a strong contributor.

This concept could also be a benefit to forums dedicated to helping ppl with mental health issues.

There are a lot of challenges with this, and things can break down when there are differing opinions about what is the primary or secondary problems.

Categorizing people as being overly sensitive or having a mental health issue can be considered an insult to them, it can be tragic how quickly a conversation breaks down into an argument and then someone is identified as being a troll or problem person.

There can be great value in having a space for people to argue freely without fear of being censored or edited, but that may need a specific kind of forum or place for that to not be causing unnecessary problems for others.


I’d hope it’s not a common need, but I have personally felt the need, and lacked the tools, to avoid being reminded of the existence and opinions of a person who very much troubled me. One might say that I was triggered, one might say that I’d been trolled, or was being wound up. But I had a very real and unwelcome physiological response, and if I wanted to continue to be an active member of the forum, I would have preferred to have been unaware of that person. At least for a while.

So, sometimes we are exclusively in the company of robust people, sometimes we are in a subculture which highly values all forms of personal expression, but sometimes we are vulnerable individuals who still have a need to participate or feel a sense of belonging.

Edit: this has also happened to me in real life, at work, a person who I would always be at odds with, my heart rate would rise and I’d experience a fight-or-flight response if he even came into the room. He wasn’t even aggressive or objectionable - it was my response that was affecting me.


I feel that blocking (at least not being able to read/ having a constant suggestion to read) direct responses to oneself from the blocked user is a good step

honestly, in some sense, you should be able to block all content from a blocked user, I can’t see how that isn’t justified in some cases (excessive trolling and such)


Does this one hide the notification of new topics from ignored users? From the code I guess the answer is no?

1 Like

This one is only for new topics not posts.


Yes the default hides posts & replies. This adds new topics

1 Like