こんにちは。たなか(@tanaka_ricecake)です。
当ブログはWordPressで制作しています。
先日ping最適化プラグインの『WordPress Ping Optimizer』を有効化してみたところ、エラーにぶつかりました。
今回はWordPress Ping Optimizer導入時に発生したエラーについて、解消法を解説していきます。
もくじ
症状:WordPress Ping OptimizerでWarning: count()~
WordPress Ping OptimizerでWarning: count(): Parameter must be an array or an object that implements Countable in /home/xxxxxx/programming.best/public_html/wp-content/plugins/wordpress-ping-optimizer/cbnet-ping-optimizer.php on line 533
ブログTOPページのヘッダー上にエラーメッセージが表示されています。
内容は以下です。
Warning: count(): Parameter must be an array or an object that implements Countable in /home/xxxxxx/programming.best/public_html/wp-content/plugins/wordpress-ping-optimizer/cbnet-ping-optimizer.php on line 533
インストールのし直しや他プラグインとの競合も考え、色々いじってみましたが症状改善せずでした。
解決方法
cbnet-ping-optimizer.phpの533行目を修正する!
FileZillaなどのFTPソフトを利用し、エラーを吐いているプラグインのファイルを直接修正します。
修正する際はファイルのバックアップを取りましょう
修正ファイルは
public_html/wp-content/plugins/wordpress-ping-optimizer/cbent-ping-optimizer.php
です。
ダウンロードして533行目をチェック。
if (is_null($this->cbnetpo_future_pings))
$pingCount=0;
else
// $pingCount=count($this->cbnetpo_future_pings); ← この行をコメントアウト
533行目を上記のようにコメントアウトし、一行下に以下の文を追記します。
$pingCount = $this->cbnetpo_future_pings ? count( $this->cbnetpo_future_pings ) : 0;
最終的に530行目~534行目が以下のようになればOK
if (is_null($this->cbnetpo_future_pings))
$pingCount=0;
else
// $pingCount=count($this->cbnetpo_future_pings); ← この行をコメントアウト
$pingCount = $this->cbnetpo_future_pings ? count( $this->cbnetpo_future_pings ) : 0;
サーバーにアップロードし、TOPページを再確認すると……
エラー表示が消えました!よかった!
まとめ
WordPress Ping Optimizerで発生したWarning: count()エラー解消についてご紹介しました。
ブログ初心者の方には「ファイルを直接いじるなんて怖い…」と思われる方もいらっしゃるかもしれませんが、修正箇所は1行で上のテキストをコピペするだけでOKです。
プラグイン自体を停止してしまえばエラーも消えますが、どうしてもpingプラグインの効果を享受したいし、エラーも解消したい!というわがままプリンセスであれば今回の方法を試してみてください。
今回はここまで。