delete_user_meta()


WordPressのdelete_user_meta()関数は、特定のユーザーに関連付けられたメタデータを削除するために使用されます。

構文

delete_user_meta( int $user_id, string $meta_key, mixed $meta_value = '' );

引数の説明:

  • $user_id (int) — ユーザーIDを指定します。
  • $meta_key (string) — 削除したいメタデータのキーを指定します。
  • $meta_value (mixed) — 特定の値を削除する場合に指定します。省略するとすべての値が削除されます。

例1: 特定のメタデータを削除する

次のコードは、特定のユーザーからfavorite_colorというメタデータを削除します。

<?php delete_user_meta( get_current_user_id(), 'favorite_color' ); ?>

例2: 特定の値だけを削除する

次のコードは、favorite_colorメタデータの値がblueの場合にのみ削除します。

<?php delete_user_meta( get_current_user_id(), 'favorite_color', 'blue' ); ?>

例3: 管理者ユーザーのメタデータを削除する

次のコードは、管理者ユーザーから特定のメタデータを削除します。

<?php
$admin_users = get_users( array( 'role' => 'administrator' ) );
foreach ( $admin_users as $user ) {
    delete_user_meta( $user->ID, 'admin_notice_dismissed' );
}
?>

例4: ユーザー全員から特定のメタデータを削除する

次のコードは、すべてのユーザーから特定のメタデータを削除します。

<?php
$users = get_users();
foreach ( $users as $user ) {
    delete_user_meta( $user->ID, 'newsletter_subscription' );
}
?>

例5: メタデータが存在するか確認して削除する

次のコードは、指定したメタデータが存在する場合にのみ削除します。

<?php
if ( metadata_exists( 'user', get_current_user_id(), 'temporary_data' ) ) {
    delete_user_meta( get_current_user_id(), 'temporary_data' );
}
?>

注意事項

  • この関数を使用するときは、削除するメタデータが重要でないことを確認してください。
  • $meta_valueを指定しない場合、そのキーに関連付けられたすべての値が削除されます。
  • 誤って他のユーザーの重要なデータを削除しないように、慎重にテストしてください。

関連機能: