Skip to main content

Block Users in WordPress Chat: User-to-User Blocking

· 5 min read
Creator of Better Messages

Every messaging surface eventually deals with the same UX requirement: let members opt out of messages from specific other members, without involving an admin. WhatsApp, Signal, Telegram, Discord, Slack — all of them have a "Block this user" option in the conversation menu. Better Messages has the same: users block each other directly, the block is one-directional, and admins can control which roles are allowed to block and which roles are immune to being blocked.

How user-to-user blocking works#

When user A blocks user B:

  • B can no longer send messages to A.
  • B can no longer start a new conversation with A.
  • B can no longer see A as a recipient in the New Conversation search (depending on the visibility setting).
  • A can still message B if they choose. The block is one-directional: the blocker can still reach out; the blocked user cannot.
  • The block can be lifted at any time from A's profile settings.

This is the standard "block" semantic users know from every consumer messenger. The asymmetry is intentional — if both sides went silent, neither could de-escalate.

Where blocking lives#

Two places members access it:

  • Per-thread menu — open a conversation, the participant's actions menu has a Block option.
  • Profile settings — under "Who can message me" or equivalent, members can see their block list and unblock anyone.

Admin controls#

Two role-based controls in WP Admin → Better Messages → Settings → Restrictions:

Roles that cannot block#

Lists roles that lose access to the block feature. Common pattern: free-tier members can block, but heavily-restricted roles (e.g. trial-only access) cannot — preventing abuse where trial users block legitimate admins.

Immune roles#

Lists roles that cannot be blocked by anyone. Common pattern: administrators, support staff, and instructors are immune — members cannot block them, ensuring critical communication channels stay open.

A typical setup:

RoleCan block?Can be blocked?
Administratoryesno
Support staffyesno
Instructoryesno
Paid memberyesyes
Free memberyesyes
Trial / suspendednoyes

Block vs admin-level restrictions#

There are two layers of access control in Better Messages:

  • Admin-level role restrictions (this configures who can message whom site-wide; see Role-based access for WordPress chat)
  • User-level blocks (this lets each member individually opt out of specific other members)

They stack — both rules apply. The admin's role matrix gates whether the pairing is possible at all; the user's block list gates whether a specific pair stays active.

How to enable#

  1. WP Admin → Better Messages → Settings → Restrictions.
  2. Toggle on Allow Users to Block.
  3. Configure Roles that cannot block if you want to restrict the feature to specific tiers.
  4. Configure Immune roles for admins / staff / instructors.

Free vs WebSocket version#

User blocking works on both versions:

FeatureFree versionWebSocket version
User-to-user block (one-directional)yesyes
Block from per-thread menuyesyes
Block list in profile settingsyesyes
Role-based control over who can blockyesyes
Role-based immunity from being blockedyesyes
Real-time delivery of block-state changespollinginstant

Frequently asked questions#

Does the blocked user see they were blocked?#

No — blocked users see a generic "you cannot send messages to this user" message, not a specific "you have been blocked" notice. This is the standard pattern and reduces friction.

Can blocked users still see old messages?#

Yes — historical messages stay readable on both sides. The block only affects new messages and new conversations.

Can admins force-unblock or override a block?#

Admins are typically in the immune roles list (which means they cannot be blocked at all). For force-unblocking other users' blocks, a custom filter is available — talk to support.

Does blocking apply to group conversations?#

User-to-user block is a 1:1 mechanism. In a group conversation, blocked users can still post — but the blocker can filter their messages via a separate UI control. For full group-level moderation, use the group chat admin tools or the AI content moderation feature.

What about reporting users to admins?#

Reporting is a separate feature: members can flag specific users for admin review via the Report Messages action. See the Report Messages feature documentation.

Does this work with guest users?#

Guest visibility in the block UI is configurable. The synthetic "Guests" role can be added to immune or no-block lists like any other role.

See also#

Install Better Messages from WordPress.org →