フォーラム

[解決済み] 現在のカテゴリーに属する投稿のみリスト表示したい (5 件の投稿)

  1. pinxnake
    メンバー
    3 years前の投稿 #

    カテゴリーページを開いたときのサイドバーに、このカテゴリーに属する投稿記事のみリスト表示したいのですが、それに値するテンプレートタグがわかりません。
    ご教授頂けると幸いです。宜しくお願いします。

  2. Naoko McCracken
    管理者
    3 years前の投稿 #

    <?php
    if (is_category()) {
    $this_cat = $cat;
    $query= 'cat=' . $this_cat . '&orderby=date&showposts=5';
    query_posts($query);
    ?>
    <ul>
    <?php while (have_posts()) : the_post(); ?>
      <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
    <?php endwhile; ?>
    </ul>
    <?php } ?>

    こんな感じでいかがでしょう。query_postsを使って、WordPressループをもう一回始める感じです。
    query_postsについては、ドキュメンテーションサイトにも少し書いてあります

  3. pinxnake
    メンバー
    3 years前の投稿 #

    Naoさま

    アドバイスありがとうございます。
    返信が遅くなって大変失礼しました。

    まだ、試せてないのですが、これを参考に頑張ってみます。

    経過は報告します。

  4. pinxnake
    メンバー
    3 years前の投稿 #

    報告が遅くなりました。

    Naoさまのアドバイス通りにやってみたところ、
    このカテゴリーに属する投稿記事のみリスト表示ができました。

    ただ、そのリストから個別のページに行くとそのリストがなくなってしまいます。
    そこで、

    if (is_category())

    のところを

    if (is_category() | is_single())

    としてみました。
    するとリストは表示されるんですが、違うカテゴリーのリストが出てきます。

    saidebarのテンプレートに直に書いています。

    個別の記事でも、その記事の属するカテゴリーのリストを表示させたいのですが、
    お知恵を拝借できれば幸いです。

    宜しくお願いします。

  5. pinxnake
    メンバー
    3 years前の投稿 #

    正しいかどうかわかりませんが、
    こんな感じでなんとか表示できました。
    報告しておきます。
    間違いとか変なところがあったらご指摘ください。

    <ul>
    <?php
    $cat = get_the_category(); $cat = $cat[0];{
    $catid= "$cat->cat_ID";
    }
    $myposts = get_posts('numberposts=10&category='.$catid);
    foreach($myposts as $post) :?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> </li>
    <?php endforeach; ?>
    </ul>

返信

ログイン しなければ投稿できません。

About this Topic