サポート » バグ報告と提案 » comment-template.php での Notice

  • 解決済 watabonbon

    (@watabonbon)


    WordPress 4.8.1, PHP7.1.4 です。
    404.php を作っていて、wp_head() の出力において
    Notice: Trying to get property of non-object in ・・・・/wp-includes/comment-template.php on line 1195
    が出ました。
    該当行付近を見ますと、

    $_post = get_post($post_id);
    
    $post_id = $_post ? $_post->ID : 0;
    $open = ( 'open' == $_post->comment_status ); // line 1195

    となっていて、投稿が無くて $_post がNULLのとき、やはりそうなるのではないかと思いました。
    ひとまずご連絡いたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • こんにちは

    私のTwentySeventeenを使っている環境ではdefine('WP_DEBUG', true);にしても404ページでそういったメッセージは出ませんが・・

    テーマのwp_headアクションフックを確認してみてください。

    そうですね。
    おそらく私が wp_head() に対して自分の functions.php 内で remove_action() などを行なっているので、標準テーマとは違う状況があるかもしれません。それは当方で調べて対処します。

    ただ、上記のコードは、型を確認しないでいきなりプロパティにアクセスしているように私には見えますので、改善した方がいいんじゃないかなーと思ったりしました。(なんか見当違い、勉強不足であれば申し訳ありません)

    とりあえず解決済みにしておきます。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • このトピックに返信するにはログインが必要です。