2026年5月20日
2026年5月20日
WordPressのユーザーデータをエクスポートする方法(GDPR対応)
はじめに
WordPressはバージョン4.9.6からGDPR(EU一般データ保護規則)対応機能が標準搭載されています。ユーザーからの個人データ開示請求・削除請求に管理画面から対応できます。
管理画面からのデータエクスポート
管理画面 → ツール → 個人データのエクスポート
→ メールアドレスを入力 → リクエストを送信
→ ユーザーに確認メールが送信される
→ ユーザーが確認後、管理者がZIPをダウンロード
WP-CLIでユーザーデータをエクスポート
# ユーザー情報をCSVでエクスポート
wp user list --format=csv --fields=ID,user_login,user_email,user_registered,roles \
> users_export.csv
# 特定ユーザーの詳細をJSON形式でエクスポート
wp user get admin --format=json
# ユーザーメタデータをエクスポート
wp user meta list {user_id} --format=csv > user_meta_export.csv
プライバシーリクエストをプログラムから作成
// プライバシーリクエストを作成(ユーザーからのリクエストを代理処理)
$request_id = wp_create_user_request(
'user@example.com',
'export_personal_data' // または 'remove_personal_data'
);
// リクエストを承認
wp_send_user_request($request_id);
カスタムデータエクスポーターを登録
プラグインや独自テーブルのデータをGDPRエクスポートに含める場合:
// functions.php — カスタムデータをエクスポートに追加
add_filter('wp_privacy_personal_data_exporters', function($exporters) {
$exporters['my-plugin'] = [
'exporter_friendly_name' => 'マイプラグインのデータ',
'callback' => 'my_plugin_data_exporter',
];
return $exporters;
});
function my_plugin_data_exporter($email_address, $page = 1) {
$user = get_user_by('email', $email_address);
if (!$user) {
return ['data' => [], 'done' => true];
}
// カスタムテーブルからデータを取得
$data = [
[
'group_id' => 'my-plugin-orders',
'group_label' => '注文履歴',
'item_id' => 'order-1',
'data' => [
['name' => '注文日', 'value' => '2024-01-15'],
['name' => '金額', 'value' => '¥3,000'],
],
],
];
return ['data' => $data, 'done' => true];
}
データ削除エレイザーを登録
// functions.php — カスタムデータ削除を追加
add_filter('wp_privacy_personal_data_erasers', function($erasers) {
$erasers['my-plugin'] = [
'eraser_friendly_name' => 'マイプラグインのデータ削除',
'callback' => 'my_plugin_data_eraser',
];
return $erasers;
});
function my_plugin_data_eraser($email_address, $page = 1) {
$user = get_user_by('email', $email_address);
// カスタムデータを削除
global $wpdb;
$wpdb->delete('wp_my_plugin_data', ['user_email' => $email_address]);
return ['items_removed' => true, 'items_retained' => false, 'messages' => [], 'done' => true];
}
注意事項
- GDPRエクスポートはユーザーの確認メール承認後にのみダウンロード可能になります
- エクスポートされるZIPファイルはURLリンクで共有されます — リンクの有効期限に注意してください
- プライバシーポリシーページを
管理画面 → 設定 → プライバシーから必ず設定してください
まとめ
WordPressの標準GDPR機能は ツール → 個人データのエクスポート から利用できます。カスタムデータを含めるには wp_privacy_personal_data_exporters フィルタで独自のエクスポーター関数を登録してください。