web-dev-qa-db-ja.com

エラー警告:description_walker :: start_elの宣言後 PHP アップグレードする

私は私のPHPを7.0にアップグレードしました。その後、私のウェブサイトのヘッダーにこのメッセージがあります。

警告:description_walker :: start_el($ output、$ item、$ depth、$ args)の宣言は、Walker_Nav_Menu :: start_el(&$ output、$ item、$ depth = 0、$ args = Array、$ id =と互換性があります。 0)/homepages/2/d444683358/htdocs/wp-content/themes/zend/functions.phpの59行目に

これはfunctions.phpの59行目です:

$output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );

私はコーダーではないので、これを修正するために何をする必要があるのか​​わかりませんか?

ご協力いただきありがとうございます

5
robtus88

エラーメッセージは、クラスdescription_walkerWalker_Nav_Menuクラスを拡張してstart_el()メソッドをオーバーライドすることを示していますが、シグネチャは親クラスのメソッド定義とは異なります。

コメントで述べたように、あなたのテーマの開発者に連絡して、テーマの修正版を求めるのが最善でしょう。

開発者に連絡が取れない場合、または本当に自分でテーマを修正したい場合は、次のようにします。ただし、テーマファイルへの変更はテーマの更新時に上書きされることに注意してください。

テーマファイルを検索して、description_walkerクラス内のstart_el()の関数定義を探します。コード行は次のようになります。

function start_el( $output, $item, $depth, $args ) {

この行を次のように変更すると、警告が消えます。

function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) {
21
JHoffmann