気軽に読めるPHP入門書・PHPスクリプトが動かないときの原因と対策などを紹介します。

  1. WordPressのPHP
  2. 2 view

is_multi_authorは投稿者ではなく「投稿したユーザー」が複数いるか判定する

WordPressで作成中のブログを複数のユーザーで管理するときは投稿者の画像(アバター画像)を含めて投稿者の情報を表示したいこともあります。

投稿者情報の表示例(Twenty Twelve)

投稿者情報の表示例(Twenty Twelve)

テーマによっては個別投稿の下にアバター画像を表示してくれるテーマもありますが、「投稿者が複数いる場合はアバター画像を表示する」という条件が付いている場合があります。

この「複数の投稿者がいる」の判定にはis_multi_authorが使われるのが定番ですが、この関数は複数のユーザーが登録されているかどうかではなく実際に記事を書いたユーザーが複数いるかどうかを判定しています。

たとえば、Twenty Twelveというテーマでは記事の下にアバター画像を表示しますが、次の条件を満たす必要があります。

if ( is_singular() && get_the_author_meta( 'description' ) && is_multi_author()

このif文には3つの条件が書いてあります。

  1. is_singular — 個別投稿の場合
  2. get_the_author_meta( ‘description’ ) — ユーザーの「プロフィール情報」が入力されている
  3. is_multi_author — 複数の投稿者が存在する

最初の2つは読んだままの解釈ですが、3番目は誤解するかもしれません。登録されたユーザーが2人以上いるかではなく、実際に投稿したユーザーが2人以上いるかです。

これから記事を書くユーザーを何人も登録しておいても、実際に記事を書いているのが1人だけの場合はアバター画像は表示されません。また、これらの条件はテーマによって異なります。ご注意ください。

WordPressのPHPの最近記事

  1. WordPressダッシュボードのメニューを非表示にするremove_menu_page関…

  2. WordPressで中身が空のindex.phpは消しても大丈夫?

  3. WordPressのPHPでショートコードを呼び出す方法

  4. is_categoryとin_categoryの違い

  5. wp_get_attachment_image_src関数の使用例

関連記事

PAGE TOP