サポート » テーマ » 著者ページ(author.php)の記事一覧にページ送りは可能ですか?

  • 著者ごとに記事を表示させたかったため、以下のパーマリンク設定にし、ページ送りにはプラグイン「WP-PageNavi」を利用しました。
    パーマリンク設定:/%author%/%category%/%postname%/
    プラグイン:WP-PageNavi

    ページ送りを表示させたところ、リンク先はうまく吐き出しているようなのですが、リライトで他のページになってしまいます。
    著者「aaa」の記事一覧を表示している例になります。
    著者ページ:ttp://domain.com/aaa/
    WP-PageNaviの吐き出したURL:ttp://domain.com/aaa/page/2/
    実際に飛んだ後のURL:ttp://domain.com/bbb/カテゴリー/記事名/

    結果として違う著者の特定の記事へリライトしてしまう状態です。自力でページ番号をGETなどして「offset」で設定するしかないのでしょうか。
    もうだいぶ構築してしまったので、パーマリンク設定はこのままでいきたいところです。

    <?php
    $paged = get_query_var('paged');
    $args = array(
    	'author' => $user_data->ID,
    	'paged' => $paged);
    $the_query = new WP_Query($args);
    if($post) : while ( $the_query->have_posts() ) : $the_query->the_post();
    ?>
    
    <?php endwhile; ?>
    <p id="PageNavi"><?php wp_pagenavi(array('query' => $the_query)); ?></p>
    <?php endif;  wp_reset_query(); ?>
1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック投稿者 tetch1987

    (@tetch1987)

    以下のコードを初心者ながら自作したところページ送りの部分だけ動きはしたのですが、WPの関数を利用した方法があればそちらを利用したいと考えています。また、WP-PageNaviの吐き出す「1」「2」…のような表記をさせるにはもっと考えなくてはいけません。

    <?php
    $PageNum = 0;
    $ParPosts = 5;
    if(is_numeric($_GET['pnum']) && isset($_GET['pnum'])){
    	$PageNum = htmlspecialchars($_GET['pnum']);
    	$PageNum = addslashes($PageNum);
    }
    $pnum_prev = $PageNum-1;
    $pnum_next = $PageNum+1;
    $DispPost = $PageNum*$ParPosts;
    $this_author = $user_data->user_login;
    
    $paged = get_query_var('paged');
    $args = array(
    	'author' => $user_data->ID,
    	'posts_per_page' => 5,
    	'offset' => $DispPost,
    	'paged' => $paged);
    $the_query = new WP_Query($args);
    $PageMax = $the_query->found_posts;
    if($post) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    <!--
    
    ループ内の記述
    
    -->
    <?php endwhile; ?>
    <p id="PageNavigation">
    <?php
    $MaxPages = $PageMax/$ParPosts;
    if($pnum_prev == 0) : ?>
    <a href="http://domain.com/<?php echo $this_author; ?>/">前の記事</a>
    <?php elseif($pnum_prev > 0) : ?>
    <a href="http://domain.com/<?php echo $this_author; ?>/?pnum=<?php echo $pnum_prev; ?>">前の記事</a>
    <?php endif; ?>
     |
    <?php
    if($pnum_next < $MaxPages) : ?>
    <a href="http://domain.com/<?php echo $this_author; ?>/?pnum=<?php echo $pnum_next; ?>">次の記事</a>
    <?php endif; ?></p>
    <?php endif; wp_reset_query(); ?>

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「著者ページ(author.php)の記事一覧にページ送りは可能ですか?」には新たに返信することはできません。