WordPress 5.3にアップデートしてから動かなくなった
「Native Emoji」といえばブログで絵文字を使いたいときの定番プラグインという認識でした…がWordPress 5.3にアップデートしてからとうとう動かなくなってしまいました😟。下の画面に使える絵文字がずらりと並ぶはずなのですがいくら待っても表示されません。
最新アップデート3.0.1 Release Date – 24 June 2018
「もうメンテナンスやサポートがされていないかもしれず、最新バージョンの WordPress で使用した場合は互換性の問題が発生する可能性があります。」
とプラグインページで寂しいことをアナウンスされています。2年近く更新されていませんので WordPress 5.3での当不具合には対応してもらえないのかもしれません😥
じゃあ仕方ない他のプラグインでも探しますか…と諦める前に
ところでなぜ動かなくなったのでしょうか?ブラウザのログには
Uncaught TypeError: $ is not a function
などと表示されていることからjQueryのコンフリクトを回避する処理が作用して $ が未定義になってるらしいことが分かります。それならプラグインの公式アップデートがあるまでは、という制限付きでプラグインのJavascriptをちょこっと修正してみました。
個人利用の目的で修正していますのでご参考にされるなら自己責任でお願いいたします。システムエラーや修正に伴う損害等が発生した場合の責任は負えませんので予めご了承ください。
/plugins/native-emoji/js/native_emoji_tinymce-plugin.js
の中でエラーが発生しているようですので、
このファイルを開き、
jQuery(function($){
で始まり
});
で終わるよう 元のコードを挟むように修正します。下の青いハイライトの部分を追加することになります。
修正したら上書き保存します。
jQuery(function($){ ↓元のコード↓ tinymce.PluginManager.add('nep_native_emoji', function(editor, url) { ・・・・・ }); ↑元のコード↑ });
これだけで元どおり使えるようになりました😃
ブラウザのキャッシュが残っていたら修正が反映しないかもしれません。Chromeをお使いならば[Shift]+[F5]キーで「ハード再読み込み」を試してみてください。
実は他にも「おやっ」と感じる挙動があり気になってはいるのですがそれはまた気が向いたら調べてみます。