WordPress od verze 4.2 podporuje takzvané Emoji. A protože ne do každého vebu se hodí, v článku se dozvíte, jak je deaktivovat.
Nejprve, co vlastně jsou Emoji. Zjednodušeně to jsou smajlíci. Všichni asi známe z sms zpráv zápisy, jako je :-), 😮 a mnoho dalších. A Emoji tyto znaky prezentuje jako obrázky, na což můžete narazit třeba na fórech a diskuzích.
Postupně se obrázkové emotikony rozšířily z Japonska po celém světě a s narůstající popularitou je nakonec vývojáři WordPressu zařadili do jádra WordPressu.
Osobně na emotikonech nevidím nic špatného, ale jsou případy, kdy to prostě není vhodné. Například u menších firemních webů, se jedná o zbytečné soubory, které musí prohlížeč načíst, při zobrazování stránky.
Jak odstranit Emoji?
Použití pluginu
Obvykle je možnost deaktivace emoji přímo v pluginu, který se stará o optimalizaci rychlosti, nebo v šabloně, kterou již na webu používáme.
Populární pluginy, které umožňují deaktivaci emotikonů:
- WP Rocket
- WP Fastest Cache
- W3 Total Cache
Populární šablony, které umožňují deaktivaci emotikonů:
- Divi od Elegant Themes: (Nastavení šablony > Všeobecné > Výkon > Zakázat WordPress Emojis)
- Bricks (Nastavení > Výkon > Zakázat emoji)
Než budete postupovat dále, zkontrolujte nejprve nastavení používané šablony a pluginů.
Pokud byste možnost deaktivace na svém webu nenašli, přichází na řadu další jednoduchý způsob, kterým je použití pluginu Disable Emojis, který kromě deaktivace emotikonů nic jiného nedělá.
Pokud vytváříte weby, kde je malá pravděpodobnost použití emotikonů, zařaďte si tento plugin do checklistu.
Odstranění pomocí vlastní funkce
Osobně si místo instalace pluginu vložím do souboru s funkcemi (zda mít tyto funkce ve functions.php, nebo v nějakém pluginu je na jinou diskuzi). Ne že by třeba 20 jednoduchých pluginů, jako je Disable Emojis, výrazně zatěžovalo WordPress, ale při větším množství, se špatně orientuji v jejich seznamu.
Je to možná jen můj pohled na věc, ale raději si do kostry šablony, kterou používám, přidám do functions.php jedoduchou funkci:
function theme_disable_emojis() {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
}
add_action( 'init', 'theme_disable_emojis' );
function disable_emojis_tinymce( $plugins ) {
if ( is_array( $plugins ) ) {
return array_diff( $plugins, array( 'wpemoji' ) );
} else {
return array();
}
}
A to je vše. Je jen na vás, jaký způsob použijete.