お問い合わせはコチラから

【WordPress】管理画面でPHPファイルの更新エラー、それ簡単に解決できます

サイト運営

いつのことからだろうか?

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

英語だと、

Unable to communicate back with site to check for fatal errors, so the PHP change was reverted. You will need to upload your PHP file change by some other means, such as by using SFTP.

と言うメッセージでWordpressの管理画面からfunction.phpをはじめとして拡張子が.phpのファイルが更新できなくなった。

この記事では、Wordpressの管理画面からPHPファイルの更新が出来なくなった時の解決方法についてまとめています。この記事を読むことでとても簡単に問題を解決することができます。

このメッセージはなぜ出るの?

このメッセージを検索すると原因ははっきりしている。

WordPress4.9からついたエラーチェック機能が犯人

WordPress4.9から追加された機能がメッセージを出すそうだ。

コーディング機能の強化
構文ハイライトとエラーチェック? イエス、プリーズ!
これまでは表示に問題があっても、愛情を込めて書いた CSS のどこに間違いがあるのか正確には分かりませんでした。CSS 編集と WordPress 4.8.1で導入されたカスタム HTML ウィジェットに実装された、構文ハイライトとエラーチェックを使えば、コーディングエラーをすばやく特定できます。より簡単にコードを見て確認し、コードのエラーをすみやかに修正するのに役立つでしょう。
安全のためのサンドボックス
真っ白な画面は非常に恐ろしいですね。WordPress 4.9はエラーがある状態で保存すると警告するので、テーマやプラグインに取り組んでいるときに白い画面を避けられるでしょう。夜はもっとよく眠れますね。
潜在的な危険を警告
テーマやプラグインを直接編集すると、WordPress 4.9はそれが危険なやり方だと警告します。そしてファイルを改変する前にバックアップするように勧めます。安全なルートを選べば、後から自分自身もチームと顧客もあなたに感謝することでしょう。

引用元https://wpdocs.osdn.jp/Version_4.9

WordPress4.9でメッセージが出ていなくても安心できない

私が管理しているサイトにも、最近この忌々しいメッセージが表示されるようになった。しかし、表示されるようになったのはWordpress5.1あたりからで4.9の頃にはメッセージは出なかった。

例の「致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。」が出る要因としてネットでよく書かれているのは、WAFの影響を疑えというのが主流です。

しかし、私のサーバーはWAFの機能はありませんのでWAF影響説は関係なし、さらにWordpress4.9の時には問題のメッセージは出ていなかったので、なんか後天的に作り込んでいるという可能性が高い。

別のメッセージのパタンもある

実は、function.phpが保存できないもう一つのサーバーがあり、そのサーバーには今回とは別のメッセージが表示されていた。

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

この問題は、プラグインが原因でメッセージが表示されていたということを以下の記事でまとめている。

今回も、もしやプラグインが悪さしている?

と思って、ひとつづつ停止にしていくと、なんと普通に更新⇒保存できるようになりました。

じゃぁ、どれが原因のプラグインなの?と思って、今度はひとつづつ有効化していく。

全て有効化しても正常に保存できる状態でした。

なんで??

と思いましたが、おそらくプラグインが何らかの悪さをしていたのだと思います。結局、どのプラグインが悪かったのかは特定できず。

また同じ現象が起きたら、同じようにプラグインをひとつづつ停止して有効化するという方法で解決できそうだという見込みは立ったので良しとしたいと思います。

REST APIが無効になっているとメッセージが出る

REST APIが使用禁止になっていると、このメッセージが出るようです。

セキュリティ系のプラグインや、メンテナンスモード、パスワードプロテクト系のプラグインなどではREST APIが禁止されているものがあるので、その場合は許可してあげれば大丈夫です。

有名どころだと、password-protectedというサイトにパスワードを付けるプラグインが初期状態だとREST APIを禁止しています。

設定に、REST APIを許可するチェックがあるので、そちらをチェックするとメッセージが出なくなります。

Password Protected – WordPress Plugin to Password Protect Site, Pages, & WooCommerce Store
Protect your WordPress site, pages, posts, WooCommerce products, and categories with single or multiple passwords.

WordPress4.9からメッセージが表示されて消えない人は?

①コアファイルの修正方法

まじめに、Wordpress4.9から「致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。」と言うメッセージに悩まされている人は、以下の記事を参考に修正されたらよろしいかと思います。コア本体の修正なのであまりお勧めは出来ませんが。

致命的なエラーをチェックするためにサイトと通信できないため、PHPの変更は取り消されました。 | WordPress | GAROP.NET

②コアファイルのもっと簡単な修正方法

①の修正内容は編集量が多いので、修正内容が簡単なこちらの修正方法の方がおススメです。

wp-admin/includes/file.phpを編集します。

変更前

<?php
if ( $is_active && 'php' === $extension) {

変更後

$extensionの後に、&& falseを追加する

<?php
if ( $is_active && 'php' === $extension && false) {

WAFが原因の可能性もある

サーバーのWAFが初期状態でONになっているサーバーではPHPのファイル編集が禁止されていることもある。WAFをすべてOFFにしてエラーが消えるかどうか確認したほうが良い。

セキュリティ系のプラグインも同様に悪さする可能性があります。

まとめ

WordPressのテーマ編集機能は、使えなくなるとその偉大さに気が付くわけです。ご丁寧に表示されるメッセージを見て、いちいちFTPなんてしてられるかよ、というのが皆さんの意見だと思います。

すくなくともWordpress4.9以降にメッセージが急に表示された場合は、プラグインの影響を疑った方が良いでしょう。とりあえず片っ端から停止していけば問題が解決する可能性は高いと思います。もし、とてもメジャーなプラグインしか導入していなくても一度試してみるとスッキリさわやかな感じになると思います。

この記事を書いた人
ブーン

はるばる日本よりオランダ王国へやってまいりました。
自分の経験が少しでも参考になれば嬉しいです。
お問い合わせは、『こちら』からお願い致します。

\ブーンをフォロー/
スポンサーリンク
サイト運営
\シェアお願いします!/
\ブーンをフォロー/
こんな記事も読まれています

失敗しないレンタルサーバーランキング

mixhost

不正アクセスに強くて使いやすいおススメサーバー
\本サイトで利用中/
メリット①:自動ウィルス駆除対応
メリット②:サイトの表示速度が速い!
メリット③:転送量の上限が多い!
メリット④:自由にプラン変更ができ、アクセス増にも対応できる!
メリット⑤:バックアップデータが無料で復元できる!
メリット⑥:Wordpressが簡単にインストールできる!
メリット⑦:どのプランでも初期費用が無料!
メリット⑧:10日間の無料お試し期間と30日の返金保証!

Conoha Wing

国内Wordpress最速の最強サーバー
メリット①:圧倒的な表示速度
メリット②:レンタルサーバーと独自ドメインがセットでお得◎
メリット③:プラン変更はすべてのプランで自由自在
メリット④:一か月の利用転送量の制限が緩い(9TB~)
メリット⑤:WordPresサイトの移行が簡単

エックスサーバー

国内シェアNo1の安定性と実績が魅力。ALL SSDで死角なしの万能サーバー。
メリット①:サイトの表示速度が安定して速い!
メリット②:アクセス負荷に強くて安定性が高い!
メリット③:24時間365日の充実サポートで安心!電話サポートもあり!
メリット④:転送量が多い!
メリット⑤:自動バックアップ機能付き!
メリット⑥:WordPressが簡単にインストールできる!
メリット⑦:10日の無料お試し期間がある!

タイトルとURLをコピーしました