flag_emoji: flag entities without a wrapper
{%flag_emoji%} returns the locale's Unicode flag as numeric character entities. Unlike flag_html, it does not include a <span>, class, or accessibility attribute.
Supply an appropriate wrapper
Use the raw form only when the template needs custom markup:
<span class="site-language-flag" aria-hidden="true">{%flag_emoji%}</span> {%local_label%}
The template is sanitized with the WordPress post-HTML policy before values are inserted. Keep the emoji decorative and retain a textual language name so the generated link has an understandable label.
Account for empty output
The tag is empty when the locale definition has no flag data. Literal wrapper HTML and spaces remain, so inspect custom languages for empty elements. Merge-tag templates do not provide conditions that remove the wrapper automatically.
Choose between the flag tags
- use
flag_htmlfor POM Translate's ready-madearia-hiddenwrapper; - use
flag_emojiwhen the theme needs its own allowed element or class; - use
flag_imagefor consistent bundled SVG artwork.
Native emoji appearance varies across platforms. Verify the final markup, accessible name, spacing, and rendering for every enabled locale.