【初心者向け・目的別】ワードプレスでURLやパスを取得する関数まとめ

2022年5月24日2022年5月25日

WordPressのテンプレートをいじっていると使用する事の多い、URLや各ディレクトリまでのパスを取得するためのワードプレス独自関数テンプレートタグなどとも呼びますが、今回はそれらの中でよく使用するものをまとめます。

テンプレート内でURLやパスを直書きしたりすると、当然ながらURLが変更になった時などにエライ事になります。テスト用のサーバーで制作して本番サーバーに移設…なんて場合も修正が必要になります。今回ご紹介するような関数を使用しておけば、そういった場合も問題なく機能しますので安心です。

今回はワードプレス初心者の方向けの記事になっています。あまり小難しい事は書いていませんので、各関数について詳しく知りたい方はCODEXなどで調べてみてください。

サイトトップのURLを取得

まずはサイトのトップページのURLを取得する関数です。「home_url」という関数を使用します。

「home_url」は、管理画面の「設定」-> 「一般設定」の中の「サイトアドレス」に設定したURLを取得できます。

 

末尾にスラッシュを付けて取得したい場合は以下のように書きます。

念のためですが、home_urlを使用してトップページへのリンクを作成する場合は

といった感じで使用します。

このブログの場合、上の例ですと「https://whitewood-hp.com/web-tips/」へのリンクができます。末尾スラッシュ無しにしたければ、カッコ内の引数を空にしてやればOKという事ですね。

投稿一覧ページのURLを取得

管理画面メニューの「設定」-> 「表示設定」で設定したブログページのURLを取得できる関数が…と言いたいところですが、私の記憶の限りでは関数がありません。

この場合は以下のように取得しましょう。

また、バージョン4.5以降では「get_post_type_archive_link」という投稿タイプアーカイブのURLを取得できる関数が登場しました。Wordpressのバージョンによってはこちらも使用できます。

この関数は引数に投稿タイプ名を指定して使用しますので、以下のようにすると、ワードプレスのデフォルトの「投稿」の一覧ページURLが取得できます。

上のケースでは、ワードプレスにデフォルトで存在するブログの投稿タイプ名が「post」なので、引数に「post」と入れて使用しましたが、カスタム投稿タイプを使用している場合は、その名前を入れればカスタム投稿アーカイブのURLも取得できます。

プライバシーポリシーページのURLを取得

ここでいうプライバシーポリシーページというのは、管理画面メニューの「設定」-> 「プライバシー」で設定してある、プライバシーポリシーページです。ただプライバシーポリシーを記載したページという事ではありません。

この場合「get_privacy_policy_url」という関数が利用できます。

特定のページのURLを取得

この場合は「get_permalink」が使用できます。

上のようにURLを取得したい投稿や固定ページのIDを引数で指定して使いましょう。この場合はIDが45の投稿のURLが取得できます。

管理画面のURLを取得

管理画面のURLを取得するには「admin_url」を使用します。

 

テーマディレクトリまでのパスを取得

使用中のテーマのディレクトリへのパスを取得するには「get_template_directory_uri」と「get_stylesheet_directory_uri」の2つが使えます。テーマディレクトリに置いたファイルを読み込んだりする際は、これらを使用しましょう。

どちらを使用するかですが、基本的に子テーマを使用していない場合(1つのテーマのみ)はどちらも同じでどちらを使用しても大丈夫です。テーマディレクトリまでのパスが取得できます。

親テーマ+子テーマといったテーマ構成の場合は取得できるパスが違ってきますので注意が必要です。

「get_template_directory_uri」は親テーマディレクトリ、「get_stylesheet_directory_uri」は子テーマディレクトリが取得できます。

また、あんまり使われない気がするのですが、あらかじめ定義された定数もあります。「TEMPLATEPATH」と「STYLESHEETPATH」がそれで、こちらでも同様のパスが得られます。

WordPressのバージョンが4.7以降の場合は「get_theme_file_uri」という関数も使用できます。こちらは「get_stylesheet_directory_uri」と同様に子テーマがあればそちら、なければ普通にテーマディレクトリを取得してくれます。
「使い分けがややこしい…」「親テーマディレクトリなんか必要ねーよ!」という方はこちらの新しい関数を利用しても良いと思います。

最後に

目的にあったものは見つかったでしょうか。

他にも色々ありますが、今回はよく使うものだけピックアップしてご紹介しました。個人的に毎日のように使うのはhome_urlとget_stylesheet_directory_uriあたりでしょうか。命名規則がけっこうキッチリしているので、使っていれば覚えてしまうと思います。

ちなみにどれも取得するためのものなので、出力する際はechoとかprintとかして下さいね。

ではまた!

関連のある記事

現在の投稿のカテゴリー情報をリンク無しで取得&表示する方法【ワードプレス】

現在の投稿のカテゴリー情報をリンク無しで取得&表示する方法【ワードプレス】

記事を読む

the_title_attributeの使い方と引数を入れたら動かない時のメモ【ワードプレス】

the_title_attributeの使い方と引数を入れたら動かない時のメモ【ワードプレス】

記事を読む

the_category()を使ってリンク無しでカテゴリーを表示する方法【WordPress】

the_category()を使ってリンク無しでカテゴリーを表示する方法【WordPress】

記事を読む

the_category()の使い方とセパレーター無しで出力する方法【ワードプレス】

the_category()の使い方とセパレーター無しで出力する方法【ワードプレス】

記事を読む

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

目次へ