Is it possible to disable private messaging for a specific user?

Is it possible to disable private messaging for a specific user without relying on trust levels?

Let me explain why I’d want to do that:

I run paid membership website where I teach some classes and help people out.

The thing is, if I allow non-staff members to message me, they abuse that. They keep sending “it’s just a small thing that I wanted your opinion on”

So perhaps I’d like to restrict to something that, for example, only I can start private messages with other people.

Is that possible?

Even if there is not settings now, is it possible by changing the code somewhere?


EDIT: I think I wasn’t clear when I was explaining what I wanted:

I want to not let people message me while still keeping the PM feature working for everyone.

So basically they can all PM between them, but they can’t PM me — only I can PM them if I need to get in touch for some reason.

Actually, just disabling PM for my account (as an admin) would already suffice. If I could start a PM like I explained before, great! But if not it’s ok. As long as people can’t PM me.


I suggest using Discourse’s groups feature to create some good semblance of fine-grain control.

Anyone who has paid for classes or for single classes may be placed into specific corresponding groups created for them. And through these groups, you may then create also-corresponding categories only these-specific-groups may access.

As for freelance, one-time clients–aye; PM system makes sense to use. And then we return to your initial problem.

Ultimately, I feel my suggestions should be a generic deterrent. And if a non-staff member does attempt to ask for information you feel has monetary value on it, call them on it.

“Hey, thanks for your interest in my information; I appreciate you take value in my thoughts to ask me and thus trust what I say. I take care in dispensing that info, which is why I do charge for the specific info you are asking me for: I think a great deal about it–a lot of time–and I want to be able to provide the best information for you, tailored for you: this is why these questions must be covered with a fee. Check out my pricing pages, and if you want to discuss these options, please reply to this message.”

When you explain why you charge (you are devoting a lot of mental tasking and time to those questions) and thus place a lot of care and consideration to what answers you give then you put the onus on them to ask again, or even barter the value of the time and dedication you put to these classes and one-on-one sessions.

They just see information, not the care and passion you took to make them. Point that out–you may not need this strict option at all. And you assert the real value of your product.

EDIT: Or, Jeff’s reply below for what you seek. Classes, I personally suggest groups+categories.

1 Like

This is already possible. Disabling PMs only disables it for normal users. PMs cannot be disabled for staff. Pretty sure the description for the setting says this as well:

1 Like

Not being picky here to be a pain. Perhaps a minor edit along the lines of “the staff can always send messages to any member no matter what” may clear some confusion. Some (not a lot, obviously–hence why I admit this may be seen as a shallow suggestion to already in-practice-and-obviously-99ish%-great-to-everyone-else-sofar-copy) may read that as “staff to staff only communication”.

1 Like


Why not write some “rules” for your website and “Pin it” at the top of the forum?

In it, explain your “conditions” and rules about PMs (like Tarak’ha suggested). Then, don’t feel guilty about it when you don’t respond. :smiley:

Sorry, I think I wasn’t clear on my explanation of what I wanted. I’ve edited my topic to include the following:

EDIT: I think I wasn’t clear when I was explaining what I wanted:

I want to not let people message me while still keeping the PM feature working for everyone.

So basically they can all PM between them, but they can’t PM me — only I can PM them if I need to get in touch for some reason.

Actually, just disabling PM for my account (as an admin) would already suffice. If I could start a PM like I explained before, great! But if not it’s ok. As long as people can’t PM me.

I do that. But it’s a tough one… Because even with multiple tries to make them read the bloody rules, still a lot don’t even bother (I know… frustrating). Then they still PM me expecting an answer. And since they are paid customers it looks bad if I don’t or if they haven’t read the rules saying that I won’t respond.

That’s why I wanted to simply block anyone to PM me, while still allowing (1) PM between themselves and (2) allowing me to start a PM with someone if I need it.

Well, actually, I’m happy with disabling PM entirely for my account as an admin :sweat_smile:

1 Like

You may also consider idea I have put into practice with a previous (almost ten year old; now closed) community I ran–

Make the admin account a strict “root/utility-only” account and then make a Leader-level account for yourself. Now you can disable PMs on that Leader-only account. Admin account becomes the “if I need to send a PM for technical reasons, then here: not related to conversation and/or business dealings.” And those who insist on sending you these “just want your small opinion” PMs to your admin account shall go unanswered–as long as you make it clear the admin account is only as a tech-support channel; reporting issues RE: using your site or Discourse instance et al.

That sounds like they know that too and are taking advantage of you from that: they are previous clients, paid for some classes already gone and archived, or some freelance. That does not give them carte blanche to pinch free intel off you because of a past that is open and closed; paid and done.

And if they get upset, learn the lesson I learned long ago: you are not going to please everyone. After you accept that truth, you get more respect when you stand up for yourself, even though from that you are now not necessarily liked first. I–from personal experience–prefer that. Respect be business gold versus the lowly pewter: only being liked or seen as “nice”. And thus seen as possibly a pushover.

