著者(ユーザー)一覧を取得して表示する方法

WordPress
記事内に広告が含まれています。

WordPress 標準の「著者」(=ユーザー)を取得して一覧表示、おまけにその「著者」の記事一覧へのリンクも含める、とかよく使います。(※個人の感想です)

以下は 編集者 or 投稿者 or 寄稿者を取得して ul 要素で出力する例です。

<?php
$args = array(
    'orderby' => 'ID',
    // 編集者 or 投稿者 or 寄稿者を取得
    'role__in' => array('editor', 'author', 'contributor'),
);
$_authors = get_users($args);
if (!empty($_authors)) { ?>
<ul>
<?php
    foreach ($_authors as $_author) {
        // 著者画像(カスタムフィールド author_poto)
        $author_photo_id = get_field('author_photo', 'user_' . $_author->ID);
        if (!empty($author_photo_id)) {
            // 著者画像取得(画像サイズは functions.php で thumb_author として定義済み)
            $author_photo = wp_get_attachment_image_src($author_photo_id, 'thumb_author');
        } else {
            // 代替画像を取得(functions.php で定義済み)
            $author_photo = get_thumb_noimage_pc('thumb_author');
        } ?>
    <li><a href="<?php echo esc_url(get_author_posts_url($_author->ID)); ?>"><img src="<?php echo $author_photo[0]; ?>" width="<?php echo $author_photo[1]; ?>" height="<?php echo $author_photo[2]; ?>" alt="<?php echo esc_html($_author->display_name); ?>"></a></li>
<?php
    } ?>
</ul>
<?php
} ?>

参考 get_users – WordPress私的マニュアル

引数については以下が参考になります。

参考 WP_User_Query – Class | Developer.WordPress.org
参考 WP_User_Query::prepare_query() – Method | Developer.WordPress.org

タイトルとURLをコピーしました