【wordpress】PHP7にバージョンアップした場合の問題と対処

私のやったことを記述しておきます。

Initializing...

切り替え自体は簡単

これまでのphpはバージョン5.3が主流で程度のいいレンタルサーバーは5.6です。phpがバージョン7(以降php7) となったということで私もチャレンジすることにしました。php7にバージョンアップするのは各レンタルサーバー会社の管理パネルから簡単に切り替えられる。切り替えもワンタッチでものの1~2分で済む。例えばXserver(エックスサーバー)の場合は、管理パネルにログイン後PHP Ver.切り替えボタンを押し対象のブログを選んで切り替えるだけ。

PHPVer.切り替えボタン

PHPVer.切り替えボタン

問題がでないか心配

はっきりいってこういうものは大概問題が出ます。念入りな準備が大切です。
とりあえずネット上で他の方のブログでどんな状態なのか確認してみましょう。実際にググってみましたがあまり有用な情報は今のところありませんでした。 結局、自分でやるしかないという結果に!こういう時のためにいくつかテストサイトも同時に立ち上げているので、こちらで試す事にしました。

事前の準備

試しに使ったのが値段も手頃なコアサーバー。年間でも2,500円程度で使えるコストパフォーマンス抜群のサーバー。でも最近、評判が悪い(私的)。一応以下のように事前の準備はやってみました。

  1. Mysqlバージョンの確認
  2. プラグインを最新版のアップデート
  3. wordpressも最新版にアップデート

事前準備といってもこのくらいのものですが、1項のMySqlのバージョン確認はサーバーパネルかphpMyAdminを起動するとすぐわかる。php7との相性はとくに問題ないようなので調べるだけ。次のプラグインを最新版にアップデート。本当は1つ1つのプラグインについてphp7で動作可能かどうか調べなければならないのですが、私は全部のプラグインを最新版にアップデートすることで手間を省きました。最後にwordpressですが、こちらは確かではありませんがwordpress4.4以降であれば問題ないようですが、現在の最新版4.7に速攻でアップデートしました。さらに、テンプレートのコーディングも問題になるかもしれないので、4.7をダイレクトにインストールした方なら、標準のTTwenty Seventeenでしょうか。そのほかのテンプレートでも最新版であれば問題はでないと思います。

本当はもっと綿密に計画しなければならないところですが、これからアップデート使用とする方はこのブログを参考にしてみてください。

DB Cache Reloaded FixはPHP7未対応!

さて、事前準備はできたということでphp7に切り替えてみました。前述のとおりサーバーの管理パネルからphp7へ一発変更。切り替え完了まで1,2分くらい待ってみましょう。

php7切り替えでエラー

php7切り替えでエラー

やはり、エラーが発生したようです。私のインストールしている「DB Cache Reloaded Fix」が対応していないようです。ちなみにphp7に未対応だった「DB Cache Reloaded Fix」のバージョンは2.3です。

Parse error: syntax error, unexpected ‘new’ (T_NEW) in /virtual/bizcrew/public_html/www.iphone-mysterious.com/wp/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 214

さて、対応ですがなんとか元に戻さなければなりません。ここでひとつさらなる問題が出ました。ブログを見れなくなるのは覚悟の上ですが、なんと管理画面までエラーとなって起動出来ません。これは重大な問題発生です。管理画面でエラーとなったプラグインを外せばいいわけですが、出来ません。

一般のユーザであれば、これでお手上げです。レンタルサーバー会社に連絡をとって対処してもらうしかりません。

私の場合は、アクセスの手段としてFTP接続やTELNET接続が可能でしたので、このプラグインを直接削除。でもこれもあまりいい手ではありませんね。この場合の正解はサーバーの管理パネルでPHPバージョンを元に戻す事です。

 

php7はwordpress4.7で無事稼働!

先の問題となった「DB Cache Reloaded Fix」を削除後、再度php7に挑戦。wordpress4.7はものの見事に稼働してくれました。今回php7に挑戦しましたが本当はもっと綿密に計画的にやらなければならないところ、あまりにも無謀な挑戦だったと思います。自分では対処できないような事象が発生するかしれません。もしかするとデータを破壊してしまったかもしれません。そうなったら元も子もありません。

まとめ:php7移行の前にプラグインは全部無効に

今回1つ勉強になりました。wordpress4.7は事前の調べでphp7に対応していることはわかっていましたので、問題はテンプレートとプラグインです。テンプレートについてはwordpressの標準テンプレートで対応していましたので、プラグインのみ心配でしたが、プラグインは必要最低限のプラグインのみ残して(できれば全部)、無効(インアクティブ)にしてphp7に移行した方が良さそうです。その方が問題が出にくいかと思います。php7移行後はひとつひとつプラグインを有効にしてみてください。

なお、使用した環境は次のページに記載しています。

 

では、php7にバージョンアップは以上です。

2017年3月7日 以下を追記

その後、google XML Sitemap with Multisite support(Ver4.0.2)も動作不能であることが判明。手動でsitemapを作成(サイトマップを再構築ボタン)で下記のエラーを吐きます。

sitemap-error

サイトマップ作成でエラー

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

スポンサーリンク
ページ上部へ戻る