Search
Better Messages includes a full-text search across every message in every conversation the user is a participant in. The search bar lives in the messenger UI — one query, results from DMs and group chats, click to jump straight to the message in context.
What it adds#
- Search bar in the messenger interface for finding specific messages
- Full-text matching across all of the user's threads (DMs, group chats, chat rooms)
- Results show the matching message line + its conversation context
- One-click navigation jumps to the matched message in its thread
- Works on the web app and mobile app
How it works#
The search executes a MySQL LIKE-based scan across the user's messages, scoped to threads they're a participant in. Results are sorted by recency by default — newest matching messages first.
| Query | Matches |
|---|---|
invoice | Any message containing "invoice" (case-insensitive) |
shipping fee | Messages containing both words (any order) |
| Special characters | Punctuation is ignored; alphanumeric + whitespace tokens are matched |
For very large message archives (10K+ messages per user), the LIKE search may slow down. Future versions will add MeiliSearch or Elasticsearch as an optional backend for high-volume sites — for now, the default works well for typical communities.
When users search most#
| Audience | Common search patterns |
|---|---|
| Marketplace vendor | "tracking number", "refund", customer name |
| LMS instructor | Assignment name, student name, due date keyword |
| Community manager | Recurring topic keywords, link prefixes |
| Support rep | Error message snippet, customer email |
| Personal DMs | Address, phone number, restaurant name shared earlier |
How to enable#
Navigate to WP Admin → Better Messages → Settings → Messaging.
- Disable Search — Toggle to turn the search feature off
Search is enabled by default. The setting hides the search input from the messenger UI when disabled, but the underlying data is unaffected.
Frequently asked questions#
Does search find content inside attachments?#
No — the search only matches message text, not file attachments. PDF text, image OCR, and audio transcripts are not searched. For voice messages, see AI voice transcription which can transcribe voice messages to text (WebSocket version) — once transcribed, the text becomes searchable.
Are deleted messages searchable?#
No. Once a message is deleted (by the sender or by auto-delete), it's removed from the search index. Edits update the indexed text on save.
Can administrators search across all users' messages?#
Not from the user-facing search. Admins can run direct SQL queries on the bm_messages table from phpMyAdmin or WP-CLI for compliance / audit purposes. There's no built-in admin search UI.
Does search work in chat rooms with hundreds of participants?#
Yes — search is scoped to threads the user participates in, and one chat room is one thread regardless of participant count. Performance is dictated by total message volume in that user's threads, not by participant count.
Why don't my search results include really old messages?#
By default the search covers all messages. If you've enabled auto-delete, old messages may have been purged. The search reflects the current database state.
See also#
- Favorite messages — bookmark messages for quick access without searching
- Pinned messages — admin-pinned important messages in chat rooms
- AI voice transcription — transcribe voice messages so they become searchable
- Auto-delete messages — message lifecycle / retention