ワードプレスでuser_meta情報を残さずユーザーを削除する方法

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

ワードプレスではデータベースから直接ユーザーを削除可能です。ただし、データベース内にはユーザー情報と紐づいたデータが別のテーブルに格納されていることもあるので注意しなければなりません。

ワードプレスでuser_meta情報を残さずユーザーを削除する方法

各ユーザーの関連情報をまとめて削除する関数「wp_delete_user」が準備されています。ただし、関数を実行する前に必要なファイル(user.phpの呼び出し)があります。以下が実際に記述した例です。

require_once(ABSPATH.'wp-admin/includes/user.php' );
$current_user = wp_get_current_user();
wp_delete_user( $current_user->ID );

ちなみに第二引数を指定すると「ユーザーが所有しているコンテンツを再割当」することもできます。

<?php wp_delete_user( $id, $reassign ); ?>

管理画面には表示されないデータとしてあえてユーザー情報を「データベース内に残しておきたい等」の状況であれば「削除したユーザー情報を残す(user_metaを活用)」場合もあります。ちなみに「wp_user」には以下の情報が格納されています。ユーザー削除時に「user_meta」にメモを追加してもいいですよね。

・ID
・user_login
・user_pass
・user_nicename
・user_email
・user_url
・user_registered
・user_activation_key
・user_status
・display_name

もしデータを残したいなら「wp_delete_user」を使わずSQLで直接ユーザーIDを指定して削除する方法もOK。逆に「wp_delete_user」を使うタイミングで削除情報を保存しなおす場合もあります。

過去のユーザー情報として「メールアドレスとuser_meta情報を残したい」という場面もあるかもしれません。ちなみにuser_metaへの追加は「add_user_meta」を使えば追加可能です。色々揃っていますね。

<?php add_user_meta( $user_id, $meta_key, $meta_value, $unique ); ?>

アイデア次第で色々な運用が可能になりますね。想像以上に柔軟な仕組みですね。

【今すぐ無料プラグインを手に入れる】
無料ダウンロードはこちら

ワードプレス専門家に丸投げする

WPホームページ研究所はワードプレスを中心としたブログ作成・ホームページ制作・オウンドメディア構築・プラグイン設定・調整など幅広いカスタマイズに対応しております。 記事の掲載情報はもちろんお好みの機能をいただければ専属スタッフが心を込めて対応させていただきます。まずはお気軽にお問い合わせくださいませ。

お問い合わせの種類をお選びください(もっとも近い項目)

法人の場合は法人名とご担当者のお名前をご入力ください

返信時のご連絡に利用するメールアドレスをご入力ください

運営中のウェブサイトURLがあればご入力ください

お困りの内容があれば詳しい内容をお聞かせください