需要があるのか分からないシリーズです。
マルチユーザーのブログで、プロフィールを
使ってるサイトなんかに使えるんじゃないか
と思ってエントリー。プログインも使わず、
コアファイルも触らずにプロフィール項目を
増やす方法。

なんで書いたかというと、探して出てきた方法がコアファイル触る方法だったからというだけです。ちゃんと探せばちゃんと書いてるエントリーもありそうですがあまり探していないです・・出来ればコアは触らない方がいいですしね。プラグイン使っちゃえば早いんですけどそうも行かない事情があるんだ!という方向けエントリーです。

プロフィールの項目

wp-custum02
マルチユーザーブログでも無い限り、プロフィールすらあまり使われない印象ですが、最近WPを使ったマルチユーザーブログもちらほら見かけるので書いてみます。数行のコードで出来るのでチャレンジしてみてください。

増やす方法

functions.phpに以下のようなコードを加えて終わり。

function my_new_contactmethods( $contactmethods ) {

$contactmethods['twitter'] = 'Twitter';
$contactmethods['facebook'] = 'Facebook';

return $contactmethods;
}
add_filter('user_contactmethods','my_new_contactmethods',10,1);

「$contactmethods[‘コードの中に使うテキスト’] = ‘管理画面に表示されるテキスト’;」を増やせばいくつでも増やせます。例えば以下のように。

function my_new_contactmethods( $contactmethods ) {

$contactmethods['twitter'] = 'Twitter';
$contactmethods['facebook'] = 'Facebook';
$contactmethods['hatena'] = 'はてな';
$contactmethods['mixi'] = 'mixi';
$contactmethods['Flickr'] = 'Flickr';
$contactmethods['YouTube'] = 'YouTube';
$contactmethods['Tumblr'] = 'Tumblr';

return $contactmethods;
}
add_filter('user_contactmethods','my_new_contactmethods',10,1);

実装↓
wp-custum03

[note]【おまけ】
AIMとか邪魔!という方はfunctions.phpに以下を加えれば非表示になります。

unset($contactmethods['aim']);

[/note]

表示させるときは

<p>投稿者の Twitter ID: <?php the_author_meta('twitter'); ?></p>

とかこんな感じ。プロフィール関連のタグはCODEXをご参照下さいませ。