Eksport użytkowników z WordPress do CSV
functions.php
require_once __DIR__ . '/includes/partials/export-users-data/createCSV.php';
add_filter( 'bulk_actions-users', 'export_user_data' );
function export_user_data( $new_bulk_actions ) {
$new_bulk_actions[ 'export_user_data' ] = __( 'Export', 'export_user_data');
return $new_bulk_actions;
}
add_filter('handle_bulk_actions-users', 'export_user_data_handler', 10, 3);
function export_user_data_handler($redirect_to, $do_action, $object_ids) {
if ($do_action !== 'export_user_data') {
return $redirect_to;
}
foreach ($object_ids as $user_id) {
$na_retailer_info = maybe_unserialize(get_user_meta($user_id, 'na_retailer_info', true));
$pw_user_status = get_user_meta($user_id, 'pw_user_status', true);
if(!$na_retailer_info) {
continue;
}
if ($pw_user_status) {
$user_data['status'] = $pw_user_status;
}
if ($na_retailer_info['Company']) {
$user_data['company'] = $na_retailer_info['Company'];
}
if ($na_retailer_info['Country']) {
$user_data['country'] = $na_retailer_info['Country'];
}
if ($na_retailer_info['VAT_Identification']) {
$user_data['VAT_Identification'] = $na_retailer_info['VAT_Identification'];
}
if ($na_retailer_info['field_2']) {
$user_data['county'] = $na_retailer_info['field_2'];
}
$users_data[] = $user_data;
}
$headers = 'Status;Company;Country;VAT_Identification;County;';
$fileName = 'exported_users_data';
createCSV($headers, $users_data, $fileName);
}
createCSV.php
<?php
function createCSV(string $headers, array $data, string $fileName) {
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename='. $fileName .'.csv');
header('Content-Type: text/csv; charset=' . get_option('blog_charset'), true);
echo $headers;
echo PHP_EOL;
foreach ($data as $values) {
foreach ($values as $key => $value) {
echo $value;
echo ';';
}
echo PHP_EOL;
}
}
© 2023 Dawid Ferchow
•
Theme Moonwalk