Skip to main content

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").

StyleRenders emojis as
AppleApple's emoji designs (iOS 16 look)
GoogleGoogle Noto Color emoji
Twitter / XTwemoji (open-source)
FacebookFacebook emoji designs
NativeUnicode 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#

AudienceRecommended style
Visual-design-sensitive communityApple โ€” most polished, premium feel
Open-source / privacy focusTwitter (Twemoji is open-source, no Apple/Google tracking)
Performance-first / mobile-heavyNative โ€” no image loads
International, mixed devicesTwitter โ€” most consistent free option
Brand alignment with iOS appApple

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)

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:

  1. In WP Admin โ†’ Better Messages โ†’ Settings โ†’ Integrations โ†’ Emojis, scroll to the Emoji Search Translations section.
  2. Find your site's language in the list and click Download.
  3. The annotation file (~150 KB) is fetched from better-messages.com and stored in wp-content/uploads/better-messages/emoji/annotations/.
  4. 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.

Bilingual search by design

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#