[wp]サイト内URLを直接書く場合の方法と注意

個人的に罠っぽい感じ。

前提

以下、2つのWPがあったとする。それで話を進める。

  • https://blog.megefeps.info/
  • https://megefeps.info/blog/

最適解

こんな感じ。

<a href="<?php echo esc_url( home_url( '/' )); ?>">
https://blog.megefeps.info/
https://megefeps.info/blog/

<a href="<?php echo esc_url( home_url( '/about/' )); ?>">
https://blog.megefeps.info/about/
https://megefeps.info/blog/about/

悪くないけど良くもない例

<a href="/">
https://blog.megefeps.info/
https://megefeps.info/

<a href="/about/">
https://blog.megefeps.info/about/
https://megefeps.info/about/

「/」から書き始めるとドメイン直下にくっついちゃう。だから、サブディレクトリ以下にインストールしてたら都合が悪い。

とはいえ普段はドメイン直下で設置することが多いのでこれで済ませることも多い。書く手間も少なくて助かる。なので、ついうっかりが発生すると面倒くさいことになる。

一応足掻けるけど駄目な例

<a href="./">
https://blog.megefeps.info/
https://megefeps.info/blog/

<a href="./about/">
https://blog.megefeps.info/about/
https://megefeps.info/blog/about/

「./」で書き始めると、現在の階層に追加することになる。

サイト内に階層が無い構成なら問題ないという、つまりそういうこと。作ったときはそうであっても恒久的にはどうか。多分無理。良くない。階層別に調整するくらいなら初めからwpタグを使ったほうが早い。

コメント

タイトルとURLをコピーしました