WordPress

WordPressのサブループをWP-PageNaviプラグインを使ってページ送りさせる方法

記事内に商品プロモーションを含む場合があります

WordPressの管理画面で作成した固定ページをブログの記事の一覧ページにしたり、カスタム投稿タイプの一覧ページにしたりすることってよくあると思います。その場合、通常はWP_Queryを使って引数を渡してやることでサブループを生成して目的の記事のリストなどを作成することになります。

そのような場合に、記事のリストを表示させる固定ページにページネーションを追加したい場合、便利なプラグイン「WP-PageNavi」という有名なプラグインがありますよね。今回はそのWP-PageNaviとサブループの連携方法について解説します。

まず、WP_Queryを使用して簡単なサブループを作成します。

<?php
    $paged = get_query_var('paged') ? get_query_var('paged') : 1;
    $my_query = new WP_Query(array(
        'paged' => $paged ,
        'posts_per_page' => 10
    ));
?>
<?php if($my_query->have_posts()): while($my_query->have_posts()): $my_query->the_post(); ?>
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><br>
<?php endwhile;endif;
    wp_reset_postdata();
?>

WordPressで企業サイトを構築している人なら見慣れたコードだと思います。
今回はこのコードにwp-pagenaviを使用したページネーションを導入します。

通常、wp-pagenaviを使用するときは、

wp_pagenavi();

だけで動作しますが、これはメインクエリをページネーションさせたい時の書き方となります。

WP_Queryを使用したサブループに対してwp-pagenaviを使用する場合は関数にクエリをパラメータとして渡してやる必要があります。今回の場合ですと、こんな感じになります。

wp_pagenavi(array('query'=>$my_query));

このようにwp_pagenavi関数にWP_Queryで作成したクエリを引数として渡してやります。

実際に運営中のブログやローカルで実験してみたらわかると思いますが、最初の例「wp_pagenavi();」だけではサブループのページネーションは表示されないはずです。

今回のサンプルで完成したコードは以下の通りです。

<?php
    $paged = get_query_var('paged') ? get_query_var('paged') : 1;
    $my_query = new WP_Query(array(
        'paged' => $paged ,
        'posts_per_page' => 10
    ));
?>
<?php if($my_query->have_posts()): while($my_query->have_posts()): $my_query->the_post(); ?>
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><br>
<?php endwhile;endif;
    wp_pagenavi(array('query'=>$my_query));
    wp_reset_postdata();
?>

11行目に

wp_pagenavi(array('query'=>$my_query));

を追加しました。

これで固定ページに作成した記事のタイトルのリストにページネーションを追加することができました。お試しあれ。

■参考ページ
http://scribu.net/wordpress/wp-pagenavi/wpn-2-74.html

===

コレカラウェブではWebライティングのお仕事を承っております。豊富な実務経験や国家資格を生かして、SEOに強い完全オリジナルな文章を作成いたします。公式noteにてポートフォリオを掲載していますので、こちらも併せてご覧ください。ご相談・ご依頼はお問い合わせページからお願いいたします!

「いいね!」と思ったら、クリックお願いいたします<m(__)m>
にほんブログ村 小遣いブログ Webライター・ブログライターへ にほんブログ村 IT技術ブログ SEO・SEMへ にほんブログ村 小遣いブログ ブログアフィリエイトへ
ABOUT ME
らぐち
コレカラブログ管理人のらぐちです。コレカラウェブという屋号でフリーランスとして、Webライティング・SEOコンサルティング・メディア運営・障害者支援のお仕事を一貫して承ってきました。このブログではコレカラウェブのお仕事で得たノウハウやテクニックを詳しく紹介しています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA