サポート » 使い方全般 » ページ送りができません。

  • ページ送りについてお尋ねします。

    query_postsやget_postsで特定のカテゴリーの記事を取得して、一覧表示やタグからの検索を行なっているのですが、ページが分割される場合のページ送りがうまく動作しません。

    <?php next_posts_link(); ?><?php previous_posts_link(); ?>の他、
    <?php posts_nav_link(); ?>も動作しませんでした。

    正確には、ページは切り替わるのですが、記事の内容は同じものが表示されます。

    同じような悩みをもたれている方の記事をいくつか拝見して、色々試してみたのですが、どうしても上手くいきません。

    「$query_string .」も試してみました。
    「showposts」を「posts_per_page」に替えてみてもダメでした。

    <?php
    $paged = get_query_var('paged');
    query_posts("posts_per_page=5&paged=$paged");
    ?>

    これも動作しませんでした。(変わらず記事内容が切り替わりませんでした)

    少し長くなりますが、以下が大まかなページ内容です。

    途中、本文の内容など、必要なさそうなところは見やすくするために削っています。
    もし削りすぎで内容が分からないという場合は教えてください。

    新着表示

    <?php get_header(); ?>
    
    	<div id="wrapper">
    		<?php get_sidebar(); ?>
    	<div id="page">
    
        <?php $paged = get_query_var('paged');
     query_posts('&cat=45&showposts=10&order=DESC&arderby=modified&paged=$paged'); ?>
    
      <?php if(have_posts()): ?>
    
      <?php while(have_posts()):the_post(); echo wp_get_attachment_url($post->ID,'medium');?>
    
    <!-- 内容は省略 -->
    
      <?php endwhile; ?>
    
     <?php next_posts_link(); ?><?php previous_posts_link(); ?>
      </div></div>  
    
      <?php else: ?>
      <?php endif; ?> 
    
    <?php get_footer(); ?>

    タグからの検索

    <?php get_header(); ?>
    	<div id="wrapper">
    		<?php get_sidebar(); ?>
    	<div id="page">
    
    <?php
    $post_custom = get_post_custom($post->ID);
    
    	$map_posts = get_posts(array(
    							 'category'=>$cate_id,
    							 ));
    
      $count = count($map_posts);
      for ($i = 0; $i < $count; $i++) {
    	$map_post = $map_posts[$i];
    	$map_post_custom = get_post_custom($map_post->ID);
    	$post_url = get_permalink($map_post->ID);
    
    	$post_title = get_the_title($map_post->ID);
    	$post_mod = get_the_modified_time(Y年n月j日);
    	$post_id = $map_post->ID;
    
    	  ?>
          <!-- 内容は省略 -->
    
    <?php
    }
    
    ?>
    
        	<ul class="nav_post_link">
    			<li class="left"><?php next_posts_link('&laquo; Older Entries') ?></li>
    			<li class="right"><?php previous_posts_link('Newer Entries &raquo;') ?></li>
    		</ul> 
    
    <?php get_footer(); ?>

    どのように記述すれば正常にページ送りができるでしょうか?

    長くなりましたが、もしお分かりになる方がいらっしゃればご教示いただけると幸いです。

    宜しくお願いします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • query_posts("posts_per_page=5&paged=$paged");
    の部分を

    query_posts('posts_per_page=5&paged='. $paged);
    にしてもだめですか?

    トピック投稿者 takashi-ots

    (@takashi-ots)

    LVP8さん

    素晴らしい!
    できました!

    ありがとうございます。

    昨日から悪戦苦闘してましたので、ホントに助かりました。^^

    ちなみに、2番目「タグから検索」の「get_posts」の方の場合は、お分かりになりますか?
    タグでの検索の場合と、条件を分岐していて、タグ検索の指示がない場合の方だけ記載しています。
    (タグ検索の方からコピペして使っているので「array」で組んであるのですが・・・。)

    タグ検索の指示がある場合は、このようにしています。

    $map_posts = get_posts(array(
    				 'numberposts' => -1,
    				 'tag_slug__in' => array($a,$b,$c,$d,$e,$f,$g,$h),
    				 'category'=>$cate_id,
    				 ));

    8個の中から、チェックして送信。という形です。

    もしお分かりになるようでしたらお願いします。

    get_posts の方は、一番目の query_posts と同じ挙動ですか?
    ページ送りは表示されてますか?

    numberposts の値が -1 になっているので、1ページに表示したい数字に変更(‘numberposts’ => 10, など)して試してみてください。

    トピック投稿者 takashi-ots

    (@takashi-ots)

    LVP8さん、

    再度ありがとうございます。

    get_posts の方は、一番目の query_posts と同じ挙動ですか?
    ページ送りは表示されてますか?

    詳細、忘れてました。スミマセン。

    「get_posts」の方は、ページ送りのリンクすら現れません。
    numberpostsの値も10、5、numberpostsなしなど、色々試してみましたが表示すらしてくれませんでした。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「ページ送りができません。」には新たに返信することはできません。