WordPress Emojis deaktivieren
(Performance-Optimierung ohne Plugin)
Standardmäßig lädt WordPress Emoji-Skripte und Styles sowohl im Frontend als auch im Backend. In vielen Projekten werden diese Funktionen jedoch nicht benötigt und erzeugen unnötige HTTP-Requests sowie zusätzlichen Code im Seiten-Header. Dieses Snippet deaktiviert die Emoji-Funktion vollständig und hilft dabei, die Ladezeit sowie die technische Performance einer WordPress-Website zu optimieren.
Was macht dieser Code?
Der Code entfernt sämtliche Emoji-Funktionen, die WordPress standardmäßig lädt:
- entfernt Emoji-JavaScript und CSS aus Frontend und Adminbereich
- deaktiviert Emoji-Filter in RSS-Feeds und E-Mails
- verhindert die Einbindung des Emoji-Plugins im TinyMCE-Editor
- entfernt das DNS-Prefetching für Emoji-Ressourcen
Dadurch wird unnötiger Overhead reduziert und der HTML-Head sowie die geladenen Assets bleiben schlanker.
<?php
function disable_emojis() {
// Entfernt Emoji-spezifische Skripte und Styles im Frontend und Backend
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');
// Verhindert, dass TinyMCE (der WYSIWYG-Editor) Emoji-Skripte verwendet
add_filter('tiny_mce_plugins', function($plugins) {
if (is_array($plugins)) {
return array_diff($plugins, ['wpemoji']);
}
return [];
});
// Entfernt das DNS Prefetching für Emoji-Skripte
add_filter('emoji_svg_url', '__return_false');
}
add_action('init', 'disable_emojis');