WordPress5.6は予定通り、jQueryのバージョンを上げました。今回のjQueryバージョンアップのスケジュールの一番の肝。
これが問題なくクリアできたら、もう大丈夫でしょう。テスト用のプラグインも大きく変わっています。
個人的にはこれで問題が出るプラグインは辞めたほうがいいと思う。
予定通りのjQueryバージョンアップ
WordPressは5.5から、jQueryのバージョンアップが始まりました。あまりにシステムに対する影響が大きいために3段階のステップがあります。
WordPress5.6はステップ2で、jquery-core, jquery-migrate, jquery-uiのバージョンが1系から3系へ一気に上がります。
3ステップのうち、一番変化が大きいのがこのステップ2。そして、WordPressのバージョンアップにかなりの注意が必要です。
jQueryバージョンアップの内容はこちらをどうぞ。
WP5.6に上げる前にテストしておこう!
もうすでに5.6に上げちゃったという人はしょうがないとして、まだという人はjQueryのテストを行なってからバージョンアップすることをオススメします。
というか、テストしてほしい。
jQueryのバージョンアップのステップ2は、jQueryを2系をすっ飛ばして3系に上げているので影響大。
WordPressの開発チームがテストプラグインを用意するくらいです。
用意するということは、WordPressも公式に『気をつけろよ』と言っているようなもの。
それだけテストしてほしいというメッセージです。
jQueryテストの準備
jQueryのテストプラグインは全ステップのjQuery環境を設定できます。
一気に最終ステップまでテストする必要はありませんが、5.6のテストはしておきましょう。
ただこのプラグイン、2020年12月10日現在、バージョンが2.0.0になっており、前の1.0.2からかなり変わっています。
WP5.5は最新版の2.0.0が使えません。逆にWP5.6に上げたときは2.0.0以上でないと使えません。
くわしくはこちらをどうぞ。
WP5.6の環境に設定します。
jquery | jquery-migrate | jquery-ui |
---|---|---|
3.5.1 | Enable (3.3.0) | 1.12.1 |
もちろんですが、プラグインやテーマは最新版にアップデートしておきましょう。
WP5.6に未対応のものが多いなら、WordPressのアップデートを延期するのもありです。
ただし、いずれWP5.6以上にバージョンアップするんだから、jQueryのテストはしといたほうがいいです。
WP5.6に対応していないプラグイン・テーマはjQueryのバージョンアップに対応していない可能性が高い。
個人的には対応していないと断定している。
対応しているものはテストが楽になるし、影響度によってはテストを省略できる。
jQueryテストの実施
jQueryバージョンをWP.5.6に合わせたら、テストを行います。
使ってるプラグインは正常に動くか?
テーマは?
公開サイトは?
管理画面は?
ざっくりと分けてますが、最低限これだけのテストは必要でしょう。使っているプラグインの数、テーマがどれくらいjQueryに依存しているかでボリュームは変わります。
個人的には、公開サイトにエラーがなければ、管理画面で使ってない機能がエラーになってもいいかなと思います。
自分は管理画面の使う機能が限られているので。
デバッグの設定
ブラウザのコンソールに出力されるJavaScriptのデバッグ内容が薄い場合は、デバッグモードも用意されています。
wp-config.phpに設定を追加しましょう。
define( 'SCRIPT_DEBUG', true );
個人的には使わないかな?
プラグインやテーマの開発者向けのように思えるし、プラグイン・テーマ・自作の関係なく、自力でどうにかしてやるぜ!の人しか使わない気がする。
そもそも、プラグインでテーマでデバッグモードの出力を実装しているか分からない。とくに非公式のものは。
エラーさえ出てくれれば、原因は探れるし。
WordPress Core(本体)のデバッグでは意味があると思うが。
WordPress.org
WP5.6にアップデート後エラーになったとき
テストしてWP5.6に上げたけど、すでに5.6に上げちゃってjQueryのエラーで動かないというときは、jQueryのダウングレードのプラグインが用意されています。
これもWordPressの開発チームが作りました。
jQueryのテストプラグインでもダウングレードができますが、あくまでテスト用で本番環境は Enable jQuery Migrate Helper を使ってくださいと言っています。
(テストプラグインの2.0.0では設定画面にメッセージが出力されている。)
どちらもWordPress開発チームが作ったプラグインなので、そのとおりにしたほうがいいでしょう。
自己責任で使う分にはかまいませんが。
Enable jQuery Migrate Helperプラグインは、なかなかの動きをします。
(Ajaxでページをリロードして、jQueryを載せ替える。)
くわしくはこちらをどうぞ。
WordPressのアップデートは慎重に
WordPressを3、4、5系と使ってきましたが、WP5.6へのアップデートには、いちばん気を使いました。
(WP5.5のときも同じことを言ったが、それ以上に気を使ったってこと。)
とくにプラグインを多く使っている人、デフォルト以外のテーマを使っている人は要注意。
(WordPress非公式はとくに。)
アップデート頻度が低いものも注意しましょう。
ボクはもともと公開サイトはjQueryを3系に変えるカスタマイズをしていて影響なし、管理画面も幸い何も起きませんでした。
だからといって『楽勝ですよ』とは言えません。2つのプラグインをWordPressの開発チームが用意するくらいなので、何かが起きて当たり前と思ったほうがいい。
これを機に別のテーマ・プラグインに変えることも念頭に入れときましょう。すべての開発者が迅速に対応するとは限らないので。
WordPressは参入しやすいこともあり、キャリアの少ないエンジニアがたくさんいます。
中にはエンジニアの最低限の常識すらない人もいて、お金目当てを目的にするあまり、バージョンアップの対応すら考えもしない人もいます。
(一時期、Twitterのタイムラインに溢れるくらい流れていた。最近は見なくなってはいるが。)
気をつけましょう。
(ちなみに普通のエンジニアは、自分ができなければ引き受ける人を探す、代わりになるものを紹介する、など行う。)
次期バージョンのWP5.7では、migrateを外す予定です。
5.6よりは大きな変化はないはず。テーマやプラグインがmigrateを使わないようにする前提ですが。