企業サイトのオウンド化が進み、複数名でWordPressを運用する機会が増えてきていると思われます。 そんな時にユーザー一覧ページが欲しい!なんて要望があることを想定してプラグインを使わずにユーザー一覧ページを作成してみます。
ユーザー一覧ページの作り方
固定ページのスラッグは任意に設定できる前提です。
- 固定ページを作成します。
- page.phpを複製してpage-手順1で作成したスラッグ名.phpにリネームします。
- 以下で紹介するソース例をコピペします。
- 必要に応じて項目を精査して完成です。
get_usersでユーザーの情報を取得
ユーザー情報はget_usersで取得します。パラメーターはCodexをご参照
ください。
ソース例
パラメーターはCodexからコッピってきたものに必要な箇所のみ変更しています。
<?php $args = array(
'role' => '',
'meta_key' => 'last_name',
'meta_value' => '',
'meta_compare' => '',
'meta_query' => array(),
'date_query' => array(),
'include' => array(),
'exclude' => array('1'),
'orderby' => 'meta_value',
'order' => 'ASC',
'offset' => '',
'search' => '',
'number' => '',
'count_total' => false,
'fields' => 'all',
'who' => ''
);
$getusers = get_users($args);
foreach($getusers as $user):
?>
<div class="staff-item">
<p class="staff-photo"><?php echo get_avatar($user->id); ?></p>
<h2><?php echo $user->display_name; ?></h2>
<p class="staff-prof"><?php echo $user->user_description; ?></p>
<p class="common-link"><a href="<?php echo home_url(); ?>/?author=<?php echo $user->id; ?>"><?php echo $user->display_name; ?>の記事一覧</a></p>
</div>
<?php endforeach; ?>
出力できる主な情報
ユーザーIDとかパスワードは忘れた時に便利かもですね!超危ないですけど・・・。
| ID | ユーザーid |
|---|---|
| user_login | ログインID |
| user_pass | パスワード |
| user_nicename | ニックネーム |
| user_email | メールアドレス |
| user_url | ウェブサイト |
| user_registered | 登録日時 |
| display_name | ブログ上の表示名 |
| first_name | 名 |
| last_name | 性 |
| nickname | ニックネーム |
| description | プロフィール情報 |
| user_level | ユーザーレベル※非推奨 |
| admin_color | 管理画面のテーマ |
並び順
並び順を変更することも可能です。上のソース例は任意の順番に並べ替えたくてスマートじゃありませんがlast_nameに数値を入力して任意の順番に並べ替えれるようにしています。 orderbyに設定できる値は以下の通り。
- ID
- login
- nicename
- url
- registered
- display_name
- post_count
- meta_value
meta_valueを設定する場合はmeta_keyも指定する必要あります。meta_keyに指定できる値は以下の通り。
- first_name
- last_name
- nickname
- description
- user_level
- admin_color
- closedpostboxes_page
- primary_blog
- rich_editing
- source_domain
まぁまぁ手軽にできますね!もっと調べるとユーザー周りも、いろいろカスタマイズできるみたいなのですが、またの機会に!


