wp_is_internal_link()


WordPressのwp_is_internal_link()関数は、指定されたURLが内部リンクかどうかを判定するために使用されます。この関数は、URLが現在のサイトのドメインに属しているかどうかをチェックします。

構文

wp_is_internal_link( string $url );
  • $url(string) — チェックするURLを指定します。

例1: 内部リンクかどうかを判定する

この例では、指定されたURLが内部リンクかどうかを判定します。

<?php if ( wp_is_internal_link( 'https://example.com/about' ) ) { echo 'これは内部リンクです。'; } else { echo 'これは外部リンクです。'; } ?>

例2: 現在の投稿のURLが内部リンクかどうかを判定する

この例では、現在の投稿のURLが内部リンクかどうかを判定します。

<?php $current_url = get_permalink(); if ( wp_is_internal_link( $current_url ) ) { echo 'この投稿は内部リンクです。'; } else { echo 'この投稿は外部リンクです。'; } ?>

例3: カスタムURLが内部リンクかどうかを判定する

この例では、カスタムURLが内部リンクかどうかを判定します。

<?php $custom_url = 'https://example.com/contact'; if ( wp_is_internal_link( $custom_url ) ) { echo 'このURLは内部リンクです。'; } else { echo 'このURLは外部リンクです。'; } ?>

例4: 外部リンクの場合に警告を表示する

この例では、URLが外部リンクの場合に警告を表示します。

<?php $url = 'https://external-site.com'; if ( !wp_is_internal_link( $url ) ) { echo '警告: これは外部リンクです。'; } ?>

例5: 内部リンクの場合に特定のクラスを追加する

この例では、URLが内部リンクの場合に特定のクラスを追加します。

<?php $url = 'https://example.com/blog'; $class = wp_is_internal_link( $url ) ? 'internal-link' : 'external-link'; echo '<a href="' . $url . '" class="' . $class . '">リンク</a>'; ?>

例6: 内部リンクの場合にリダイレクトを行う

この例では、URLが内部リンクの場合にリダイレクトを行います。

<?php $url = 'https://example.com/redirect'; if ( wp_is_internal_link( $url ) ) { wp_redirect( $url ); exit; } ?>

例7: 内部リンクの場合にメタデータを追加する

この例では、URLが内部リンクの場合にメタデータを追加します。

<?php $url = 'https://example.com/page'; if ( wp_is_internal_link( $url ) ) { update_post_meta( get_the_ID(), 'internal_link', $url ); } ?>

注意点

  • この関数は、URLが現在のサイトのドメインに属しているかどうかをチェックしますが、サブドメインや別のパスが含まれている場合も内部リンクと見なされます。
  • URLが相対パスの場合、この関数は正しく動作しない可能性があります。

関連機能: