MENU

get_home_url()

get_home_url() は、WordPressサイトのホームURLを取得するためのテンプレートタグです。トップページのURLを簡単に取得するため、外部リンクや内部リンクの構築に便利です。

目次

機能の説明

get_home_url() は、WordPressのホームページ(トップページ)のURLを取得する関数です。この関数は、サイトアドレス(home_url)として設定されたURLを取得します。

  • 通常の使用では、https://example.com/ などのサイトのトップURLを返します。
  • サイトのトップページ以外のパスを取得したい場合には、パスを第2引数として渡すことが可能です。
  • また、httpshttp など、URLのスキームも指定可能です。

シンプルなコード例

echo get_home_url();

出力例

https://example.com/

使い方の解説

引数

  1. $blog_id(任意): マルチサイト環境で特定のサイトのURLを取得するためのID。デフォルトはnullで現在のサイト。
  2. $path(任意): URLの後ろに付け加えるパス(例:'about'https://example.com/about)。
  3. $scheme(任意): httphttpsrelative などのスキームを指定可能。デフォルトはnull(WordPressの設定に従う)。

ホームURLを取得する例

echo get_home_url();

このコードは、現在のサイトのホームページのURLを出力します。

特定のパスを指定する(例:aboutページのURL取得)

echo get_home_url(null, 'about');

このコードは、https://example.com/about のように、トップページの後ろにaboutを付けたURLを取得します。

HTTPSスキームを強制的に適用

echo get_home_url(null, '', 'https');

このコードは、強制的にhttpsスキームでホームURLを取得します。

マルチサイト環境で特定サイトのホームURLを取得

echo get_home_url(2); // サイトID 2 のホームURLを取得

サイトIDが 2 のサイトのホームURLを取得します。

一緒に使うことが多い関連タグ

home_url()

home_url() は、現在のサイトのホームURLを取得する関数で、get_home_url()と非常に似ています。

echo home_url('contact');

このコードは、https://example.com/contact のように、トップページにcontactを付けたURLを取得します。

site_url()

site_url() は、WordPressのインストールディレクトリのURLを取得する関数です。

echo site_url();

このコードは、WordPressのインストールURLを出力します(https://example.com/wordpress/ のような形式)。

使用例: home_url()site_url() の違い

echo 'ホームURL: ' . home_url();  // https://example.com/
echo 'サイトURL: ' . site_url();  // https://example.com/wordpress/

home_url() はトップページのURLを取得し、site_url() はWordPressのインストール場所のURLを取得します。

追加情報を取得したい場合

現在のユーザーの状態に基づいて異なるリンクを生成

get_home_url() と条件分岐を組み合わせて、ユーザーの状態に応じたリンクを出力することが可能です。

if (is_user_logged_in()) {
    echo get_home_url(null, 'dashboard');
} else {
    echo get_home_url(null, 'login');
}

このコードは、ログイン状態のユーザーにはdashboardへのリンクを、未ログインのユーザーにはloginページへのリンクを出力します。

site_url() で取得できる情報

echo site_url();

出力できる情報

  • home_url(): サイトのホームURL
  • site_url(): WordPressのインストールURL
  • admin_url(): 管理画面のURL
  • network_home_url(): マルチサイトネットワークのホームURL

想定されるトラブル

取得するURLがhttpで表示される

サイト設定でHTTPSが適用されていない可能性があります。

解決策

WordPressの「一般設定」から、サイトアドレス(URL)をhttpsに変更してください。または、$scheme引数でhttpsを指定します。

echo get_home_url(null, '', 'https');

パスを指定しても正しいURLが表示されない

指定したパスが正しくない、または存在しないページへのリンクを生成している可能性があります。

解決策

リンク先が正しいパスであるか確認し、必要ならカスタムリダイレクトを設定します。

Q&A

get_home_url()site_url() の違いは何ですか?

get_home_url() はサイトのトップページのURLを取得し、site_url() はWordPressがインストールされているディレクトリのURLを取得します。

httpsのURLを取得するにはどうすればいいですか?

get_home_url() の第3引数に 'https' を渡します。

echo get_home_url(null, '', 'https');

マルチサイト環境で特定サイトのURLを取得する方法は?

サイトIDを第1引数に指定します。

echo get_home_url(2);

まとめ

get_home_url() は、WordPressサイトのトップページのURLを取得するための便利なテンプレートタグです。home_url()site_url() と使い分けることで、必要なURLを的確に取得できます。特に、マルチサイト環境での利用や、HTTPS対応が必要な場合には、引数を正しく使うことが重要です。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

This site uses Akismet to reduce spam. Learn how your comment data is processed.

目次