WP 4.2で導入された絵文字を無効にする


135

そのため、WP 4.2では絵文字(スマイリー)が導入され、基本的にページ全体にJSやその他のジャンクが追加されます。一部の人々は衝撃を感じるかもしれません。これのすべてのインスタンスを完全に消去するにはどうすればよいですか?


39
発表を読んだとき、私は椅子に倒れそうになったのでとてもショックを受けました
トムJノウェル

2
o_O ... 9_9 ...>:-
cjbj

回答:


193

以下のinitようにアクションをフックして削除します。

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' );

TinyMCE絵文字を無効にするには、次のフィルター関数が必要です。

function disable_emojicons_tinymce( $plugins ) {
  if ( is_array( $plugins ) ) {
    return array_diff( $plugins, array( 'wpemoji' ) );
  } else {
    return array();
  }
}

今、私たちはこの機能がコアに決して追加されなかったふりをします...特に多くの解決されたバグがまだ実装されていない間

これはプラグインDisable Emojisとして利用可能です。

または、クラシックスマイリーを使用して、スマイリーを以前のバージョンのWordPressのオリジナルバージョンに置き換えることができます。

更新

また、フィルターでfalseを返すことでDNSプリフェッチを削除することもできますemoji_svg_url(@yobddigiに感謝):

add_filter( 'emoji_svg_url', '__return_false' );

25
ありがとう!なぜ人々がこれを介してこれを有効/無効にすることを許可していないのかはわかりませんSettings -> Writingが、それは間違いなく迷惑です。+1
Howdy_McGee

6
レポまたはgithubで「絵文字を無効にする」プラグインを楽しみにしてください;-)
birgire

3
それらのいくつかが既にあります(これはコピーです)wordpress.org/plugins/classic-smilies wordpress.org/plugins/disable-emojis
pcarvalho

3
答えてくれてありがとう!これがコアの一部であるとは信じられません。少なくとも「オプトイン」や無効にする方法はありません
〜_〜– phatskat

5
そして、ヘッダーに縮小されていないスクリプトとスタイルに相当する114行を追加しているのを見るのは衝撃的です。プラグインのおかげで...
Debajyotiダス

28

これを無効にする場合のより良い解決策:プラグインを使用します。

Christineのコメントと同じコード:https : //wordpress.org/plugins/disable-emojis/

スマイリーも古いものに修正する同じコード:https : //wordpress.org/plugins/classic-smilies/

ソース:私、最初にそのコードを書いたので。 https://plugins.trac.wordpress.org/changeset/1142480/classic-smilies


いいね!githubエントリを介して関数に出くわしましたが。これらのプラグインリンクで回答を更新しました。ありがとう!
クリスティーンクーパー

うん、あなたはおそらくそうしました。Twitterユーザーの場合もgithubに配置します:gist.github.com/Otto42/b79ff5428993fcff45bb
オットー

14

これは、絵文字を削除する簡単な方法です。以下にコードを追加しますfunction.php

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' ); 

2
これについては、上記の私の質問で既に説明しました。
クリスティーンクーパー

おかげでコードがきれいに削除されました。奇妙なことに、私のページは、functions.phpでロードするのに、それがない場合よりも2〜3秒長くかかります。
スティーブ

これはを介して実行する必要がありますinit。私の答えをご覧ください。
クリスティーンクーパー

2

Wordpressが投稿内の古い学校のASCII文字をUnicode絵文字(など)に自動的に変換しないように;-)するに😉は、remove_filter('the_content', 'convert_smilies')

(これが質問の目的であることを100%は確信していませんが、これは私の問題を解決したので、誰かに役立つかもしれません。)


0

上記のコードをいくつか試しましたが、私の側で機能するコードはこれだけです。

これらのコードを実装する前に、functions.phpをバックアップすることを忘れないでください。

// 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' );

私の答えのコードを適切にテストしましたか?
クリスティーンクーパー

はい、何度も試してみました。サイトはcloudflare-nginxサーバー上にあります
-johnhgaspay

私のコードを再確認しただけで、機能しています。:あなたはあなたののfunctions.phpファイルにコードを追加すると、このように、高い優先順位を設定してみてくださいadd_action( 'init', 'disable_wp_emojicons', 3 );
クリスティン・クーパー

-1

良いニュース、機能リクエストを追加しました:

ここ https://core.trac.wordpress.org/ticket/38252 にWordPress WP_EMOICONSの新しいオプションを紹介します

どうやらこれは重複したhttps://core.trac.wordpress.org/ticket/32102としてマークされている ので、

define( 'WP_EMOICONS', false );

将来のWordPressリリース。


1
チケット#32102wontfixで閉じられているようです。楽観的に試してみて、+ 1 ;-)
バージール

2
シモンズ:私が理解する限り、以前は未解決として閉じられていたチケット#32102と重複しているため、チケット#38252は閉じられました。だから、プラグインはこれから数日間、これを整理しなければならないようです;-)したがって、あなたは楽観的であるために投票します
;

-2

WordPress絵文字はsworgから提供され、圧縮されないため、使用している絵文字の数に応じてSVGの読み込み時間に影響し、GoogleのPageSpeed Insightsツールに警告をスローすることもあります。

この問題を解決するには、jsを介して外部呼び出しを行うのではなく、WordPressサイト自体から直接絵文字を提供できます。

これは、WordPress.orgプラグインリポジトリで無料で利用できるプラグインCompressed Emojiをインストールすることで実現できます。

プラグインを有効にすると、圧縮により、絵文字ごとに3kb〜1.3kb(およそ%60)の範囲で節約できます。

出典:WPTavern

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.