【WordPress】投稿のパーマリンクを取得する方法

WordPressで投稿のパーマリンク(URL)を取得する方法には、いくつかの方法があります。この記事では、投稿IDや投稿オブジェクトを用いてパーマリンクを取得するための主要な方法を紹介します。

get_permalink() 関数を使用する

get_permalink() 関数は、特定の投稿やページのパーマリンクを取得するために使用します。この関数は、投稿IDや投稿オブジェクトを引数として受け取り、その投稿のパーマリンクを返します。

投稿IDを使ってパーマリンクを取得する

投稿IDがわかっている場合、次のように get_permalink() 関数を使用してパーマリンクを取得できます。

$post_id = 123; // 投稿IDを指定
$permalink = get_permalink($post_id);
echo $permalink;

このコードでは、指定した投稿ID(ここでは123)のパーマリンクを取得し、画面に表示します。

投稿オブジェクトを使ってパーマリンクを取得する

投稿オブジェクトを使用してパーマリンクを取得する方法もあります。次のコード例では、投稿IDから投稿オブジェクトを取得し、そのオブジェクトを使ってパーマリンクを取得しています。

$post = get_post(123); // 投稿オブジェクトを取得
$permalink = get_permalink($post);
echo $permalink;

the_permalink() 関数を使用する

the_permalink() 関数は、主にループ内で使用され、現在の投稿のパーマリンクを表示します。この関数を呼び出すと、自動的に現在の投稿のパーマリンクが出力されます。

投稿ループ内でパーマリンクを表示する

次のコード例では、WordPressの投稿ループ内で the_permalink() 関数を使用して、投稿のリンクを表示しています。

if ( have_posts() ) :
    while ( have_posts() ) : the_post();
        echo '<a href="' . get_permalink() . '">この投稿のリンク</a>';
    endwhile;
endif;

このコードでは、ループ内の各投稿に対して、その投稿のパーマリンクをリンクとして表示します。

get_post_permalink() 関数を使用する

get_post_permalink() 関数もパーマリンクを取得するために使用されることがありますが、get_permalink() 関数の方が推奨されています。この関数は一部のコードベースで見かけることがあります。

get_post_permalink() の使用例

以下のコードは、get_post_permalink() を使用して投稿IDからパーマリンクを取得する例です。

$post_id = 123; // 投稿IDを指定
$permalink = get_post_permalink($post_id);
echo $permalink;

まとめ

  • get_permalink(): 投稿IDまたは投稿オブジェクトからパーマリンクを取得します。
  • the_permalink(): 現在の投稿のパーマリンクを表示します。
  • get_post_permalink(): get_permalink() の代わりに使われることがあるが、非推奨です。

これらの関数を活用することで、WordPressで投稿のパーマリンクを簡単に取得し、表示することができます。必要に応じて、これらの方法を使い分けてみてください。