WEMOブログ向けWordPressテーマ「SWELL」をリリースしました!コピペで終わらない、本質的な理解を目指した知識整理のメモをお届け。2019.08.16WordPressでは特定のページまでのパーマリンク・URLを取得するためのテンプレートタグが複数あってややこしいので、各関数の役割や使い方を簡単にまとめてみました。ちなみに、このメモは以下の延長線上の話になります。あわせて読みたいもう迷わんよ。WordPressで固定ページや投稿ページの基本情報を取得する方法まとめ【投稿タイプ・カスタ...WordPressをいじっていると、投稿ページや固定ページなど、そのページが持つ情報を取得するというのは日常茶飯事かと思います。投稿・固定ページのURLを取得・出力するテンプレートタグ(とりあえずこれを覚えておけばいい)投稿・固定ページなど、通常のページへのURLを取得・出力する関数についてです。取得:get_permalink()取得:get_the_permalink()取得:post_permalink()*非推奨!出力:the_permalink()それぞれ説明していきます。URL全体を取得できます。ページへのリンクに用いるならこの関数を使用すればいいと思います。)引数は2つあります。それぞれの引数の説明は以下の表をご覧ください。現在の投稿ID$leavename投稿名あるいは固定ページ名(%postname%)を保持するかどうか。なく構造的なリンクを返します。http://www.example.com/%postname%おそらく第2引数はほとんど使うことなはないかと思います。エイリアス(同じ)関数です。引数の種類や使用方法もget_permalink()と全く同じです。非推奨になっているので注意です。the_permalink()get_permalink()で取得できるURLと同じものを出力してくれます。);引数はひとつです。投稿オブジェクト」を指定します。$postやget_post()で取得できるオブジェクトの'guid'パラメータでも取得可能。投稿オブジェクトの中にも、URLの情報が保存されています。いうキーで取得できます。guidしかし、この方法で取得できるURLは先述したget_permalink()などのテンプレートタグで取得できるURLとは形式が異なります。http://example.com/?post_id=15のような、パーマリンク設定が反映される前段階のデフォルト形式のURLです。私たちがサイトへアクセスする時に使用するURLはパーマリンク設定で見た目が整えられたものですが、裏側ではWordPressは上記のようなデフォルト形式のURLへアクセスしています。(表現が適切ではないかもしれませんが。)WordPress用のURLか人に見せる用のURLかの違いとでも言いましょうか。URLバーに打ち込んでも問題なくアクセスできます。guid'でURLを取得することを推奨しているサイトは見かけなかったので、使用しないほうが無難かもしれません。投稿ページ専用・固定ページ専用のテンプレートタグ(覚えなくていい)投稿ページのURLを取得するための関数、固定ページのURLを取得するための関数というのも用意されています。これらを使うのであれば冒頭のget_permalink()で十分です。以外ほぼ使わないので)。すると以下の様な形式のURLが出力されました。http://wemo.tech/?post_type=post&p=1234URLバーに表示されているものとは形式が異なるものが出力されました。);先ほどと同じく、引数に関しては割愛。get_page_link();すると、以下の様な形式のURLが出力されました。http://wemo.tech/test_pageこちらは、URLバーに表示されているものと同じものが出力されました。考察get_post_permalink()は取得できるURLの形式はパーマリンク設定が適用される前の段階のデフォルトの形式のようです。$post->guidで取得できるものと同様の形式ですね。それぞれ投稿ページ専用、固定ページ専用に用意された関数のようですが、どちらも投稿・固定ページの両方で問題なく動作しました。取得するための関数も用意されているようなので、メモしておきます。get_page_uri()「url」ではなく、「uri」であることに注意してください。投稿オブジェクト」を指定します。親ページのスラッグ名/子ページのスラッグ名」で値が返されます。