見出し画像

WordPressのループ外で投稿者の表示名を出力する方法

WordPressのループ内で投稿者の表示名を表示するのならget_the_authorやthe_authorで取得できますが、ループ外の場合はひと工夫必要です。

PHP

<?php
	$author = get_userdata($post->post_author);
	echo $author->display_name;
?>

まずpost_authorで現在の投稿の投稿者(作成者)IDを取得し、get_userdataでその投稿者の情報を取得して$authorへ代入。

そして代入した投稿者情報の中からdisplay_nameを取り出して表示するという流れです。

なおdisplay_nameはWordPressダッシュボードの「ユーザー」にある「ブログ上の表示名」に設定してあるものを取得します。

「ループ外で」と書いていますが、別にループ内でも使えます。しかしループ内では上でも言ったようにget_the_authorやthe_authorが使えるため、あまり必要はないかと思います。

$post->で現在の投稿の情報を取り出す


投稿者情報やカテゴリーなど、投稿にまつわる情報を取得するのには、一通りテンプレートタグがそろっているのでそれらを使えば大丈夫です。

しかし、ループ外だとそれらでは思うように取得できないことがあります。

そんなときには、「$post->~」というような形で、現在の投稿の情報を取得していけば大概のものはいけます。

「$post->~」で取得できるものは以下の通りです。

現実的にはあまりやることはないかもしれませんが、これを使えばループ外に投稿のタイトルや本文を表示することもできます。

ここから先は

1,712字

スタンダードプラン

¥500 / 月
初月無料
このメンバーシップの詳細

記事が役に立ったと思ったら、応援していただけると嬉しいです!