SimplePie/Parse/Date.php on line 694のWarning対策

simplepie-warning wordpress

SimplePieを使用した自作のRSSではPHP7.x以上を使用している際にwarning表示が出ます。これに対してはSimplePieでは2016年7月に対策がされたのですが、WordPressには以前のSimplePie1.3.1が使用されています。

WordPressの対応には時間がかかりそう

WordPressが対応するまでの方法があるので一時的に使用します。

修正するファイルの場所

WordPressのフォルダ\wp-includes\SimplePie\Parse\date.php

SimplePieの中にあるDate.phpに修正を施してしのぎます。

warningで指示のされているファイルのバックアップを取り終えたら、694行目を確認します。

$second = round($match[6] + $match[7] / pow(10, strlen($match[7])));

$matchとしてある変数の前に(int)を差し込みます。

$second = round((int)$match[6] + (int)$match[7] / pow(10, strlen((int)$match[7])));

以上で表示されていたwarningはなくなりRSSのみになります。

WordPressのアップデートをしたら確認を!

この対策ですがWordpressのコアファイルの編集となっているため、アップデートにより再度必要となるケースがあります。