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

概要

wp_is_internal_link関数は、指定されたURLが現在のサイト内のリンクであるかどうかを確認するために使用されます。この関数は、URLに現サイトのホスト名が含まれているか調べる際に有用です。一般的には以下のような機能を実装する際に使用されます。

  1. サイト内リンクのバリデーション
  2. SEO対策の施策
  3. 内部リンクの集計
  4. リダイレクト処理
  5. スパムリンクの検出
  6. ページの互換性チェック
  7. リンクのネットワーク分析
  8. カスタムロジックによるリンク処理

この関数の構文、パラメータ、戻り値、関連する関数およびその他の情報は次のとおりです。

構文

wp_is_internal_link( $url );

パラメータ

  • $url (string) – チェック対象のURL。

戻り値

  • (bool) – 指定されたURLが内部リンクの場合はtrue、そうでない場合はfalseを返します。

関連する関数

使用可能なバージョン

wp_is_internal_link関数は、WordPress 4.5以降で使用できます。

コアファイルのパス

wp-includes/functions.php

サンプルコード

サンプルコード1

$url = "https://example.com/sample-page";
if ( wp_is_internal_link( $url ) ) {
    echo "これは内部リンクです。";
} else {
    echo "これは外部リンクです。";
}

説明:指定したURLが内部リンクであるかどうかを判定し、その結果を出力します。

サンプルコード2

$url = get_permalink();
if ( wp_is_internal_link( $url ) ) {
    // 内部リンクの処理
    log_internal_link( $url );
}

説明:現在の投稿のパーマリンクが内部リンクである場合、特定の処理(例:ロギング)を実行します。

サンプルコード3

$links = [
    "https://example.com/about",
    "https://another-site.com",
    "https://example.com/contact"
];

foreach ( $links as $link ) {
    if ( wp_is_internal_link( $link ) ) {
        echo "{$link} は内部リンクです。<br>";
    }
}

説明:リンクのリストをループして、各リンクが内部リンクかどうかをチェックし、その結果を表示します。

サンプルコード4

function check_internal_links( $content ) {
    preg_match_all( '/https?://[^s]+/', $content, $matches );
    foreach ( $matches[0] as $url ) {
        if ( wp_is_internal_link( $url ) ) {
            // 追加の処理
        }
    }
}

説明:コンテンツ内の全てのURLを検出し、それぞれが内部リンクかをチェックします。

サンプルコード5

function is_internal_link_example( $link ) {
    return wp_is_internal_link( $link ) ? '内部リンク' : '外部リンク';
}

echo is_internal_link_example( "https://example.com/test-page" );

説明:渡されたリンクが内部リンクか外部リンクかを判定し、その結果を返す関数の例です。

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

アクション 使用可能性
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

非推奨又は削除されたWordPressバージョン

現在のところ、wp_is_internal_linkは非推奨や削除されたバージョンはありません。

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


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