ども、Qtaro(@Daisuke_9taro)です。
一つのブログに複数の投稿者(寄稿者)を募って運営する形を僕は「共同ブログ」と呼んでるんですが、複数のメンバーがいるからには
投稿者一覧を表示させたい
ってことありますよね。
先日、僕が寄稿させていただいている共同ブログの日常ぴよぴよさんのブログで投稿者一覧情報を表示させるようにカスタマイズさせていただいたので、その方法を軽く説明したいなと思います。ちなみに実装したのはこんな感じ。
ちなみに今回僕が実装したのはサイドバーに表示させていますが、phpのコードを記述する場所を変えれば、固定ページや記事下なんかにも自由に表示させることができますよー。プラグインやウィジェットは全く使いません。
なんか小難しそうですがほぼコピペでいけます。それでは早速いってみましょう。
実装方法
今回実装例はかなり必要最低限のオーソドックスな形です。
なので「ソースの意味が分からーん。。」という方もとりあえずコピペで使って頂いて、必要に応じてアレンジを加えるのがいいかなと思います。
<!--投稿者一覧を表示--> <?php $users =get_users( array('orderby'=>ID,'order'=>ASC,) ); echo '<ul class="users">'; foreach($users as $user): $uid = $user->ID; $userData = get_userdata($uid); echo '<li class="author-info">'; echo '<div class="avatar">'; echo get_avatar( $uid ,100 ); echo '</div>'; echo '<div class="description">'; echo '<span class="name"><a href="'.get_bloginfo(url).'/?author='.$uid.'">'.$user->display_name.'</a></span>'; echo '<p>'.$userData->user_description.'</p>'; echo '</div>'; echo '</li>'; endforeach; echo '</ul>'; ?> <!--/投稿者一覧を表示-->
実装はコイツをご利用のテーマ(phpファイル)の任意の箇所にごっそりコピペしてしまえば完了です。(やたらechoしてますが気にせず)
見栄えについてはCSSをお好みに修正してあげてください。
上記のソースで表示されるのは以下の内容です(出力順 ※右はソースの対応箇所)
- 投稿者画像 … get_avatar( $uid ,100 )
- 投稿者名(ブログ上の表示名) … $user->display_name
- 投稿者プロフィール情報 … $userData->user_description
各内容はWordPress管理画面のプロフィールの情報を表示させています。
投稿者名リンクからアーカイブページに遷移
ちなみに投稿者名の部分はリンクにしていて、クリックするとその選んだ投稿者の記事一覧ページ(archive.php)に遷移するようになってます。
例えばこんな感じで投稿者の名前をクリックすると。。
こんな感じでその投稿者のアーカイブページに遷移します。
余談:「Simple Local Avatars」の併用をオススメします
これは必須ではないんですが、投稿者の画像は管理画面から登録できるように「Simple Local Avatars」プラグインを利用することをオススメしときます。(使用しなくても実装には問題ありません)
これ使うとWordPressの管理画面からプロフィール画像を設定できるようになるので超便利ですよ。これを利用しないという方は普通にGravatarから登録しましょう。
まとめ:結構お手軽なのでPHP初心者もお試しを
というわけで、投稿者一覧の表示方法を解説しました。
文中でも言いましたが、結構上記ソースの内容は表示的には最低限です。「もっと色んな情報を表示させたい!!」という方はWP関数のget_currentuserinfo()の他のメンバー変数を活用するともっと複雑な表示も可能なのでどうぞお試しください。
それではこのへんで!
WordPress脱初心者向けオススメ記事
これで自由自在!!WordPress Popular Postsで人気記事を任意の箇所に表示させるための3つの使用方法(プラグイン使用)
プラグインで管理画面のメニューを簡単整理♪「Admin Menu Editor」がお手軽便利で初心者にも超オススメ!!(WordPress)