[PHP7]Feedwordpressで「Warning: Parameter 2 to SyndicationDataQueries::posts_search() expected to be a reference, value given in」のエラーが出た場合の対処方法


XserverでPHPバージョン7.1を使用した際にFeedwordpressでエラーが出るようになったので対象方法をメモ。

IT/WEB業界への転職なら求人サイトGreen

PHPバージョンを7.1に変更した際に以下のようなエラーが表示されるようになりました。

Warning: Parameter 2 to SyndicationDataQueries::posts_search() expected to be a reference, value given in wp-includes/class-wp-hook.php on line 298

Warning: Parameter 2 to SyndicationDataQueries::posts_where() expected to be a reference, value given in wp-includes/class-wp-hook.php on line 298

Warning: Parameter 2 to SyndicationDataQueries::posts_fields() expected to be a reference, value given in wp-includes/class-wp-hook.php on line 298

Warning: Parameter 2 to SyndicationDataQueries::posts_request() expected to be a reference, value given in wp-includes/class-wp-hook.php on line 298

エラーメッセージを見ると、
参照渡しではなく、値として渡す必要があるとの事。

対処方法としては以下ファイルを修正します。

feedwordpress/syndicationdataqueries.class.php

41行目

function posts_search ($search, &$query) { 
↓
function posts_search ($search, $query) {

78行目

function posts_where ($where, &$q) {
↓
function posts_where ($where, $q) {

95行目

function posts_fields ($fields, &$query) {
↓
function posts_fields ($fields, $query) {

34行目

function posts_request ($sql, &$query) {
↓
function posts_request ($sql, $query) {

上記修正をする事でエラーメッセージが表示されなくなりました。

参考サイト
https://github.com/radgeek/feedwordpress/issues/86

 

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

follow us in feedly