WordPress Chat Widget: Floating Bubble and Mini Widgets
A messenger that lives only on its own page is half a messenger — members have to remember to visit. A chat widget that follows them across the site (and is one click away on every page) keeps the messenger present, which keeps the conversations active. Better Messages ships Mini Widgets — a configurable widget layer with two display styles (Floating Bubble or bottom-tab bar), four placements (bottom bar, side panel, mobile bar, floating bubble), and dedicated tabs for Friends, Groups, Courses, Spaces, AI Bots, and Chat Rooms.
Two display styles#
Choose per site:
- Bottom tab bar (classic) — a horizontal bar pinned to the bottom of every page, with tabs for the user's recent conversations and the configured widget tabs. Closer to a desktop messenger.
- Floating Bubble — a circular button in the corner, like a Crisp / Intercom chat bubble. Click to expand into a chat panel; click outside to collapse. Closer to a standard SaaS support chat.
Both styles share the same underlying widgets — only the chrome differs.
Tabs you can add to the widget#
Each widget tab can be enabled or disabled per site, with its own icon and label:
- Conversations — recent threads, with unread badges.
- Friends — the user's friend list (BuddyPress / BuddyBoss / PeepSo / UM / FluentCommunity Friends), with quick-DM.
- Groups — paired group chats from the user's community-plugin groups.
- Spaces — FluentCommunity Spaces (separate from social Groups).
- Courses — LMS course chats (LearnDash / LearnPress / Tutor LMS / MasterStudy / FluentCommunity Courses).
- Chat Rooms — public or members-only chat rooms the user has access to.
- AI Bots — start or continue conversations with configured AI Chat Bots.
- Users — browse and message any site member, with optional online-only filter and three display modes (all / by role / hand-picked).
Tabs can be reordered. The most common combination for a community site: Conversations + Friends + Groups + Chat Rooms.
Per-role visibility#
Each widget can be restricted to specific WordPress roles. Common patterns:
- Free members see only Conversations.
- Paid members see Conversations + Friends + Groups + Courses.
- Staff / admins see everything + Users.
Hide tabs when empty#
The Friends / Groups / Courses / Spaces tabs can be set to hide when empty for that user — a member with no friends does not see an empty Friends tab. Reduces UI clutter for new users.
Where the widget shows up#
By default the widget renders on every page of the site, except:
- Inside the messenger page itself (redundant)
- Inside wp-admin
- On pages blocked by the per-role / per-page restriction filter
A custom filter lets you exclude specific pages (checkout, landing pages, etc.).
Mobile mode#
On mobile (below the configured breakpoint), the bottom-tab bar style switches to a full-screen mobile UI on tab click. The Floating Bubble style remains a bubble but expands into a full-screen panel when tapped.
Installing mini widgets#
Mini widgets are part of the core plugin — no separate install.
- Install Better Messages from WordPress.org and activate it.
- Open WP Admin → Better Messages → Settings → Mini Widgets.
- Pick a display style (Floating Bubble or Bottom Tab Bar).
- Enable the tabs you want; configure icons, role restrictions, and "Hide Tab When Empty" behavior per tab.
- Save. The widget appears site-wide for users with permission.
Free vs WebSocket version#
Mini Widgets work on both versions. The differences:
| Feature | Free version | WebSocket version |
|---|---|---|
| Floating Bubble + bottom-tab bar | yes | yes |
| Friends / Groups / Courses / Spaces / AI Bots / Users tabs | yes | yes |
| Per-role visibility | yes | yes |
| Real-time unread badge updates | polling | instant |
| Mini-chat popups from member profiles | — | yes |
| Online presence dot in the Users tab | — | yes |
The mini-chat popup (WebSocket version) is the single biggest UX upgrade with the widget — clicking a friend in the Friends tab opens a chat overlay without redirecting to the messages page. Members stay on the article / course / product page they were reading.
Frequently asked questions#
Can I disable the widget on specific pages?#
Yes — list page URLs in the admin's exclusion field, or add custom CSS scoped to those pages that hides the mini-widget container.
Does it conflict with WooCommerce floating cart / Crisp / Intercom?#
The widget tries to position itself out of the way of common floating UI. For specific conflicts, the widget's position is configurable (left / right corner, bottom offset).
Will the widget show for guests?#
Optional. With Guest Chat enabled, unregistered visitors see the widget and can start a thread without registering.
Can I have only the Conversations tab without the others?#
Yes — enable just Conversations, disable every other tab.
Does the Users tab show every site user?#
The Users tab is configurable — show all users, filter by role, or hand-pick specific users (e.g. "show only these 3 instructors"). Optionally filter to online-only, order by online-first, sort by last activity / registration date.
See also#
- Mini widgets documentation — full feature reference
- WordPress community chat plugin — comparing community platforms that benefit from the widget
- Real-time messaging — what changes with the WebSocket version