サポート » テーマ » カスタム投稿による条件分岐部分がログインしていないと出力されない

  • 解決済 spicablue

    (@spicablue)


    お世話になります。

    オリジナルテーマを作成しており、footer.phpに
    以下のような条件分岐をしているコードがあります。

    <?php if( $post->post_type === 'photogallery' ): ?>
    <script type="text/javascript" charset="utf-8">
    $(function() {
      $('.weekly .flexslider').flexslider({
        animation: "slide"
      });
    });
    </script>

    この部分が、以下のような出力状態です。

    • ログイン&archive-photogallery :出力される
    • ログイン&single-photogallery :出力される
    • ログアウト&archive-photogallery :出力されない
    • ログアウト&single-photogallery :出力される

    なぜ、ログアウト状態のアーカイブでだけ出力されないのでしょうか。。
    周辺にもたくさん分岐があるのでコードミスも考慮し削除してみましたが
    現れません。。

    検証方法などでも良いので、どなたかご教示いただけませんでしょうか。

    よろしくお願いいたします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック投稿者 spicablue

    (@spicablue)

    解決しました。

    上記のコードの上に2箇所続けて new WP_Query(); している部分があり
    (photogallery とは違うカスタム投稿なのですが)
    クエリのリセット部分の
    wp_reset_postdata();

    wp_reset_query();
    に変更したところ出力されました。
    (どちらか一箇所だけ変えるとOKでした)

    new WP_Query(); はCodex等でも wp_reset_postdata でリセットすると書かれているので
    ちょっと気持ち悪いのですが、、

    DBやWordPressの仕組みを理解していないのが原因でしょう。
    とりあえず解決とさせていただきます。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「カスタム投稿による条件分岐部分がログインしていないと出力されない」には新たに返信することはできません。