Blurring all posts by a certain user by default

Hi

Would it be possible by default that all postings by a certain user to appear blurred? I do not want to suspend him, just to have all his postings blurred.

Thank you

Hello,

I don’t think it’s a very good idea if I understand it correctly what you would like to achieve. What I mean you want is hide a specific user all posts with blurred out.

But if you really want to do this, then I think the easiest way to add some css.

Note: This is a css modification so advanced users can easily disable it and see the post.

Please test it before use!

Create a new theme component and add the following to Common / CSS section.

// change the number word to the specific user id
article[data-user-id="number"] {

  // make post content unselectable
  @include unselectable;

  // make clickable elements (avatar, post control buttons etc) unclickable
  pointer-events: none;

  // blur the whole post
  filter: blur(0.5em);

}

Result: It blurred the data-user-id="3" user’s posts.


Oh and probably a good idea to not hide it for staff users.

To not hide it for staff users use this code instead the previous one.

// show posts only to staff users
body:not(.staff) {

  // change the number word to the specific user id
  article[data-user-id="number"] {
  
    // make post content unselectable
    @include unselectable;

    // make clickable elements (avatar, post control buttons etc) unclickable
    pointer-events: none;

    // blur the whole post
    filter: blur(0.5em);

  }

}
2 Likes

Thank you very much.

This way will it stay always blurred? if another user clicks on the blurred content will it appear like it usually appears when you click on blurred content?

Yes this way it’s always blurred. But I see now, you want it like in the Discourse Spoiler Alert plugin.

Like this :smiley:

1 Like

Yes, that is exactly. I know a user is bothering a lot of other users. I do not want to block him. I want to give the option to the other users to see his posts only if they want to.

1 Like

Why not just encourage users to ignore this particular user. That way hiding the bad users content will be done on a personal level. Seems easier to do that than try and invent new ways of hiding a users posts. Seems a bit harsh and to new users it could sound a bit like “hello there new member! Lovely to see you by the way… Check out our public collection of bad users. You won’t miss them they are blurred out”

3 Likes

It is a bit more complicated. We are a very small community (about 60 users) and we get on average 2 new users per month.

The users that we want blurred (for periods of time) are not truly “bad” - then we would ban them permanently. They become let’s say erratic depending on the events we are discussing or other external factors and are mostly trolling, irritating a group but not all users. If you are not annoyed then you click on the blurred content and see it. But if you are annoyed (and you know based on an experience of 10 years with that user what will follow) you can ignore him. When you scroll content it is not easy to ignore a user just by jumping over his comment.

You can even choose a duration in the ignore function in Discourse. The posts by that user are shown as hidden replies

You can ignore users by visiting their profile and choose irgnored

or in your preferences /my/preferences/users
Maybe you need to change the min trust level to allow ignore so that all of your users can use that feature

2 Likes

Yes, this works.

Thank to all of you who took the time to answer my question(s).

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.