概要
get_page_link
関数は、固定ページのパーマリンクURLを取得するために使用されます。この関数は、特定の固定ページのリンクを取得する際に非常に便利で、以下のようなシナリオでよく使われます。
- サイト内の特定の固定ページへのリンクを作成する。
- ナビゲーションメニューにカスタムリンクを追加する際に使用する。
- 固定ページのURLを動的に生成して、特定の条件下でのリダイレクト処理に利用する。
- カスタムテンプレート内での特定ページのリンクを表示する。
- フィルターフックを用いて固定ページのリンクをカスタマイズする。
- SEO対策の一環として、特定ページへの内部リンクを強化する。
- プラグインの設定ページへのリンクを表示する。
- ユーザー向けのダッシュボードやウィジェットに必要なリンクを生成する。
構文
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
関数は特定の計画されたバージョンで非推奨や削除されたことはありません。