add_user_meta() は、WordPress のユーザーに対してカスタムメタデータ(追加情報)を保存するための関数です。
たとえば、ユーザーのプロフィール情報に「電話番号」や「会員ランク」などの独自データを追加する際に利用します。この関数を使うことで、プラグインやテーマのカスタマイズ時に、ユーザーごとの追加データを簡単に管理できます。
目次
機能の説明
add_user_meta() の役割
- WordPress ユーザーに対して独自のメタデータを追加する。
- メタデータはユーザーごとに保存され、後から取得・更新・削除が可能。
update_user_meta()やdelete_user_meta()と組み合わせて活用されることが多い。
使用例
- 会員制サイトのランク管理(ゴールド会員・シルバー会員)
- ユーザーのカスタム設定(ダークモード ON/OFF など)
- ユーザーの好みや閲覧履歴を保存
シンプルなコード例
add_user_meta(1, 'phone_number', '090-XXXX-XXXX');1:対象のユーザー ID'phone_number':保存するカスタムメタデータのキー'090-XXXX-XXXX':保存する値
このコードを実行すると、ユーザー ID 1 に対して phone_number というメタデータが 090-1234-5678 という値で保存されます。
使い方の説明
基本的な使い方
$user_id = 1;
$meta_key = 'membership_level';
$meta_value = 'gold';
add_user_meta($user_id, $meta_key, $meta_value);add_user_meta() を使って membership_level(会員ランク)を gold に設定。
一度に複数の値を追加
add_user_meta(2, 'favorite_color', 'blue');
add_user_meta(2, 'favorite_color', 'red');同じ meta_key で複数の値を追加できます。
一意の値を保存する
デフォルトでは、同じ meta_key に対して複数の値を保存できますが、一意の値のみを許可する場合は true を指定します。
add_user_meta(3, 'nickname', 'JohnDoe', true);もしすでに nickname が存在する場合、新しい値は追加されません。
一緒に使うことが多い関連タグ
get_user_meta()
ユーザーのメタデータを取得する。
$phone = get_user_meta(1, 'phone_number', true);
echo $phone; // 出力: XXX-XXXX-XXXXupdate_user_meta()
既存のメタデータを更新する。
update_user_meta(1, 'phone_number', 'XXX-XXXX-XXXX');delete_user_meta()
ユーザーのメタデータを削除する。
delete_user_meta(1, 'phone_number');追加情報で取得したい場合
すべてのユーザーメタ情報を取得
get_user_meta() を false で指定すると、配列形式で取得できます。
$all_meta = get_user_meta(1);
print_r($all_meta);特定のメタキーが存在するか確認
if (metadata_exists('user', 1, 'phone_number')) {
echo "電話番号が設定されています。";
}想定されるトラブル
データが保存されない
解決方法
$user_idが有効なユーザー ID か確認する。meta_keyの文字列が誤っていないか確認する。trueを指定している場合、すでにデータが存在していないか確認する。
既存の値が上書きされない
解決方法
update_user_meta() を使って更新する。
update_user_meta(1, 'phone_number', '090-XXXX-XXXX');Q&A
まとめ
add_user_meta() は、WordPress ユーザーに独自のカスタムメタデータを保存するための関数です。
get_user_meta() や update_user_meta() と組み合わせることで、ユーザーごとの情報を管理できます。会員ランク、好みの設定、追加プロフィール情報など、さまざまな用途に活用できます。
コメント