サポート » 使い方全般 » 投稿記事の中でquery_postsで取得したアーカイブでページ送り

  • こんにちは。
    いつも質問ばかりですみません。

    投稿記事の中で、その記事が属するカテゴリーのその他の記事一覧を表示させたいと頑張っておりますが、『ページ送り』の部分でつまづいてしまっています。

    query_postsで取得した記事(全部で30件あるとして)、現在表示中の投稿記事の中では3件を表示し、それ以外は『ページ送り』を表示させて(WP-PageNavi利用)、すべてのアーカイブを事実上見られるようにしたいのですが、固定ページ記事と違って、投稿記事にはページ送りという概念がないのか、上手く2枚目以降のページへ送れないでいます。

    サンプルコードは以下のとおりです。

    <?php $paged = get_query_var('paged'); ?>
    <?php query_posts(array('category__in'=>array(1),'posts_per_page'=>3,'post__not_in' => array($post->ID),'order'=>DESC,'paged'=>$paged)); ?>
    <ul>
    <li>
    <?php if(have_posts()) : while (have_posts()) : the_post(); ?>
    ページタイトル:<a href="<?php echo get_permalink($post->ID); ?>" id="post-<?php the_ID(); ?>"><?php echo $post_title; ?></a>
    抜粋:<?php the_excerpt(); ?>
    </li>
    <?php endwhile; endif; ?>
    </ul>
    <?php wp_pagenavi(); ?>
    <?php wp_reset_query(); ?>

    投稿記事の中で、ページネーションを使うという試み自体がなにか間違っているようにも思うのですが、なにかを見落としているようでもあり、完全にハマってしまいました。。

    皆さまのお知恵を拝借できますと幸いでございます。

    m(__)m

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

    (@shimodar)

    V.J.Catkickさま

    参考URL拝見しました。

    試してみましたが、not foundになるまでもなく、次のページ自体が存在しないかのように
    ページが遷移しない状況です。

    ちなみにパーマリンクの設定は
    /%category%/%post_id%.html
    としており、

    現在表示中のページが
    http://www.ほげほげ.jp/news/23.html
    だとして、
    ページネーションのリンクをマウスオーバーしますと、
    http://www.ほげほげ.jp/news/23.html/page/2 とツールバーに表示されますが、

    リンククリックしてもhttp://www.ほげほげ.jp/news/23.htmlに戻されてしまう次第です。

    試しにパーマリンクの設定を下記に変更し、
    /%category%/%post_id%
    固定ページのページネーションと同じようなパーマリンク表記になるのを利用して
    例:http://www.ほげほげ.jp/news/23/page/2

    次ページへ送れないか試してみましたが、だめでした。。(@_@;)

    どうしても難しい場合は、$queryに文字列を指定して、バックナンバー全部を表示させるアクションを考えているのですが、$queryを<?php query_posts(array()); ?>の中にどのように記述すればいいのかわからず四苦八苦しております。

    引き続きどうぞ宜しくお願いいたします。

    どうしても上手くようであれば、query_postsを使って自前でページングした方が早いかも知れませんね。具体的にはquery_postsに対してオフセットをかけて必要表示数だけ表示するというロジックになりますね。pagedの数字-1x1ページに表示したい数をオフセットとし、そこから1ページに表示したい数のエントリを取得…後は適当にリンクつけて整形というパターンですか。

    shimodarさん /page を省いて
    http://www.ほげほげ.jp/news/23.html/2
    でアクセスしてみてください。

    トピック投稿者 haha taduko

    (@shimodar)

    >>V.J.Catkickさま

    アドバイスありがとうございます。
    たしかにその方法で、力技で対応できそうですね。
    もう少し、他に方法がないか頑張って調べてみたいと思います。

    >>LVP8さま

    /pageを省いて試してみました。
    結果、それぞれURLは叩ける状態になりましたが、肝心のページ送りには
    ついてこない状況でございました。

    引き続き、継続してしらべたいと思います。

    自己解決した場合も、公表しますのでこれからも宜しくお願いいたします。

    トピック投稿者 haha taduko

    (@shimodar)

    みなさまアドバイスありがとうございました。

    その後の進展についてご紹介が遅れましたが、

    結局、ページ送りではなく、

    こちらの記事を参考にさせていただき、

    リンクアクションでquery_postsの引数を切り替える
    http://ja.forums.wordpress.org/topic/6101?replies=3

    クリックアクションで同ページにカテゴリー内のすべての記事を表示するという
    手段にて切り抜けました。

    現在はアーカイブ数が許容できる範囲の数ですのでこちらの手段をとりましたが、
    今後はアーカイブ一覧ボタンなどを用意し、ページを切り替えて解決を図りたいと考えています。

    質問に対するみなさまからのご回答に深謝いたします。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「投稿記事の中でquery_postsで取得したアーカイブでページ送り」には新たに返信することはできません。