CG
(@du-bist-der-lenz)
phpのcount関数は配列の要素数を調べる関数です。配列でないとエラーになります。PHP7.2以降にCountableタイプ以外を指定するとWarning「count(): Parameter must be an array or an object that implements Countable」が出ます。
CG様、ありがとうございます。
申し訳ないのですが私はphpって何?というレベルの知識しか持ち合わせておらず、CG様の回答を読んでも何をしたら直せるのかよく分かりません。すいません。。。
自分で調べてみたところでは、PHP7.2以降だとエラーが出るようになったと書いてあるサイトがいくつかあったので、前のバージョンに戻してツイッターに投稿するテストをしてみたのですが、エラーは出続けていました。
CG
(@du-bist-der-lenz)
わからなければしょうがないことです。理解できないまま、すれ違いが続くだけなので。でも、質問されている内容にも、試してみるべきことはヒントとして御自身が書かれていますよ。
CG様
その試してみるべきことを具体的に教えてはいただけませんでしょうか?
こんにちは
PHP7.2に対応していないテーマやプラグインを利用している場合、このようなエラーが出る場合があります。
WINGというのはこちらのテーマですかね?
http://the-money.net/wordpress_wing_affinger5_infotop/
このフォーラムでは有償プロダクトのサポートはできませんので、テーマが原因のようですので購入元にphp7.2対応のものがリリースされていないか確認されてはどうでしょうか。
php7.2対応のものが無い場合はphp7.1などを使うようにサーバーのコントロールパネルなどから設定変更してください。
プラグインが原因の可能性もありますが、プラグインをひとつづつ無効にして確認してみてください。
munyagu様
アドバイスありがとうございます!!
munyagu様のアドバイスと同じように、テーマの変更、PHPのバージョンを落としてみるなどのテストはしてみたのですが、状況は変わりませんでした。
全記事を対象にツイッターへ投稿するテストをしてみたところ、2つの記事のみがエラー表示されることが分かりました。この2記事の共通点は特にありません。
次に、この2記事のコンテンツをコピペして新しいパーマリンクで新記事としてアップし、ツイッターにリンクしてもエラーはでませんでした。
レンタルサーバーのサポートの方のアドバイスによると、すべての記事に対してエラーが出ていない、新記事でもエラーは出ないことから元の2記事のデータに何らかの問題があると考えられるようです。
ただ私はコードを読んでもサッパリ分かりませんので、とりあえず新記事をアップすることで対応しました。
根本解決ではありませんが、とりあえずこれで様子見をしているところです。
具体的なアドバイスをしていただき、ありがとうございます。
助かります。
ツイッターに表示される記事のカードのことだと思うのですが、これはTwitter側でキャッシュされます。
ですので、テーマを変更したりして修正してもすぐには反映されません。
新しい記事として投稿して解決されたのなら不要とは思いますが、Twitter社から提供されているキャッシュクリアのサイトを載せておきます。
https://cards-dev.twitter.com/validator
munyagu様
ツイッター側のキャッシュがクリアされるサイトがあるんですね。
初めて知りました。
情報提供ありがとうございます!!