lolipopに置いているWPサイト(Virtue利用①)を久しぶりに覗き、たまっていたプラグインの更新したら、List Category Posts でエラーとなった。当サイトでも、もう一つのVirtue利用サイト②でも問題ないのに。
ただしVirtue②は更新で一度エラーになったことがあった。あのときはプラグインのバグだったようで、旧バージョンに戻して回復。しばらくしたら修正された。
ちなみに、当サイトもVirtue②もサーバーはwpX。全部wpXにまとめるほうが良いのか…と考えながら解決策を検索。問題のエラーメッセージは以下。
Parse error: syntax error, unexpected '[' 〇〇〇〇/wp-content/plugins/list-category-posts/include/lcp-widget.php on line 87
サイトページも管理画面もこのエラーメッセージのみが表示されるだけ。あまりアクセスのないサイトなので平気でそのまま作業したけれど、初めてこの手のエラーに遭遇したらあせるだろうなあ。そんなときは取り急ぎFTPでサーバーに接続し、プラグインのディレクトリをコメントアウト(名前の末尾に何か一文字足すとか)すればよい。list catefory posts は機能しなくなるけれど、サイトも管理画面も表示されるようになる。
検索によると、lp-widget.pjp の87行目
if ((is_null($category_id) || [0] === $category_id ) &&
を以下のように修正すべし、とある。
if ((is_null($category_id) || array(0) === $category_id ) &&
が、エラーが出たままで変わらず。
phpのバージョンが古いと(PHP5.3.29まで)このエラーが発生するとのこと。lolipopのサーバー管理画面を見ると5.3であった。これを7.1に変更。回復。
本当はこまめにチェックして更新しなくちゃいけないのに、ずっと放置してたからなぁ。やっぱりwpXにまとめるのが楽かも。プラットフォームが異なると問題発生も修復作業も異なるし、一度で済む手間も二度手間になる。
コメント