サポート » 使い方全般 » カスタム分類のアーカイブページでの記事一覧表示

  • 解決済 toakts0024

    (@toakts0024)


    いつもお世話になっております。

    今回、カスタム投稿のアーカイブページでarchive-plan.phpを作成しカスタム投稿の全記事一覧表示には成功しました。

    そして、そのカスタム投稿にカスタム分類を設定し、そのアーカイブページでarchive-plan.phpを使用したかった為、taxonomy.phpに以下の記述をしarchive-plan.phpが使用されるように設定しました。

    <?php
    	$tax = get_query_var('taxonomy'); //今見てるアーカイブページのタクソノミー名を取得
    	$getPostType = get_taxonomy( $tax );
    	$postType = $getPostType->object_type[0]; //タクソノミーに紐付いている投稿タイプのスラッグを取得
    	if ( $postType == 'plan' ) {
    		get_template_part( 'archive-plan' );
    	} else {
    		get_template_part( 'index' );
    	}
    ?>

    ここまでは良かったのですが、そのカスタム分類のアーカイブページで何も表示されません。

    具体的な症状は、カスタムメニューでカスタム分類のタームのリンクを表示させそこへ飛ぶとarchive-plan.phpのテンプレートは読み込まれているのですが、ループが機能しておらず一覧表示がされません。

    普通のループだけではなく、特別な記述がいるのかどうか調べても分からず八方塞がりな状態です。

    ループ文は以下になります

    if (have_posts()) :while (have_posts()) :
    	the_post();
    ?>
    <!--ループ開始-->
    
    <div class="home_area">
    
    <section>
    <div class="thumb_box">
    <a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>">
    <?php if ( has_post_thumbnail() ): // サムネイルを持っているときの処理 ?>
    <?php
    $title= get_the_title();
    the_post_thumbnail(array( 150,150 ),
    array( 'alt' =>$title, 'title' => $title)); ?>
    <?php else: // サムネイルを持っていないときの処理 ?>
    <img src="<?php echo get_template_directory_uri(); ?>/images/no-img.png" alt="no image" title="no image" width="150" height="150" />
    <?php endif; ?>
    </a>
    </div><!--//thumb_box-->
    
    <div class="entry_box">
    <?php the_time('Y.m.d') ?>
    <h3 class="new_entry_title"><a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
    <p class="date-time">
    <?php the_category(', ') ?> <?php the_tags('', ', '); ?>
    </p>
    </div>
    
    <div class="clear"></div>
    </section>
    
    </div><!--//home_area-->
    
    <?php endwhile; else: ?>
    <p>記事がありません</p>
    <?php endif; ?>

    何かしらのアドバイスをいただければ幸いです。
    どうかよろしくお願い致します。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター jim912

    (@jim912)

    taxonomy.php で get_template_partの前に

    var_dump( have_posts() );

    として true と表示されるのであれば、読み込んだ archive-plan.php が原因、false が表示されるのであれば、テンプレートを読み込む前のメインクエリーの問題と考えられます。

    トピック投稿者 toakts0024

    (@toakts0024)

    ご返事ありがとうございます。

    教えて頂いた方法を試した所、falseが表示されました。
    これはメインクエリーの問題ということですが、具体的にはどこを直せばいいのでしょうか?

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「カスタム分類のアーカイブページでの記事一覧表示」には新たに返信することはできません。