2023/10/04備忘録wordpress
php8系でエラー「Undefined property: WP_Error::」を解消
Undefined property: WP_Error::」は「プロパティが定義されていません」ですから、未定義のプロパティがあるということですね。
出る場面はまちまちで、今回の場合は、
「Do not pass the second parameter in get_query_var() function.」
「its an optional parameter default empty.」でした。
つまり「get_query_var() の第2パラメーターは、初期状態が空っぽなので渡せません」ということです。
「空っぽ = =未定義」ということですね。
変数に渡す前に、手っ取り早く第2パラメーターを渡したいところですが、変数に入れた後に使うことで、解消します。
/*修正前*/
$term_object = get_queried_object();
$term_slug = $term_object->slug;
if(empty($term_slug)){
$term_slug = 'all';
}
/*修正後*/
$term_object = get_queried_object();
$term = $term_object;
if(empty($term->slug)){
$term_slug = 'all';
}