
独自のユーザープロフィール項目を作る
WordPressでは、管理画面からそれぞれユーザーの情報を編集することができます。しかし、デフォルトでは編集できる項目に限りがあります。
少しのコードを追加するだけで、以下のようにSNSリンクや役職など自分で設定した独自のプロフィール項目を追加することができます。

functions.phpにコードを追加
追加する方法は、”functions.php”に以下のようなのコードを追加するだけです。
// ユーザープロフィールの項目のカスタマイズ
function my_user_meta($wb)
{
//項目の追加例
$wb['twitter'] = 'Twitter';
$wb['facebook'] = 'Facebook';
$wb['instagram'] = 'Instagram';
$wb['linkedin'] = 'LinkedIn';
$wb['youtube'] = 'YouTube';
$wb['github'] = 'GitHub';
$wb['note'] = 'Note';
$wb['position'] = '役職';
return $wb;
}
add_filter('user_contactmethods', 'my_user_meta', 10, 1);
追加項目について
//Facebookの追加
$wb['facebook'] = 'Facebook';
//独自項目の追加
$wb['field_name'] = '表示名';
“field_name”は、データを表示させる時や、データベースに格納するときに使用されます。わかりやすい任意の英数字を設定しておきます。
上の例ではフェイスブックの情報を追加していますので”filed_name”はわかりやすく”facebook”としています。
“表示名”の部分は、WordPressのユーザープロフィールを編集する画面で表示される文字です。誰が見てもわかりやすい文字を設定しておきます。
追加した独自プロフィールを出力する
追加したプロフィールの情報を出力するには下記のコードをループの中に追加します。
<?php echo get_user_meta( $uid, 'フィールド名', true); ?>
カスタムフィールが空欄だったときは表示させないようにしたいですよね 。
その場合はif文を使って以下のように書き換えます。 カスタムフィールドに入力がある場合の処理を記述します。
<?php if(get_the_author_meta('フィールド名') != ""): ?>
//ここに空欄でないなら表示させる項目を記述する
<?php endif; ?>
リンク付き画像で出力させる
カスタムフィールドで追加した項目を画像つきで出力させるコードは以下のようになります。
各ユーザーのプロフィール項目に合わせて出力できるため便利です。
<?php if ( get_the_author_meta( 'facebook' ) != "") : ?>
<p>
<a href="<?php the_author_meta( 'facebook' ); ?>" target="_blank">
<img src="/img/facebook_icon.png" alt="facebook"></a>
</p>
<?php endif; ?>