WordPress 6.5.x へのアップデート後、図のようなエラーが表示されて困った方が多いのではないでしょうか?
このエラーが出た瞬間、
「今までの記事全部◯んだ」と、
震え上がりました…。
でも安心してください。
エラーメッセージ内の「class-wp-translation-file-mo.php」は、サイトの表示に直接関わるファイルでないため、ユーザーがサイトを利用するときに問題が生じることはほとんどありません。
ただし、エラーログが縦長に表示されるため、WordPress管理画面のボタンやメニューが見えにくくなり、操作性が大幅に低下します。
本記事では、このエラー内容と対策方法について詳しく解説していきます。
WordPressのアップデートで6.5.xにアップデートしたいのに出来なかった方は、ぜひご一読してください。
エラーの詳細について
エラーメッセージについて、細かくして分析していきたいと思います。
分析結果をまとめると、
「in /home/ ~ class-wp-translation-file-mo.php」ファイルの161行目に未定義の配列キーがあります。
となります。
ファイル名「.php」のとおり、コードは「PHP言語」で書かれています。
結果通り、ファイルの161行目を見てみると以下のコードが記されていました。
変数「$name」「$value」「$meta_line」が未定義であることが、エラーの原因として考えられます。
ネット上で「Undefined array key ~ 」を調査したところ、以下のことがわかりました。
「IRODORI DESIGN」さんのサイトを参考にさせて頂きました。ありがとうございます。
エラーメッセージの修正方法が判明したので、実際に「isset関数」を使って、PHPファイルを修正する方法を解説していきたいと思います。
PHPファイルのコードを修正する
万が一に備えて、設定する前に必ずバックアップを取るようにお願いします。バックアップ方法は以下の記事に詳細をまとめておりますので、ご一読をお願いします。
今回、PHPファイルの編集方法は2通りありますので、具体的な手順を解説します。
※どちらの方法でも結果は変わらないため、やりやすい方で問題ございませんが、迷った場合はファイルマネージャーが直感的でわかりやすいためオススメです。
① レンタルサーバーのファイルマネージャーでコードを修正する方法
- 1
- 2登録情報を入力して、ログインする
- 3ファイルマネージャーを起動する
- 4エラーメッセージの「in /home/ ~ class-wp-translation-file-mo.php」に移動する
「pubulic_html」→「サイトのアドレス」→「wp-includes」→「l10n」に移動してください。
- 5バックアップ用の新規フォルダを作成する
編集するPHPファイルをバックアップするためのフォルダを作成します。
例ではフォルダ名を「old」としています。
- 6作成したフォルダに、PHPファイルをコピーする
図の手順に従って、「class-wp-translation-file-mo.php」をコピーしてください。
作成したバックアップフォルダをダブルクリックしてください。
右クリックメニューからファイルを貼り付けてください。
ファイルのバックアップはこれで完了です。
バックアップファイルを復元する方法
もし、PHPファイルを編集したことが原因で不具合が発生した場合は、以下の方法で復元してください。
- 1先ほどバックアップしたPHPファイルをコピーする
- 2「l10n」フォルダにPHPファイルをペーストする
復元する方法は以上となります。
- 7「class-wp-translation-file-mo.php」を編集する
「l10n」フォルダに戻り、PHPファイルをエディタで開いてください。
図のように、コードを追加してください。
コピー用として、コードを以下に置いておきます。
下のコード1・6行目をコピーして貼り付けてください。if( isset($name, $value, $meta_line) ) { list( $name, $value ) = array_map( 'trim', explode( ':', $meta_line, 2 ) ); $this->headers[ strtolower( $name ) ] = $value; }
保存して閉じるをクリックしてください。
- 8WordPressの管理画面で、エラーメッセージが解消しているか確認する
ファイルマネージャーでのコード修正は以上となります。
② FTPクライアントソフトでコードを修正する方法
FTPクライアントソフトを使用すると、レンタルサーバーにログインする必要がなくなり、大変便利になります。ただし、事前にソフトのインストールや設定が必要です。
FTPクライアントソフトの解説やインストール方法については、以下の記事に詳しくまとめておりますので、ぜひご参考にしてください。
- 1FileZillaを起動する
アイコンをダブルクリックして起動してください。
- 2設定したSFTP or FTPサーバーに接続する
左上の下矢印をクリックしてください。
設定済みの名前が表示されるため、クリックしてください。
Filezillaは以下のレイアウトになっています。
これを覚えておくと、この後の説明が頭に入りやすくなると思います。
- 3右側のサーバー側ウィンドウで、エラーメッセージの「in /home/ ~ class-wp-translation-file-mo.php」に移動する
サーバー側で「pubulic_html」→「サイトのアドレス」→「wp-includes」→「l10n」の順に移動してください
- 4「class-wp-translation-file-mo.php」をパソコンにダウンロードする
パソコン側のダウンロード先を選択後、サーバー側の「class-wp-translation-file-mo.php」を右クリックしてからダウンロードしてください。
※本記事では、ダウンロード先として「デスクトップ」を例に解説しています。 - 5バックアップ用として、PHPファイルをコピーする
編集するPHPファイルをバックアップするためのフォルダを作成します。
※例ではフォルダ名を「old」としています。作成したフォルダに、PHPファイルをコピーしてください。
- 6ダウンロードした「class-wp-translation-file-mo.php」をメモ帳で編集する
ダウンロードしたPHPファイルをメモ帳で開いてください。
図のように161行目にコードを貼り付けて編集してください。
コピー用として、コードを以下に置いておきます。
下のコード1・6行目をコピーして貼り付けてください。if( isset($name, $value, $meta_line) ) { list( $name, $value ) = array_map( 'trim', explode( ':', $meta_line, 2 ) ); $this->headers[ strtolower( $name ) ] = $value; }
メモ帳を閉じるときに警告がでるので、保存をクリックしてください。
- 7「l10n」フォルダに「class-wp-translation-file-mo.php」をアップロードする
図の順番にクリックし、アップロードしていきます。
以下の警告が表示されるので、そのままOKをクリックしてください。
バックアップファイルを復元する方法
もし、PHPファイルを編集したことが原因で不具合が発生した場合は、先ほどバックアップしたファイルをアップロードしてください。
- 8WordPressの管理画面で、エラーメッセージが解消しているか確認する
FTPクライアントソフトでのコード修正は以上となります。
まとめ
ここまで読んで頂き、ありがとうございます。
いかがでしたでしょうか。
本記事によって、皆さんにビビらずWordPressのアップデートをして頂ければ幸いです。
不明な点がございましたら、気軽にお問合せフォームよりご連絡をお願いします。できる限りサポートさせて頂きます。
それではまた会いましょう!
コメント