サポート » プラグイン » KtaiStyleで「次へ」がうまく作動しない、条件分岐が原因か?

  • KtaiStyle1.8を使用しています。
    「green」というテーマを使っております。

    表示記事をカテゴリー指定したいので、

    <?php query_posts('cat=3,4,16,17,18 & order=desc'); ?>

    を追加したら、

    ks_posts_nav_link
    ks_posts_nav_dropdown

    が作動しなくなりました。

    ループの後に

    <?php wp_reset_query(); ?>

    などを入れてみたりもしましたが、ダメでした。

    アドバイスお願いします。

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

    (@bjifa)

    出力条件が複数あったからでしょうか?

    このぺーじでは、

    1つ目に
    ☆トピックス☆
    query_posts('cat=20')
    
    2つ目に
    ☆最新記事☆
    query_posts('cat=3,4,5)

    と二つの出力条件を書いておりました。

    それで、2つ目の出力条件を消したら、
    ks_posts_nav_link
    がうまく作動しました。

    しかし、2つ目の
    query_posts(‘cat=3,4,5)
    も条件指定したいのですがどのようにしたらよろしいのでしょうか?

    もともと、query_postsは1ページ内に複数使ってはいけないものなのでしょうか?

    query_posts は「ちょっと別のループ使いますね」なので
    wp_reset_query で閉じて、何もなかったかのように元に戻してあげます。

    query_posts('cat=20')
     :
    wp_reset_query()
    
    query_posts('cat=3,4,5)
     :
    wp_reset_query()

    ks_posts_nav_link
    がうまく作動しました。

    の「うまく」が「cat=20の状態で ks_posts_nav_link」ということなら、
    ks_posts_nav_link の前に query_posts('cat=20')
    とかすれば良い気がします(未検証)。

    ようは、ks_posts_nav_link を「うまく」動かしたい状態にしておけば OK です。

    トピック投稿者 bjifa

    (@bjifa)

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

    しかし、残念ながら、

    query_posts('cat=20')
     :
    wp_reset_query()
    
    query_posts('cat=3,4,5)
     :
    wp_reset_query()

    は、だめでした。

    ks_posts_nav_link の前に query_posts('cat=20')
    とかすれば良い気がします(未検証)。

    そのようにしているのですが、出力条件が2つはいっているとだめなようです。
    そういう仕様なんですかね?

    query_posts がいくつあっても何も問題ないですよー
    「うまく作動」「ダメ」では伝わり難いので
    より具体的な説明があると回答し易いです。
    「リンクが表示されない」とか「リンク先がこうなって欲しいけどこうなってる」とか。

    不具合が発生する最小限の完全なコードを提示するのが一番早いです。

    トピック投稿者 bjifa

    (@bjifa)

    kzさん、失礼しました。

    以下のように、条件表示タグが2つあると、次へを押しても同じ記事のタイトルが表示されてしまいします。

    <div align="center">◆◆トピックス◆◆</div>
    <?php query_posts('cat=20 & order=desc'); ?>
    <?php
    	if (ks_is_front()) {
    		?><h2><?php _e('', 'ktai_style'); ?></h2><?php
    	} else {
    		ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
    	} ?>
    	<dl>
    	<?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
    		<dt><br /><div style="<?php echo $ks_settings['title_style']; ?>"><?php
    		ks_ordered_link(array(
    			'count' => $count,
    			'max' => $max,
    			'link' => get_permalink(),
    			'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
    			'hide_over_max' => true,
    		)); ?></div>
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
    		<font size="-1"><?php ks_comments_link();?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
    		<font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font></dt>
    	<?php endfor; ?>
    	<?php wp_reset_query(); ?>
    	</dl>
    <hr color="<?php echo $ks_settings['hr_color']; ?>" />
    <!--記事-->
    <div align="center">◆◆最新記事◆◆</div>
    <?php query_posts('cat=3,4,16,17,18 & order=desc'); ?>
    <?php if (have_posts()) :
    	if (ks_is_front()) {
    		?><h2><?php _e('', 'ktai_style'); ?></h2><?php
    	} else {
    		ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
    	} ?>
    	<dl>
    	<?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
    		<dt><br /><div style="<?php echo $ks_settings['title_style']; ?>"><?php
    		ks_ordered_link(array(
    			'count' => $count,
    			'max' => $max,
    			'link' => get_permalink(),
    			'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
    			'hide_over_max' => true,
    		)); ?></div>
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
    		<font size="-1"><?php ks_comments_link();?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>">著者:<?php the_author(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
    		<font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font></dt>
    	<?php endfor; ?>
    	<?php wp_reset_query(); ?>
    	</dl>

    ちょっと、長くなって申し訳ないのですが、
    これをたとえば、二つ目の条件

    <?php query_posts('cat=3,4,16,17,18 & order=desc'); ?>

    を削除すると、「次へ」で正常にいきます。

    ks_posts_nav_link
    ks_posts_nav_dropdown
    の記述が無いのでコードが途中で切れてる様子ですが、とりあえず

    <?php query_posts('cat=3,4,16,17,18 & order=desc'); ?>
    <?php if (have_posts()) :

    の endif が見当たらないところとか。

    トピック投稿者 bjifa

    (@bjifa)

    すみません、もう一度書きます。

    <!--トピックス-->
    <div align="center">◆◆トピックス◆◆</div>
    <?php query_posts('cat=20 & order=desc'); ?>
    <?php if (have_posts()) :
    	if (ks_is_front()) {
    		?><h2><?php _e('', 'ktai_style'); ?></h2><?php
    	} else {
    		ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
    	} ?>
    	<dl>
    	<?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
    		<dt><br /><div style="<?php echo $ks_settings['title_style']; ?>"><?php
    		ks_ordered_link(array(
    			'count' => $count,
    			'max' => $max,
    			'link' => get_permalink(),
    			'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
    			'hide_over_max' => true,
    		)); ?></div>
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
    		<font size="-1"><?php ks_comments_link();?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
    		<font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font></dt>
    	<?php endfor; endif; ?>
    	<?php wp_reset_query(); ?>
    	</dl>
    <hr color="<?php echo $ks_settings['hr_color']; ?>" />
    <!--記事-->
    <div align="center">◆◆最新記事◆◆</div>
    <?php query_posts('cat=3,4,16,17,18 & order=desc'); ?>
    <?php if (have_posts()) :
    	if (ks_is_front()) {
    		?><h2><?php _e('', 'ktai_style'); ?></h2><?php
    	} else {
    		ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
    	} ?>
    	<dl>
    	<?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
    		<dt><br /><div style="<?php echo $ks_settings['title_style']; ?>"><?php
    		ks_ordered_link(array(
    			'count' => $count,
    			'max' => $max,
    			'link' => get_permalink(),
    			'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
    			'hide_over_max' => true,
    		)); ?></div>
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
    		<font size="-1"><?php ks_comments_link();?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
    		<font size="-1" color="<?php echo $ks_settings['time_color']; ?>">著者:<?php the_author(); ?></font><br />
    		<font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
    		<font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font></dt>
    	<?php endfor; ?>
    
    	</dl>
    
    <!--次へ-->
    <div align="center">
    <?php
    ks_posts_nav_link();
    ks_posts_nav_dropdown(array('before' => '<br />', 'min_pages' => 3));
    ?>
    </div>
    <?php else: ?>
    <h2><?php _e('Not Found', 'ktai_style'); ?></h2>
    <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
    <?php endif; ?>
    <?php wp_reset_query(); ?>

    これでも、「次へ」で行かず同じタイトルでした。

    各種ブロックは正しく入れ子になるように気をつけると良いです。

    <!--トピックス-->
    <div align="center">◆◆トピックス◆◆</div>
    <?php
    $paged = get_query_var('paged') ? get_query_var('paged') : 1;
    query_posts('cat=5 & order=desc & paged=' . $paged);
      if (have_posts()) :
        if (ks_is_front()) {
          ?><h2><?php _e('', 'ktai_style'); ?></h2><?php
        } else {
          ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
        } ?>
        <dl>
          <?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
            <dt><br />
              <div style="<?php echo $ks_settings['title_style']; ?>">
    	    <?php
                ks_ordered_link(array(
                  'count' => $count,
                  'max' => $max,
                  'link' => get_permalink(),
                  'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
                  'hide_over_max' => true,
                ));
                ?>
              </div>
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
              <font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
              <font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
              <font size="-1"><?php ks_comments_link();?></font><br />
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
              <font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font>
            </dt>
          <?php endfor; ?>
          <div align="center">
            <?php
            ks_posts_nav_link();
            ks_posts_nav_dropdown(array('before' => '<br />', 'min_pages' => 3));
            ?>
          </div>
        </dl>
      <?php else: ?>
        <h2><?php _e('Not Found', 'ktai_style'); ?></h2>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
      <?php endif; ?>
    <?php wp_reset_query(); ?>
    <hr color="<?php echo $ks_settings['hr_color']; ?>" />
    
    <!--記事-->
    <div align="center">◆◆最新記事◆◆</div>
    <?php
    query_posts('cat=1,3,4 & order=desc & paged=' . $paged);
      if (have_posts()) :
        if (ks_is_front()) {
          ?><h2><?php _e('', 'ktai_style'); ?></h2><?php
        } else {
          ks_pagenum('<div style="' . $ks_settings['pagenum_style'] . '"><h2>', '</h2></div>');
        } ?>
        <dl>
          <?php for ($count = 1; have_posts() ; $count++) : the_post(); ?>
    	<dt><br />
              <div style="<?php echo $ks_settings['title_style']; ?>">
    	    <?php
    	    ks_ordered_link(array(
                  'count' => $count,
                  'max' => $max,
                  'link' => get_permalink(),
                  'label' => '<span style="' . $ks_settings['title_style'] . '">' . get_the_title() . '</span>',
                  'hide_over_max' => true,
                ));
                ?>
              </div>
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
              <font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_category(); ?></font><br />
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
              <font size="-1" color="<?php echo $ks_settings['time_color']; ?>"><?php ks_time(); ?></font>
              <font size="-1"><?php ks_comments_link();?></font><br />
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('|-', 'ktai_style'); ?></font>
              <font size="-1" color="<?php echo $ks_settings['time_color']; ?>">著者:<?php the_author(); ?></font><br />
              <font size="-1" color="<?php echo $ks_settings['list_color']; ?>"><?php _e('+-', 'ktai_style'); ?></font>
              <font color="#666666" size="-1"><?php echo ks_excerpt(40, false); ?></font>
            </dt>
          <?php endfor; ?>
          <div align="center">
            <?php
            ks_posts_nav_link();
            ks_posts_nav_dropdown(array('before' => '<br />', 'min_pages' => 3));
            ?>
          </div>
        </dl>
      <?php else: ?>
        <h2><?php _e('Not Found', 'ktai_style'); ?></h2>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
      <?php endif; ?>
    <?php wp_reset_query(); ?>

    トピック投稿者 bjifa

    (@bjifa)

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

    じっくり見直してみます。

9件の返信を表示中 - 1 - 9件目 (全9件中)
  • トピック「KtaiStyleで「次へ」がうまく作動しない、条件分岐が原因か?」には新たに返信することはできません。