概要
get_the_posts_navigation
関数は、アーカイブページ向けのナビゲーションを取得するために使用される WordPress の関数です。この関数は、投稿のナビゲーションを表示し、ユーザーが前のページや次のページ内の投稿に便利にアクセスできるようにします。主に以下のようなシナリオで使われます。
- カテゴリーページで投稿を表示する際
- タグアーカイブページでの投稿ナビゲーション
- 日付別アーカイブページのナビゲーション
- カスタム投稿タイプのリストを表示している際
- 検索結果ページにおける投稿ナビゲーション
- パラメータを伴うカスタムクエリの結果を表示する際
- 最近の投稿のアーカイブページ
- 投稿ページとカスタム投稿の統合表示
構文
get_the_posts_navigation( $args );
パラメータ
- $args (配列) – ナビゲーションリンクを生成する際のオプションの引数が含まれます。主なオプションには次のようなものがあります。
next_text
: 次の投稿へのリンクに表示されるテキスト(デフォルト: “Next”)prev_text
: 前の投稿へのリンクに表示されるテキスト(デフォルト: “Previous”)
戻り値
- 返り値は、ナビゲーションリンクの HTML コードです。表示には
echo
を使うことが一般的です。
関連する関数
使用可能なバージョン
- WordPress 4.3 以降
コアファイルのパス
wp-includes/query.php
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | 〇 |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | 〇 |
wp | |
template_redirect | |
get_header | |
wp_head |
特定のバージョンで非推奨または削除された情報はありません。
サンプルコード
-
基本的な使用例
if ( have_posts() ) { while ( have_posts() ) { the_post(); // 投稿の内容を表示 the_title(); } // ナビゲーションを表示 get_the_posts_navigation(); }
このサンプルコードは、投稿が存在する場合にすべての投稿を表示し、その後で投稿間のナビゲーションを表示します。
-
カスタムテキストの使用
get_the_posts_navigation( array( 'next_text' => '次の投稿', 'prev_text' => '前の投稿', ) );
ここでは、ナビゲーションリンクのテキストをカスタマイズして表示しています。
-
アーカイブページでの利用
if ( is_archive() ) { get_the_posts_navigation(); }
このコードは、アーカイブページにいる場合のみナビゲーションを表示します。
-
条件付きでナビゲーションを表示
if ( get_next_posts_link() || get_previous_posts_link() ) { get_the_posts_navigation(); }
このサンプルでは、次または前の投稿が存在する場合にのみナビゲーションを表示します。
-
カスタムクエリでの使用
$custom_query = new WP_Query( 'post_type=post&posts_per_page=10' ); if ( $custom_query->have_posts() ) { while ( $custom_query->have_posts() ) { $custom_query->the_post(); the_title(); } get_the_posts_navigation(); wp_reset_postdata(); }
このコードは、カスタムクエリで取得した投稿に基づいてナビゲーションを表示します。