Quindi WP 4.2 ha introdotto emoji (emoticon) che fondamentalmente aggiungono JS e altra spazzatura su tutte le tue pagine. Qualcosa che alcune persone potrebbero trovare scioccanti. Come si cancellano completamente tutte le istanze di questo?
Quindi WP 4.2 ha introdotto emoji (emoticon) che fondamentalmente aggiungono JS e altra spazzatura su tutte le tue pagine. Qualcosa che alcune persone potrebbero trovare scioccanti. Come si cancellano completamente tutte le istanze di questo?
Risposte:
Agganceremo init
e rimuoveremo le azioni come segue:
function disable_wp_emojicons() {
// all actions related to emojis
remove_action( 'admin_print_styles', 'print_emoji_styles' );
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_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
// filter to remove TinyMCE emojis
add_filter( 'tiny_mce_plugins', 'disable_emojicons_tinymce' );
}
add_action( 'init', 'disable_wp_emojicons' );
Avremo bisogno della seguente funzione di filtro per disabilitare le emoji TinyMCE:
function disable_emojicons_tinymce( $plugins ) {
if ( is_array( $plugins ) ) {
return array_diff( $plugins, array( 'wpemoji' ) );
} else {
return array();
}
}
Ora respiriamo e facciamo finta che questa funzionalità non sia mai stata aggiunta al core ... in particolare mentre tonnellate di bug risolti devono ancora essere implementati.
Questo è disponibile come plug-in, Disabilita Emoji .
In alternativa, puoi sostituire le faccine con le versioni originali delle versioni precedenti di WordPress usando le faccine classiche .
Possiamo anche rimuovere il prefetch DNS restituendo false sul filtro emoji_svg_url
(grazie @yobddigi):
add_filter( 'emoji_svg_url', '__return_false' );
Settings -> Writing
ma è decisamente fastidioso. +1
Soluzione migliore se si desidera disabilitare questo: utilizzare un plug-in.
Stesso codice dei commenti di Christine: https://wordpress.org/plugins/disable-emojis/
Lo stesso codice che fissa anche le faccine come quelle più vecchie: https://wordpress.org/plugins/classic-smilies/
Fonte: io, da quando ho scritto quel codice in primo luogo. https://plugins.trac.wordpress.org/changeset/1142480/classic-smilies
Questo è il modo semplice per rimuovere le emoji. Aggiungi il seguente codice al tuofunction.php
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
init
. Vedere la mia risposta .
Se si desidera impedire Wordpress da convertire automaticamente le faccine vecchia scuola ASCII a Unicode emoji (come ;-)
a 😉
) nei tuoi messaggi del tutto, si potrebbe desiderare diremove_filter('the_content', 'convert_smilies')
(Non sono sicuro al 100% di che cosa si tratti, ma questo ha risolto il mio problema e spero che possa essere utile per qualcuno.)
Ho provato alcuni codici sopra, ma l'unico codice funziona dalla mia parte è questo.
Non dimenticare di eseguire il backup delle funzioni.php prima di implementare questi codici.
// REMOVE WP EMOJI
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
add_action( 'init', 'disable_wp_emojicons', 3 );
Buone notizie, ho aggiunto una richiesta di funzionalità:
Introdurre una nuova opzione per WordPress WP_EMOICONS qui https://core.trac.wordpress.org/ticket/38252
e apparentemente questo è stato contrassegnato come duplicato https://core.trac.wordpress.org/ticket/32102 quindi possiamo aspettarci qualcosa di simile
define( 'WP_EMOICONS', false );
nelle future versioni di WordPress.
Poiché le emoji di WordPress vengono fornite da Sworg e non sono compresse, ciò influisce sul tempo di caricamento di SVG in base al numero di emoji che stai utilizzando e può anche generare avvisi sullo strumento PageSpeed Insights di Google.
Per risolvere questo problema, puoi servire le emoji direttamente dal tuo sito WordPress stesso e non effettuando chiamate esterne tramite js.
Ciò può essere ottenuto installando il plugin Compressed Emoji che è disponibile gratuitamente nel repository dei plugin di WordPress.org.
Quando il plug-in è attivato, la compressione offre risparmi nell'intervallo di 3kb ~ 1,3kb (all'incirca% 60) per emoji.
Fonte: WPTavern