サポート » 使い方全般 » 固定ページでの処理で、親ページで条件分岐したいです。

  • 解決済 mint-chan

    (@mint-chan)


    やりたいことは、固定ページの表示のとき、親ページを判断して、処理を分けたいです。

    例えば、親ページが、親A,親B,親C とあり、親Aまたは親B の子ページの場合は、アイキャッチ画像を表示したいです。
    親A     Aの子ページは アイキャッチ画像を表示
    ├ 子A01
    ├ 子A02
    親B     Bの子ページは アイキャッチ画像を表示
    ├ 子B01
    ├ 子B02
    親C
    ├ 子C01
    ├ 子C02

    現在、親AのIDを 10 とした場合、下記のようにしまして、うまくいきました。
    これを、配列のようなarrayのようなものを使って、一文で条件判断することは
    できないでしょうか?

    <?php if (( $post->post_parent == ’10’)) { ?>
    <?php the_post_thumbnail(‘large’); ?>
    <?php } else { ?>
    <?php the_content(); ?>
    <?php } ?>

    やりたいイメージは、以下のような感じです。
    親AのIDを 10 親BのIDを 11 の場合です。

    <?php if (( $post->post_parent == ’10’,’11’)) { ?>
    <?php the_post_thumbnail(‘large’); ?>
    <?php } else { ?>
    <?php the_content(); ?>
    <?php } ?>

    どうぞ、よろしくご指導のほどお願いいたします。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • PHP の in_array 関数を使ってはどうですか。

    トピック投稿者 mint-chan

    (@mint-chan)

    gblsm様 ありがとうございます。
    教えていただきましたリンクをざっと拝見しましたが、すぐに理解できないので、じっくり読んでからまたご報告いたします。

    mint-chanさん、固定ページのIDで判断するのとは違う方法もあるので、一つ例を挙げます。カスタムフィールドの値で判断する方法です。

    親投稿にカスタムフィールドAを付け、値Bをセットします。親ページのAを取得して、値がBのときだけ子ページを表示します。もし親ページにAが付いていなければ、値がBではない場合と同じに扱えばよいでしょう。

    トピック投稿者 mint-chan

    (@mint-chan)

    gblsm様 ありがとうございます。
    そうですね。考え方を変えて、カスタムフィールドを作成してチェックするというのもありですね。こちらの方が理解しやすいです。どちらにするか考えてみます。ありがとうございました。

    トピック投稿者 mint-chan

    (@mint-chan)

    in_array 関数 の方はやはり理解不能でしたので、カスタムフィールドを利用する方にしてみました。

    下記のように、子ページのカスタムフィールドは成功したのですが、
    これを親ページのカスタムフィールドを取得するところがわかりません。
    よろしくお願いします。
    カスタムフィールド名 を A
    カスタムフィールドの値を B
    としました。

    <?php if(get_post_meta($post->ID,'A',true) == 'B'): ?>
    	<?php the_post_thumbnail('large'); ?>
    	<?php the_content(); ?>
    	<?php wp_link_pages( array( 'before' => '<div class="page-link">' . 'Pages:', 'after' => '</div>' ) ); ?>
    <?php else : ?>
    	<?php the_content(); ?>
    	<?php wp_link_pages( array( 'before' => '<div class="page-link">' . 'Pages:', 'after' => '</div>' ) ); ?>
    <?php endif; ?>

    関数リファレンス/get ancestors の「用例」が参考になりますよ。

    トピック投稿者 mint-chan

    (@mint-chan)

    gblsm様

    ありがとうございます。関数リファレンス/get ancestors  を調べてみました。また、今まで自分がわからずに使用していた過去のものと照らし合わせて、少し考えています。
    また、ご連絡いたします。
    ありがとうございました。

    トピック投稿者 mint-chan

    (@mint-chan)

    いろいろありがとうございました。

    やはり、個別にアイキャッチ画像の表示を指定できるため、子ページのカスタムフィールドの判断で、実現することにいたしました。

    ありがとうございました。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「固定ページでの処理で、親ページで条件分岐したいです。」には新たに返信することはできません。