質問: ### 前提・実現したいこと WordPressテーマ作成について学習中です。 PHPは初心者です。C#は実務経験があります。 下記のソースコードはfunctions.phpに書かれたのサンプル関数で、 固定ページが子ページかどうかを判断するものです。 if文の条件内に 『$post->post_parent』という記述がありますが、 演算子の右は何でしょうか?(左は変数ですよね。) ### 該当のソースコード function X_is_subpage() { global $post; if ( is_page() && $post->post_parent ) { return $post->post_parent; } else { return false; }; }
回答: クラスの「プロパティ」です。 > > クラスメソッドから静的でないプロパティにアクセスするには -> (オブジェクト演算子) を使って $this->property のようにします (property のところにプロパティ名を指定します) > > > ご提示のコードの`$post`は おそらく WP_Postクラスのインスタンスで、 `if ( is_page() && $post->post_parent )`部分で 「ページオブジェクトで、かつ"親投稿"を持っているか?」 を判定していると思われます。 > > post_parent 整数 親投稿の ID (デフォルトは0) > > > PHP の場合、if 文などの条件式に数値の 0 を指定すると、false とみなされます。 > > boolean に変換する場合、次の値は FALSE とみなされます。 > > (中略) > > ○ integer の 0 (ゼロ) > > >