WordPress 5.5.1 へのアップグレードと PHP 7.4.4 へのアップグレードで色々と不具合が出たのでその記録です。
同じようなトラブルに遭遇した人のお役に立てば・・・。
あと、5.5.1 にアップグレードしても、下記のような不具合がでない方法が分かる方(不具合の本当の原因が分かる方)がいたら、教えてくださいね!^^
プラグインの更新ができないんだが?
最初に気付いた異変は、プラグインの更新ができなくなったこと。
プラグインの「更新」リンクをクリックしても、下図の赤枠の更新マークがいつまでもクルクル回っていて、プラグインが更新されない。
一応、FTP ソフトでサーバーのプラグインのフォルダを確認してみたけど、ファイルの日付が旧バージョンのままなので、更新されてないのは確か。
このときは特定のプラグインの問題だと思って重要視せず、あとでまた対処を考えようと思って放置しておいた。
投稿記事を公開できないんだが?!
ある会社から依頼されていたソフトのレビュー記事を書きあげたところだった。先方に公開前の記事を確認してもらいOKをもらったので「よし終わった!」と思って[公開]ボタンをポチリ。
ブラウザ画面が更新されて、記事が公開され・・・・・・・・・ん?!
と異常に気付いた。
画面が更新されたけれど[公開]ボタンがそのままの状態で残ってる。記事が公開されたなら[公開]ボタンのテキストが[更新]に変わるはずなんだけど。
変だなぁ?と思ってサイトのホームへ移動してみたけど、やはり公開されてない。何度試しても公開されない。
公開できなきゃ執筆料をもらえないゾ!(・O・;)
とりあえず先方に「トラブルが起きてすぐには公開できない」「少しお待ちください」との旨を伝えて、気合いを入れて調査を開始。
ボタンの状態がときどき変?
記事の公開を試しているとき、ときどき、WordPress UI のボタンの状態が変になった気がする。
たとえば[なんちゃら]というボタンのテキストが消えて[ ]というようにボタンの形だけ残ったり。
プラグインの削除ができない!
そういえば、プラグインの TinyMCE の更新ができなかったのを思い出した。このプラグインが更新できなかったせいで、何かおかしなことになったのではないか?
そう思って WordPress のプラグイン管理画面で TinyMCE を停止(無効化)。これは問題なくできた様子。
続けて[削除]リンクをクリック・・・したけど何も反応が無い。画面の更新さえ起きていないようだが・・・? まるでリンクが無効になっているような感じ。
変だなと思って[F5]を押してから(手動で画面の更新をしてから)、他のプラグインの削除を試みるが、やはり[削除]リンクが反応しない。
結局、FTP ソフトでサーバーのプラグインフォルダ wp/wp-content/plugins にある TinyMCE のフォルダごと削除した。
そのあと再び投稿記事の公開を試みるが、やはりダメ。
片っ端からプラグインを無効化しようとしたが・・・
WordPress でトラブルが発生したとき、原因を突き止めるためによく言われるのが「プラグインを片っ端から無効化して、原因のプラグインを探せ」って方法。
やってみました。というか、やろうとして、途中までやりました。
・・・私のサイトは結構な数のプラグインをインストールしてまして・・・使用中のものとそうでないものがあるので、あとで元に戻すためには、有効/無効にしていたものがどれかをメモしていかなきゃいけない。
途中まで無効化を進めたとき、私の第六感が「原因はきっとそこじゃない!」とささやいたので(本当は面倒になったので)、6個目のプラグインを無効化したあたりでこのやり方を中止しました。(^^;)
ブロックエディタなら公開できるゾ!!
あれこれ調べているとき、ふと「ブロックエディタで試してみたらどうだろう?」と私の頭上で電球がピカリ点灯(私はいまだにクラシックエディタ派)。
プラグイン[Classic Editor ]の[設定]ボタンをクリックして、エディターを切り替えられるようにしてみた。
記事一覧画面に戻って、ブロックエディタで該当の記事を開き、[公開]ボタンをクリックしてみたら・・・おおお!
公開成功!!
これで執筆料がもらえる。(T_T)
取り急ぎ、レビュー記事を依頼してきた会社の担当に「記事を公開しました!^^」と伝えた。
しかし不具合の原因がまだハッキリしないので調査続行。
これはまさか「もういいかげんクラシックエディタを捨ててブロックエディタを使え!(--#)」というお告げなのか!?
PHP 7.4.4 にアップグレードして事態が悪化!(゚д゚lll)
調べていたら、WordPress サーバーの PHP のバージョンが最新になっていないと気付いた。
「今までの不具合の原因はこれか!?」と思って、PHP を[推奨]マークが付いていた 7.4.4 にアップグレード。
7.4.4 に推奨マークが付いてるくらいだから、アップグレードすることに不安は無かったが・・・甘かった。
ブログに戻って画面を更新してみると・・・
なんじゃこりゃぁああぁぁぁ!!Σ(゚д゚lll)
一瞬あせったが、上のエラーをよく見てみると、なになに・・・「crayon-syntax-highlighter」?
「あぁ、あの何年もアップグレードされてない、古いプラグインね!」
古いプラグインなので、いつかこういう日が来るとは思ってたけど、PHP をバージョンアップしたせいで、ついにこの日を迎えたのだろう、と理解した。
で、「crayon-syntax-highlighter」を無効化したら、このエラーは消えて、画面は正常に戻りました。
やれやれ。(*´∇`*; ホッ
「crayon-syntax-highlighter」とはこれでオサラバだな。
新規プラグインの検索ができない!
削除した TinyMCE プラグインを再びインストールしてみようと、プラグインの管理画面に行って[新規追加]ボタンをクリックすると、いつものようにプラグインのアイコン一覧が画面に表示された。
で、[プラグインの検索]ボックスに “TinyMCE” と入力すると、名前が一致するプラグインの候補のアイコン一覧が表示・・・されない。あれ? いつもなら表示されるのに。
アイコンの一覧が表示されず、「他にこんなキーワードがあります~」みたいなメッセージと、テキストのキーワードだけがたくさん表示された。
「画面の挙動がいつもと違うような?」と思いつつ、[プラグインの検索]ボックスで違うテキストを入力してみるが・・・今度は無反応。
いつもなら[プラグインの検索]ボックスに入力する文字を変えるたびに、即座にプラグインアイコンの一覧が置き換わって表示されるのに。
WordPress のアップグレードが原因か
「そういえばちょっと前に WordPress のバージョンをアップしたような」「それが原因か?」という思いは頭の片隅にあったんですが、WordPress のバージョンを元に戻すのは時代に置いて行かれそうな、戻すのも面倒そうな、なんか気が進まなかったので、そのことと直接対決するのは避けてたんですが。
発生した不具合が許容できないものだと感じたので、WordPress のバージョンの問題について考えなければいけないかなと思い始めた。
Enable jQuery Migrate Helper を試してみたがダメ
調べてみると、WordPress を 5.5 にアップグレードした際に生じる不具合をなんとかしてくれる「Enable jQuery Migrate Helper」というプラグインがあるらしい。
さっそくインストールして有効化してみたが・・・症状は改善されませんでした。
WP Downgrade | Specific Core Version が便利
調査を続けると、WordPress のバージョンを簡単にダウングレードできる「WP Downgrade | Specific Core Version」というプラグインがあることが分かった。
WordPress のバージョンを手動で下げようと思うと、まだそのやり方は調べてないけど、なんか面倒な予感がして後ずさりしちゃう。
プラグインで簡単にダウングレードできるなら試してみようと思いました。
ただし、大きな変更を加えることになるので、WordPress のデータベースやその他のバックアップはちゃんと取っておいたほうが良いとのこと。
私は UpdraftPlus というバックアップ用のプラグインを使っているので、直前のバックアップが取られていることを確認してから、「WP Downgrade | Specific Core Version」を使って WordPress をダウングレードしてみました。
5.5.1 から 5.4.2 へ。
プラグインの画面からも確認できますが、指定できる WordPress のバージョンはこちらのページで確認できます。
とりあえずは解決
前述のプラグイン WP Downgrade | Specific Core Version を使用して WordPress を 5.4.2 へダウングレード後、不具合が起きていた症状を再度確認。
おぉっ・・・全部直ってる!!
とりあえずは良かった。(*´∇`*; ホッ
WordPress 5.5.1 でも問題なく動いてるサイトがほとんどだろうから、5.5.1 自体が悪いのではなく、私のサイトのどこかの設定と干渉して不具合が出たんだと思うけど。
そこを調べるのは大変そうだなぁ。
いつまでも WordPress の古いバージョンを使い続けるのは、どこかで壁にぶつかるだろうから、そのうちなんとかしないとなぁ。(勝手に自然に解決してると良いんだけどなw)