ワードプレスのget_page_link関数の使用方法・解説

概要

get_page_link関数は、固定ページのパーマリンクURLを取得するために使用されます。この関数は、特定の固定ページのリンクを取得する際に非常に便利で、以下のようなシナリオでよく使われます。

  1. サイト内の特定の固定ページへのリンクを作成する。
  2. ナビゲーションメニューにカスタムリンクを追加する際に使用する。
  3. 固定ページのURLを動的に生成して、特定の条件下でのリダイレクト処理に利用する。
  4. カスタムテンプレート内での特定ページのリンクを表示する。
  5. フィルターフックを用いて固定ページのリンクをカスタマイズする。
  6. SEO対策の一環として、特定ページへの内部リンクを強化する。
  7. プラグインの設定ページへのリンクを表示する。
  8. ユーザー向けのダッシュボードやウィジェットに必要なリンクを生成する。

構文

string get_page_link( int $page_id = 0 )

パラメータ

  • $page_id (int): リンクを取得したい固定ページのID。省略すると、現在のページのIDが使用されます。

戻り値

  • string: 指定された固定ページのパーマリンクURL。

関連する関数

使用可能なバージョン

get_page_link関数は、WordPress 1.5以降で利用可能です。

コアファイルのパス

wp-includes/link-template.php

サンプルコード

サンプルコード1: 固定ページのリンク取得

$page_id = 42; // 固定ページのID
$page_link = get_page_link($page_id);
echo $page_link; // 固定ページのURLを表示

このコードは、IDが42の固定ページのパーマリンクURLを取得し、それを表示します。

サンプルコード2: 現在のページのリンク取得

$current_page_link = get_page_link();
echo $current_page_link; // 現在の固定ページのURLを表示

このコードは、現在のページのパーマリンクURLを取得し、表示します。

サンプルコード3: リダイレクト処理

$page_id = 123; // リダイレクトする固定ページのID
$page_link = get_page_link($page_id);
wp_redirect($page_link);
exit;

このコードは、特定の固定ページへのリダイレクトを行います。

サンプルコード4: メニューへのリンク追加

function custom_menu_item($items) {
    $page_link = get_page_link(75); // IDが75のページリンクを取得
    $items .= '<li><a href="' . esc_url($page_link) . '">カスタムページ</a></li>';
    return $items;
}
add_filter('wp_nav_menu_items', 'custom_menu_item');

このコードは、ナビゲーションメニューにカスタムページへのリンクを追加します。

サンプルコード5: フィルターフックでのURLカスタマイズ

function modify_page_link($link, $id) {
    if ($id == 50) { // IDが50のページの場合
        $link .= '?ref=rss'; // URLにクエリを追加
    }
    return $link;
}
add_filter('get_page_link', 'modify_page_link', 10, 2);

このコードは、特定の固定ページのURLにカスタムクエリを追加します。

この関数のアクションでの使用可能性

アクション 使用例
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

get_page_link関数は上記のアクションで使用例はないため、すべてのセルが空となっています。

get_page_link関数は特定の計画されたバージョンで非推奨や削除されたことはありません。

この関数について質問する


上の計算式の答えを入力してください