Emoji Selector
Better Messages includes a built-in emoji picker with categorized browsing, multilingual keyword search, and a choice of visual emoji styles. Pick the Apple, Google, Twitter, Facebook, or Native set to render emojis consistently across browsers and operating systems โ your users see the same ๐คฃ regardless of whether they're on iOS, Android, Windows, or macOS.
What it adds#
- Emoji button in the message input that opens a full categorized picker
- 8 categories: Smileys & People, Animals & Nature, Food & Drink, Activities, Travel & Places, Objects, Symbols, Flags
- Keyword search bar โ type "fire" โ ๐ฅ (also works in 30+ other languages with search translations)
- Recently-used row for fast access to common emojis
- Choice of 5 rendering styles (Apple / Google / Twitter / Facebook / Native)
- Per-category enable/disable for content moderation (e.g., hide Flags on a non-political site)
- Drag-and-drop category reordering in admin
How it works#
The picker is a React component that loads a JSON emoji map. When the user picks an emoji, it's inserted into the message input as a Unicode character. On render, emojis are converted to images from the chosen emoji set (or kept as Unicode for "Native").
| Style | Renders emojis as |
|---|---|
| Apple | Apple's emoji designs (iOS 16 look) |
| Google Noto Color emoji | |
| Twitter / X | Twemoji (open-source) |
| Facebook emoji designs | |
| Native | Unicode characters โ uses the user's OS emoji |
Apple/Google/Twitter/Facebook ensure consistency: a ๐ looks the same to every user regardless of their device. Native is the lightest option (no image loading) but renders differently on different devices.
When to choose each style#
| Audience | Recommended style |
|---|---|
| Visual-design-sensitive community | Apple โ most polished, premium feel |
| Open-source / privacy focus | Twitter (Twemoji is open-source, no Apple/Google tracking) |
| Performance-first / mobile-heavy | Native โ no image loads |
| International, mixed devices | Twitter โ most consistent free option |
| Brand alignment with iOS app | Apple |
How to enable#
Navigate to WP Admin โ Better Messages โ Settings โ Integrations โ Emojis.
- Emoji Set โ Choose the rendering style
- Categories โ Enable/disable individual categories
- Category Order โ Drag-and-drop to set the order in the picker
- Emoji Search Translations โ Download per-locale annotations so picker search works in the user's language (see below)
Multilingual search#
A German user typing "gesicht" should find face emojis. A French user typing "cลur" should find โค๏ธ. By default the picker ships with English keywords only, so non-English searches return nothing.
Better Messages solves this with on-demand emoji search translations:
- In WP Admin โ Better Messages โ Settings โ Integrations โ Emojis, scroll to the Emoji Search Translations section.
- Find your site's language in the list and click Download.
- The annotation file (~150 KB) is fetched from
better-messages.comand stored inwp-content/uploads/better-messages/emoji/annotations/. - The emoji picker rebuilds with localized names and keywords merged on top of the English ones โ both languages keep working.
30+ languages available, matching the WordPress translation locales: German, French, Spanish, Italian, Portuguese, Dutch, Polish, Russian, Ukrainian, Czech, Hungarian, Romanian, Bulgarian, Swedish, Danish, Norwegian, Finnish, Greek, Turkish, Arabic, Hebrew, Persian, Chinese (Simplified & Traditional), Japanese, Korean, Vietnamese, Thai, Indonesian, Hindi.
We append localized keywords rather than replacing English ones, so multilingual communities keep working. A German user can search "gesicht" or "face" โ both return the same emoji.
The annotation data is sourced from the Unicode CLDR (Common Locale Data Repository), the same dataset used by iOS, Android, and Windows for their native emoji pickers.
Frequently asked questions#
Does the search support multiple languages?#
Yes โ see Multilingual search above. Download the annotation file for your locale from the admin settings to enable localized keyword search. English keywords keep working alongside the localized ones.
Can I add custom emojis (brand emojis, team-specific)?#
Stock emojis are fixed (the standard Unicode set). For custom branded reactions, use stickers โ Better Messages supports custom sticker packs you upload as images.
Do emoji reactions use the same set as the picker?#
Yes โ the message reactions picker draws from the configured emoji set. The reaction set is a curated subset, but the rendering style matches.
Why does the same emoji look different in different conversations?#
It shouldn't โ the rendering is determined by the global emoji set setting. If you're seeing differences, check that you don't have a theme overriding emoji rendering, or that an old browser cache isn't stuck.
Does the picker work on touch devices?#
Yes โ the picker is fully responsive and touch-friendly. Categories scroll horizontally on small screens, and tap targets are sized for fingers.
See also#
- Message reactions โ react to messages without sending a reply
- Stickers โ custom sticker packs as message bodies
- GIPHY integration โ animated GIF picker
- Mentions โ @-mention picker for users