MENU

add_user_meta()

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-XXXX

update_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()update_user_meta() の違いは?

add_user_meta()新しいデータを追加 し、既存のデータがあっても新しい値を追加できる。一方 update_user_meta()既存のデータがある場合は上書きし、ない場合は追加 する。

同じ meta_key に対して複数の値を保存できますか?

はい、可能です。同じ meta_keyfalse(デフォルト)の場合、異なる値を複数保存できます。

ユーザーのメタデータはどこに保存されますか?

WordPress の wp_usermeta テーブルに保存されます。

まとめ

add_user_meta() は、WordPress ユーザーに独自のカスタムメタデータを保存するための関数です。

get_user_meta()update_user_meta() と組み合わせることで、ユーザーごとの情報を管理できます。会員ランク、好みの設定、追加プロフィール情報など、さまざまな用途に活用できます。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

This site uses Akismet to reduce spam. Learn how your comment data is processed.

目次