(Apologies; this second suggestion does not really attempt to “answer” your technical question. It does offer insight into a larger situation I see, that this technical question only seeks to avoid or hide from and ultimately be part of your paid membership biz model–and a weakness in it some be exploiting.)


Thanks man. Good suggestions.

About your second point: totally agreed on that! I do let it go the “nice” guy approach most of the time :sweat_smile: Usually it’s my way or the highway.

That being said, if we can avoid unecessary conflict — specially with paid customers — then that would be ideal.

You should see some controversial posts that I promote via Facebook ads: everyone and their dog have an opinion about it! And a LOT of them simply hate me just because… well… I’m there. And they got curse someone lol

Thanks again! Appreciated!

1 Like

I’m not sure I’m completely understanding. Is this close?

Member to member messages are OK
Member to Admin messages are sometimes OK

If this is correct:
I think it is important that members be able to message a designated Contact.
I imagine in the vast majority of cases the Contact is the Admin

It would be nice if clear thorough instructions could be provided and every member actually both read them and understood them.

And how’s that going for you?

Using this forum as an example, if the above were true, this forum currently has 879 members

But wait, going by the Basic Badge (Trust Level 1) this forum has 10161 members

So if I’m understanding the problem, it’s

Forum related Support messages to the Contact are OK
Non-forum related messages to the Contact / Admin are not OK

Contrived examples:

“How to I change my Title” - OK
“Please give me free help on my project” - Not OK

The only way that might even come close to controlling what makes it to the message Inbox would be to code in predefined select “reasons”.

And even then something like “Preference Settings Help”
could be chosen as the reason even though the message content might contain otherwise.


Hum let me try again with rules, so maybe it’s clearer:

Ideal Scenario:

  • PM between members » ok!
  • PM started by me (admin) to anyone » ok!
  • PM from a member to me (admin) » forbidden!

But if that’s tricky to do I’m totally fine with:

  • PM between members » ok!
  • PM started by me (admin) to anyone » forbidden!
  • PM from a member to me (admin) » forbidden!

So basically a setting where I could disable PM for a specific user (myself or someone else) would suffice.

Hummm… that would indeed be another way to do it:

Is there a way to prevent a specific user from using PM’s without relying on trust levels or anything like that?

Not that I know of.
Permissions are controlled by Group / Trust Level not per User

Question. If you set things up so that you the Admin does not receive messages, who is the Contact that does?

1 Like

You mean for any problem or anything like that?

For that all users have the official support channel. So they can get in touch via our support system (with a team behind, and not just me)

That’s another reason I wanted to avoid having people PM me… So they can go through the official support channel. Or at least force them to post it publicly

It sounds like you want to hide—which is perfectly acceptable!

If there isn’t a coding option, can’t you just ignore all PMs?

If they don’t have it, maybe Discourse needs a “Automatically send PMs to Trash” (like gmail labels), with a button to “Flush” it whenever you want. Or auto setting to flush the junk daily or on set days, weekly, or monthly.

I wonder

I guess in many cases

would be enough.

But I would be concerned that some things might be of a more sensitive nature where members would not want to make a public post but would feel comfortable sharing knowing that the information was more private.


I recently lost my job, my wife left and took the kids and the house, and I’m now living at the YMCA.
I have a new job lined up, but it will take a while for me to get back on my feet.
Can I arrange to make installment payments?

An OK question as a one-to-one with the Admin.
NOT something I’d want posted for anyone and everyone to see.

IMHO instead of seeking for a code solution to the problem, if a particular member is harassing you with messages it’s time to take more personalized steps to have them stop.


Yeah for sure there should be a way they can send a private message — but that’s what is the official support channel is for. Otherwise I’d go crazy trying to respond everyone privately :sweat_smile:

Not really. Well, I could, but it might be tricky because they might think “Oh this bastard… he doesn’t even respond me! That’s no way to treat a customer!”

And indeed it’s not.

I just want them to either post it publicly (so my answer benefit more people inside my forum) or send it privately where my team behind it can handle it.

For sure I’ll do that if it comes to it. Still I’ll try to find a way to just disable PM’s for myself. There’s probably somewhere in the code where I can change to make that happen.

I support user setting for

Allow other users to send me private messages.

I think it is fine, some people do not want to be contacted behind closed doors and it is in no way a prerequisite for participating in a forum


Indeed that would solve my “problem” :smile: . Plus it’s an extra settings in case someone doesn’t get contacted privately.

Sorry to bring up an old topic, but I tried disabling this feature and don’t see the option for staff to continue to message. Do you have to already have an existing thread? Also, if a staff member messages a regular user, can the regular user respond?

1 Like

Sorry about that, there was indeed a bug where staff were not able to PM. I’m not sure why we didn’t catch that sooner, but @techapj committed a fix.