WordPressのカスタマイズ方法やプラグインレビューを中心に、パソコン/動物/植物のことなどを紹介するホームページです

WordPress4.9で追加された【コードのチェック】機能が便利 ~テーマやプラグイン編集で更新できないときは・・・~

公開日:2017(平成29)年12月1日/最終更新日:

Knowledge Base Wordpress パソコン カスタマイズ 設定



最近リリースされたWordPress4.9もう更新しました?コア部分なので何がどう変わったのかパッと見で分かりにくいところではありますが、このバージョンになってサイト運営者にとってとても親切な機能が加わりました。

それが、テーマやプラグインなどの編集画面のサンドボックス化(ハイライト表示)、そして更新時のコードチェック機能です。

以前からテーマやプラグインの編集をするとき見にくいなぁと思っていましたが、ついに行番号や特定の文字列に対して色が付くハイライト表示になりました。すごく見やすくて、今までは〇〇行と言われても一旦パソコンなどへ保存して行番号の表示できるテキストエディタなどで見ないと分からないのでとても面倒でしたが、これからは管理画面からすぐに見えるから便利ですね。でも・・・。

バージョン4.9にして初めてテーマの編集を行ってみたのですが、【更新】ボタンを押してからずーーーっと時間が流れた挙句に

致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。

というメッセージが出て更新されないという現象が発生!!何で~~??って感じ・・・。

でもこれ、実はWordPress4.9で新規に追加された機能だったんです。

日本語の言語ファイルが直訳的で分かりにくいので上の文章が理解しにくいだけで、きちんと日本語にすると

この更新により画面が真っ白になってしまうなど致命的なエラーが発生する可能性があるので更新しませんでした。強制的に更新する場合にはFTPなどを使ってファイルを直接アップロードしてください

という意味なんですね。つまりWordPressのphpコードチェックをした結果構文に間違いがあったり何か不具合が起こる可能性があるからこの画面では更新できませんよ!もしも大丈夫だと思うならFTPで直接ファイルをアップロードしてみては?という内容なんです。つまりWordPressとしては正常に動作するという責任が持てません!ということなんですね。

ここまで書けば敢えて書く必要もないとは思いますが、この言葉を変に受け止め「何だ!編集できへんやんけ!なら直接アップロードすりゃいいんだな!この編集機能こわれとる!!」とFTPでファイルをアップロードしたら・・・エラーが出て真っ白画面が登場・・・なんてことが起こるかもしれませんので気を付けてください。

どうすれば更新できるか?

私の場合はこのメッセージが出たのでコードをよく見たら追加した構文にエラーがあって更新できなかっただけで、きちんと修正したら更新できました。これがなかったら画面真っ白だったんでしょうね(私は対応できるのであまり慌てませんけど慣れていない人だったらパニックでしょうね・・・)。

またこの機能には続きがあってエラーの可能性があって更新できなかったとき、そのコードが破棄される訳ではなくロールバック(更新前の状態のままになる)されるのでコードの見直しなどもその場でできるのもうれしい機能だと思います。

この機能他WordPressのバージョン4.9に関する詳しい情報はこちらを参照ください。

コードは合ってるのに更新できないときがある

何も間違っていないのに更新できないときがあります。経験上よくあるのはどこかからコピペしたコードをエディタ上で編集したとき。

特に日本語などのマルチバイト文字列で何かを書き加えた時(コメント部分も含む)にはその行が悪さをするみたいです。

そんなときは・・・

  1. 別のエディタで編集してから貼り付ける
  2. その行の先頭などにスペースなどがある場合には一度全部なくし、改めて半角スペースを入れてみる

ことで回避できることが多いです。

便利な機能だけど更新できないとイライラ(怒)となりそうな今回の機能。まあ更新できて画面真っ白になるよりはよっぽどマシなので、上手に付き合っていきましょう。

12月2日 追記

すぐにリリースされたバージョン4.9.1。リリースノートにテーマエディタに関する修正が入っていました。

内容はwindowsサーバーでテーマの編集機能に不具合があったのを修正したというものです。

テスト環境などでWindowsサーバーを使用している場合には不具合があるかもしれませんので4.9.1へアップデートすれば解消されるようです。

12月3日 追記 他に原因がある場合も

この更新時に現れるメッセージはいろいろあるようです。また、いろいろ調べると【更新】ボタンをクリックした際にはサイト内全体のコードチェックを兼ねているようで、今更新しているプログラムにエラーなどがある場合だけでなくテーマやプラグイン全体をチェックしてエラーとして返すこともあるようです。

WordPress 4.9アップデート後、エディターでテーマを編集できません

の公式フォーラムに1件ありました。この場合は「Shortpixel Image Optimizer」というプラグインのコードエラーが原因だったようです。

何とかこの手のエラーが出せないかとテストしてみたところ【AG Custom Admin】というプラグインを導入したらそれまで更新できていたテーマでエラーが出ました。メッセージは

何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。

というもの。何かうまくいかなかったようです。なんて言われても・・・って感じですね。今編集しようとしているプログラム(ファイル)以外でエラーが出ていることが分かっている場合にはFTPを使って上書きするか、問題のプラグインを停止してから編集すれば大丈夫でした。