ワードプレスのローカル環境を立ち上げるためにLocalを使用しました。
テーマファイルエディターからCSSは更新できるのに、PHPは更新できない(「ファイルを更新」ボタンをクリックすると永久にぐるぐる円が回り続ける状況)ときに行った対処方法です。
WPテーマの自作がしたい筆者。HTMLとCSSはなんとなくわかるけれど、PHPと関数についてはまったくのシロウトです。
テーマファイルエディタからPHPが更新できない
WPの管理画面「テーマファイルエディター」からPHPファイルの更新ができない。状態としては以下の通りです。

永久にぐるぐるする。

しばらくした後「致命的なエラーをチェックするためにサイトと通信できないため、PHPの変更は取り消されました」というエラーがでてくるのです。
PHPファイルがテーマファイルエディタから更新できないとなると、地味に不便です。
PHPファイルをPCのテキストエディタで打ち、ファイルを保存し、ZIP形式に圧縮して、WPのテーマとしてアップロードする………… この作業は面倒レベル10段階中8といったところでしょうか。テーマファイルエディターからファイル更新をすることができれば、PHPもCSSもいじることができるのに。
※ 追記:【Go to site folder】から直接テーマファイルにアクセスし、そこからコードをいじることができました。とはいっても管理画面から更新できたほうが何かと便利であることに変わりはありません。
調べてみると、質問フォーラムに同じ悩みが寄せられていました【参考:ローカル環境でstyle.css以外ファィルの更新ができない】。どうやらよくあるエラーのようですね。
対処方法
セキュリティの観点からあまり良い方法ではないのかもしれませんが、ローカル上であれば対応できそうな方法を見つけました。
こちらの記事を参考にPHPファイルを編集してみます【参考:WordPress5のテーマファイルエディターで.php編集がエラーになる】。
- Go to site folder を選択し、保存されているフォルダを開く
- app > public > wp-admin > includes にある file.php を編集
編集するのは file.php です。
なかにある if ( $is_active && ‘php’ === $extension ) { の記述を if ( $is_active && ‘php__IGNORE__’ === $extension ) { に書き換えます。
事前準備

安全にPHPファイルをいじるために、① 実行前に編集中のファイルがあったらデータが飛ばないように保存し、右上にある ② Stop site をクリックして一旦サイトを停止状態にさせましょう。
Go to site folder を選択

Go to site folder をクリックし、ローカル環境WPのフォルダ群を開く
includes フォルダ内にある「file.php」を編集

app > public > wp-admin > includes の順にフォルダを選択し、file.phpを開く
( ※ PHPファイルを削除したり内容がまちがっているとサイトはおろか管理画面すら開けなくなるので、念のためコピーをとりましょう )

file.php のなかにある if ( $is_active && ‘php’ === $extension ) { の記述を if ( $is_active && ‘php__IGNORE__’ === $extension ) { に書き換えます。
わたしの場合 file.php の525行目に該当の編集箇所がありました。※ ファイルの編集はテーマファイルエディターを使用してください。
最後にファイルを保存し、アップロードすることを忘れずに。

これでPHPファイルがテーマファイルエディターから保存できるようになりました。✌
コメント