【WP】author.phpを使用したページでユーザー名が表示されない?

wordpress-author-info-displayワードプレスでは、テーマに[author.php]を用いると、ユーザーアカウント事の記事の一覧ページを作成することができます。[author.php]は、アーカイブページの分類に入りますので、[author.php]が無い場合は[archive.php]が反映されます。

ユーザー名を表示するときは、テンプレートタグの[the_author()]や[get_the_author()]を用いて取得・表示することができますが、[author.php]で使用すると、ユーザー名が表示されないということがありませんか?

[the_author()]や[get_the_author()]はループ内でのみ使用できるため、[author.php]のループ外に記述した場合は、ユーザー名が表示されません。

[author.php]

the_author(); /* ループ外では何も表示されません */

while ( have_posts() ) :

  the_post();
  the_author(); /* ループ内では各記事の作成者としてユーザ名が表示されます */

endwhile;

[author.php]のループ外でユーザー名を表示したい場合は、テンプレートタグの[the_author_meta()]を使用することで取得・表示することができます。

[the_author_meta(‘フィールド名’,ユーザーID)]というように、フィールド名とユーザーIDを指定することで特定のユーザー情報を参照することが可能になります。

[author.php]では、[$author]にユーザーIDが格納されているので、以下のようにしてユーザー情報を取得することができます。

[author.php]

/* ユーザーの表示名を表示 */
the_author_meta( 'display_name', $author);

表示をせずに、変数に取得した情報を格納する場合は、、テンプレートタグの[get_the_author_meta()]を使用します。

[author.php]

/* ユーザーの表示名を取得 */
$user_name   = get_the_author_meta( 'display_name', $author );

関連記事

美容室グランディール様ロゴ制作

富士宮市にある『美容室グランディール』様のロゴを制作いたしました。 お店のお名前である「grandir(グランディール)」はフランス語で「成長する・育つ・大きくなる」という意味を持つことから芽が育つ、そしてお客様から愛されるお店をなることをイメージしてハートをモチーフに...続きを読む

2015.02.06ロゴ制作美容室

【WP】オリジナルショートコードの作り方

WordPressでは、shortcodes(ショートコード)という簡単な記述で、事前の用意された処理コードを実行することができます。 ショートコードを作成する ショートコードの作成はPHP関数の基本的な必要になりますが、オリジナルのショートコードは簡単に作成すること...続きを読む

2015.02.24WordPress

【WP】アップロードするメディアフォルダをカスタマイズする

wordpressでは画像などのメディアファイルを投稿すると初期設定では「投稿年」「投稿月」のフォルダが作られ、そのフォルダ内にデータがアップロードされます。 コーポレートサイトとして運用しカスタム投稿や固定ページを多く使用するような場合はカスタム投稿やページ毎に分けて...続きを読む

2015.03.13WordPress

【デザイン】印象に残るビジネスカードデザイン第2弾

以前に「印象に残るビジネスカードデザイン」をテーマにアイディアにあふれるビジネスカード(名刺)をご紹介しました。今回は第2弾目です。 今回もちょっと変わった、もらうと印象に残るビジネスカード(名刺)の事例をご紹介します。 TAM Cargo:Box Busines...続きを読む

2015.04.16インスピレーション

【ソーシャルメディア】ソーシャルマーケティングの重要性

facebookやtwitter、Googoleプラスやyoutubeなどのソーシャルメディアをビジネスとしてマーケティングに取り込む動向が続いています。現在、ブロガーや中小企業の約75%が現在、などのTwitterやFacebook、LinkedInのようなソーシャルメディ...続きを読む

2015.02.17WEB