UPDATE:2023.12.27
- CATEGORY
【WORDPRESS】404ページでエラーが出たお話
こんにちは、かずです。wpを構築中にphp8系でちょっと困ったお話をします。
自作テーマをつくっているとよく使うこちら
そうです。親記事を指定して条件分岐するやつですね。
便利なのでよく使っているのですが、なんとphp8系を使うとエラーをはく場合があります。
実際にエラーとなった文章は・・・
「Warning: Attempt to read property “post_parent” on null in ほにゃらら functions.php on line ほにゃらら」
通常の固定ページや投稿ページは問題ないのですが、問題の出るページが404ページなんです!!
ちょっと気付きにくいところがにくらしい
というわけでまずは回避方法はこちら。
function is_parent_slug() {
global $post;
if( !is_404() ){
if ($post->post_parent) {
$post_data = get_post($post->post_parent);
return $post_data->post_name;
}
}
}
404のようないわゆる「仮想ページ」に起こる現象なようです。
似たような使い方をされている方は多いと思いますので、参考になれば幸いです。
それでは。
function is_parent_slug(){
global $post;
if ($post->post_parent) {
$post_data = get_post($post->post_parent);
return $post_data->post_name;
}
}