WordPressのエラー、これってうちのサイトだけの問題?

My Web Serverのログを確認していて、以下のエラーが大量に発生していることに気付きました。

PHP message: PHP Warning: Illegal offset type in isset or empty in /DocumentRoot/wp-includes/class-wp-hook.php on line 75
PHP message: PHP Warning: Illegal offset type in /DocumentRoot/wp-includes/class-wp-hook.php on line 77


Illegal offset type エラーの原因は、add_filter関数の定義にて第3引数にデフォルト値が設定されていないため、

75: $priority_existed = isset( $this->callbacks[ $priority ] );
76:
77: $this->callbacks[ $priority ][ $idx ] = array(

/DocumentRoot/wp-includes/class-wp-hook.php

$this->callbacks配列の要素である$priorityにNullが代入されているためでした。$this->callbacks[Null]や$this->callbacks[Null][$idx]を参照しようとすれば”Illegal offset type”と怒られるのも当然です。

73:- public function add_filter( $tag, $function_to_add, $priority, $accepted_args) {
73:+ public function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1) {

/DocumentRoot/wp-includes/class-wp-hook.php

第3引数、 第4引数の指定が無かった場合、デフォルトでそれぞれ”10″と”1″が設定されるようにしたところ、エラーが解消しました。 add_filter関数を使わなければ問題は起きないのですが、使っているテーマでは結構な数を使っていました。 add_filter関数が正常に動作しない場合にチェックして見て下さい。

WordPressもまだまだ甘いな(ぼそっ)。