Translate WordPress Chat: Multilingual Messenger Without Hacks
WordPress sites serving members across multiple languages need the messenger UI in every member's language — buttons, menus, modals, error messages, the whole shell. Better Messages is fully translatable through the standard WordPress translation pipeline: every user-facing string is wrapped with the WordPress __() and _x() functions, exposed under the bp-better-messages text domain, and reachable through Loco Translate, WPML, Polylang, or a manually placed .po/.mo file.
What you can translate
Every user-facing string in the messenger interface — chat composer labels, menu items, modal titles, button labels, error messages, empty-state copy, time labels, day-of-week names, role labels. The plugin has hundreds of translatable strings, all on the same bp-better-messages text domain.
Translation is not just internationalization — it doubles as a brand-customization tool. You can rename "Messages" to "Inbox", "Chat Room" to "Lounge", or "Reply" to "Send" without writing any PHP. See White label WordPress chat plugin for the broader white-labeling story.
Three ways to translate
1. Loco Translate (recommended)
The most-installed translation plugin on WordPress, free and capable.
- Install Loco Translate.
- WP Admin → Loco Translate → Plugins → Better Messages.
- Click New language to add a translation for any locale.
- Use the built-in editor to translate or override strings.
- Save — translations apply immediately for users on that locale.
2. WPML or Polylang
Both auto-detect plugin strings. WPML's String Translation module and Polylang's Strings Translations admin screen list every Better Messages string for inline editing.
3. Manual .po/.mo files
If you have a .po file from a translation service or community contributor, place it at:
wp-content/languages/plugins/bp-better-messages-{locale}.po
WordPress loads it automatically. The {locale} matches WordPress's locale slug (e.g. de_DE, es_ES, fr_FR, pt_BR).
Community translations
The plugin ships with community-contributed translations for 30+ locales (Spanish, French, German, Italian, Portuguese, Russian, Polish, Dutch, Czech, Hungarian, Romanian, Bulgarian, Greek, Hebrew, Arabic, Persian, Turkish, Ukrainian, Chinese Simplified, Japanese, Korean, Vietnamese, Indonesian, Thai, Swedish, Norwegian, Danish, Finnish, Latvian, Lithuanian, Estonian). To contribute or improve a translation, visit the WordPress.org translate project.
Per-user language
WordPress 4.7+ supports per-user language settings — each member can pick their preferred admin and front-end language in their profile. Better Messages respects this: a Spanish-speaking member sees the messenger in Spanish even if your site default is English.
What about translating user-generated message content?
That is a different feature — AI message translation — which uses an AI provider to translate the actual message bodies that members write. See AI message translation for WordPress chat.
The two are complementary: the messenger shell is translated through WordPress's i18n pipeline; member-to-member message bodies are translated through AI.
Frequently asked questions
Does it work with WPML's automatic translation?
Yes — WPML can auto-translate plugin strings using its own translation service, or you can review and edit suggestions manually.
Will custom strings I write (chat room names, etc.) be translated automatically?
Custom strings entered in the admin (chat room titles, AI bot names, welcome messages) are not automatically translated — they are content, not UI. WPML / Polylang can register them for translation through their own admin tools.
Where do plugin translation files go?
Either in wp-content/languages/plugins/ (recommended — survives plugin updates) or inside the plugin's languages/ folder (gets overwritten on update). Always use the first location for custom translations.
Does the plugin support RTL languages?
Yes — the messenger has full RTL layout support for Arabic, Hebrew, Persian, etc. The dir="rtl" attribute on the page flips the messenger automatically.
Can I override individual strings without translating the entire plugin?
Yes — Loco Translate's editor allows partial translations. Anything you leave blank falls back to the English original.
See also
- Translations feature documentation — full reference
- AI message translation for WordPress chat — for translating message bodies, not just the UI
- White label WordPress chat plugin — translation as a branding tool
- RTL support documentation — right-to-left language layout