WordPressサイトのトップページのリンク。 home_url と site_url どっちを使えばいいのっ !?

ロゴマークや【HOME】メニューにらトップページへのリンクURLを貼り付ける場合、絶対パスで書くことは無いと思うけど、ヘッダーやフッターからのリンクは、開いているページのパスに影響されてしまうので、相対パスってわけにもいかない。

もちろんWordPressには、それを呼び出すための関数が用意されているのだけど、似たのが2つあって、ときどき悩む。

 

home_url() と site_url()

前者はホームのURLで、後者はサイトのURLです。って同じじゃん。

 

ぢゃ、なにが違うのかというと…

 

WordPress本体のある場所と、表示するためのURLを同じにしているかどうかで違いが出ます。

管理画面 > 設定 > 一般 の設定が以下のようにどたらも同じになっている場合は、home_url() も site_url() も同じURLを返します。

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-11-08-5-50-47

 

ところが、これを別にしている場合は、2つの関数の返す値がが違ってきます。

 

home_url() は、表示するためのURL
※ http://www.eordpresssite.com/など

site_url()は、WordPress本体が置かれているURL
※ http://www.eordpresssite.com/wp/など

 

つまり、通常の外(フロントエンド)からたどるリンクは、home_url() を使っておけば間違いないってことですね。