サポート » 使い方全般 » 固定ベージのナビゲージョンで、同じ構文なのにエラーと正常動作に

  • 解決済 taka_fumi

    (@taka_fumi)


    固定ベージに特定のカテゴリーに含まれる投稿(ID86=45件、ID7=23件)の一覧表を作った後、10件/1ページで表示したくて、Yuriko.netさんのWP-PageNavi を使わずにナビゲーション表示に書いてあったものを試しにそのまま使ってみました。

    まず、86のカテゴリーで[固定ベージ]から表示させたところ正常に動作したので、7のカテゴリー用に直したものを別名で保存後サーバにアップ。

    いざ、サイトから表示させたところ、どちらも1ページ目自体は表示し、86のカテゴリーはナビゲーションを表示するものの2ページ目以降をクリックしても「見つかりません リクエストされたページが存在しません。」のエラーを出し、7のカテゴリーは正常なナビゲーションで2ページ目以降を表示します。

    何度も見直しましたが、2つのphpの違いはテンプレートネームとカテゴリーだけです。
    phpは見様見真似でしか分からないので、完全にお手上げ状態です。
    どこに問題があるかヒントだけでもいただけないでしょうか。

    <?php
    /*
    Template Name: 86のカテゴリー
    */
    ?>
    
    <?get_header(); ?>
    
    		<div id="container">
    			<div id="content" role="main">
    
    <h2>タイトル</h2>
    <hr />
    
    <?php
      $paged = get_query_var( 'paged' );
      query_posts('cat=86&posts_per_page=10&paged='. $paged);
    ?>
    
    <?php if( have_posts() ) : while(have_posts()) : the_post(); ?>
    
    <p><a href='<?php the_permalink() ?>' title='<?php the_title(); ?>' >
    
    <ul>
    </a>
    	<li><span style="margin-right: 20px; font-size:small; " ><?php the_date("Y/n/j"); ?></span><span style="font-size: large;"><a href='<?php the_permalink() ?>' style="text-decoration: none;" ><?php the_title(); ?></span></a>
    <br />
    <div style="border:double #bbc8e6; border-width:3px 0 0 0; margin: 6px 0; "></div><?php the_excerpt(); ?></li>
    </ul>
    
    </p>
    
    <?php endwhile; endif; ?>
    
    <div class="tablenav"><?php global $wp_rewrite;
    $paginate_base = get_pagenum_link(1);
    if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) {
    	$paginate_format = '';
    	$paginate_base = add_query_arg('paged', '%#%');
    } else {
    	$paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .
    	user_trailingslashit('page/%#%/', 'paged');;
    	$paginate_base .= '%_%';
    }
    echo paginate_links( array(
    	'base' => $paginate_base,
    	'format' => $paginate_format,
    	'total' => $wp_query->max_num_pages,
    	'mid_size' => 5,
    	'current' => ($paged ? $paged : 1),
    )); ?></div>
    
    			</div><!-- #content -->
    		</div><!-- #container -->
    
    <?php get_sidebar(); ?>
    <?php get_footer(); ?>
4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは

    wp_reset_query();

    とかは、使わないのですか?

    トピック投稿者 taka_fumi

    (@taka_fumi)

    nobitaさん、ありがとうごさいます。

    wp_reset_query(); はLoopの中で別のクエリーを動かした時、そのクエリーを終わらせて元のクエリーに戻る時に使うもの……だったと記憶しています。(不確かですが)

    入れる場所がよく分からないのですが、たぶん endwhile; endif; の前後、どちらかではないかと試してみましたが、前に入れるとそれまで表示されていたpostの一覧が表示されず、後ろに入れると一覧は表示されますが相変わらず2ページ目以降は「見つかりません」と現象は変わりません。

    他に考えられることがあったら教えていただけないでしょうか。

    こんにちは

    http://ja.forums.wordpress.org/topic/8766?replies=4

    は、どうですか?

    トピック投稿者 taka_fumi

    (@taka_fumi)

    nobitaさん、またの書き込み、ありがとうごさいます。

    86のカテゴリーはまだ未公開でしたので、固定ページのURLを編集して、86のカテゴリーのスタッグと被らないようにしたらみごとに各ページを表示することができるようになりました。

    本当にありがとうございました!!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「固定ベージのナビゲージョンで、同じ構文なのにエラーと正常動作に」には新たに返信することはできません。