User to User Block
Better Messages gives every chat user a built-in Block action that stops another user from sending them messages. The block is one-directional and reversible, with role-based controls for which user roles can block and which roles are immune from being blocked — so site staff and moderators can always reach users for safety reasons.
What it adds#
- One-click Block action from any conversation, profile, or message author menu
- One-directional logic — the blocker can still message the blocked user if they choose
- Blocked users cannot start new threads with or send messages to the blocker
- Role-based permission to use the Block action (e.g., paid members can block, anonymous can't)
- Role-based immunity from being blocked (e.g., moderators, support staff, admins)
- Unblock at any time from the user's personal block list
How it works#
When user A blocks user B, the plugin stores a one-directional block record in the database. From that moment:
| Action | Outcome |
|---|---|
| B tries to start a new thread with A | Blocked — UI hides the "Send Message" button on A's profile |
| B sends a message to an existing thread with A | Blocked — message rejected with a user-friendly notice |
| A sends a message to B | Allowed — the block is one-directional |
| B sends a message to a group chat that includes A | Allowed — group conversations are not affected |
| A unblocks B | Communication resumes immediately, prior history preserved |
The "Immune Roles" setting overrides the block — a user in an immune role (typically administrators or support staff) can still message a user who blocked them. This prevents the block feature from being used to evade moderation contact.
When to use#
Common deployment patterns:
| Site type | Configuration |
|---|---|
| Dating / fan community | Everyone can block; only admins immune |
| LMS with cohort discussions | Students can block peers but not instructors (instructor role immune) |
| Marketplace (Dokan / WCFM) | Vendors can block buyers; site admin and shop manager immune |
| Public support forum | Anonymous/guest users can't block (low trust); registered users can |
| Telemedicine / coaching | Clients can block other clients; coach + support staff immune |
How to enable#
Navigate to WP Admin → Better Messages → Settings → Restrictions.
- Allow Users to Block — Enables the Block action throughout the messenger UI
- Roles That Cannot Block — User roles whose users do NOT see the Block action (typically guest/anonymous)
- Immune Roles — User roles whose users are exempt from being blocked (typically Administrator, Shop Manager, custom moderator roles)
Frequently asked questions#
Is the block visible to the blocked user?#
No — the block is silent. The blocked user sees the same UI but their "Send Message" attempts fail with a generic "Cannot send message" notice rather than naming the blocker. This is intentional to avoid retaliation.
Does blocking affect group chats?#
No. Group conversations and chat rooms are not affected by user-to-user blocks. If user B and user A are in the same group, B's messages still appear to A. To exclude a user from a group, the room admin should remove them directly.
Can administrators see who has been blocked by whom?#
Yes — the block records are stored in the database and can be inspected by an admin via direct SQL or by extending the admin UI. There's no built-in admin "View all blocks" screen in the current version.
Can a user be blocked by many people?#
Yes, there's no cap. Each block is an independent A→B record. A user who is blocked by 100 others simply cannot message any of those 100, but can message everyone else normally.
What happens if I block someone then we're both in a guest conversation?#
Guest conversations follow the same rules as regular conversations — direct messages are blocked, but if both users participate in a multi-party guest chat (chat room), messages are still delivered.
See also#
- GDPR-compliant messaging — privacy controls including blocking
- Block users feature post — full feature write-up
- Role-based access — granular role permissions across the messenger
- Auto-delete messages — message lifetime controls for privacy