Skip to content

Instantly share code, notes, and snippets.

@yasaryousuf
Created April 26, 2018 06:15
Show Gist options
  • Save yasaryousuf/a97e8e3b5bfd6510aa09ac2542bbb3c7 to your computer and use it in GitHub Desktop.
Save yasaryousuf/a97e8e3b5bfd6510aa09ac2542bbb3c7 to your computer and use it in GitHub Desktop.
<?php
<!-- export -->
$users = get_users();
$jsonString = json_encode($users);
$i = 1;
foreach ($users as $user) {
$user_meta = get_user_meta($user->id);
$imgArr = wp_get_attachment_image_src($user_meta['photo'][0]);
$data[$i]['profile_image'] = $imgArr[0];
$data[$i]['user_login'] = $user->user_login;
$data[$i]['user_pass'] = $user_meta['Member_No'][0]; // Member_No
$data[$i]['user_email'] = $user->user_email ? $user->user_email : "";
$data[$i]['user_url'] = $user->user_url;
$data[$i]['role'] = $user->roles[0];
$data[$i]['category'] = $user_meta['category'][0];
$data[$i]['business_name'] = $user_meta['business_name'][0];
$data[$i]['first_name'] = $user_meta['first_name'][0];
$data[$i]['last_name'] = $user_meta['last_name'][0];
$data[$i]['nickname'] = $user_meta['nickname'][0];
$data[$i]['Club_ID'] = $user_meta['Club_ID'][0];
$data[$i]['Club_City'] = $user_meta['Club_City'][0];
$data[$i]['Member_No'] = $user_meta['Member_No'][0];
$data[$i]['Induction_Date'] = $user_meta['Induction_Date'][0];
$data[$i]['Sponsor_ID'] = $user_meta['Sponsor_ID'][0];
$data[$i]['Gender'] = $user_meta['Gender'][0];
$data[$i]['Language'] = $user_meta['Language'][0];
$data[$i]['Title'] = $user_meta['Title'][0];
$data[$i]['Title_ES'] = $user_meta['Title_ES'][0];
$data[$i]['Title_FR'] = $user_meta['Title_FR'][0];
$data[$i]['Company'] = $user_meta['Company'][0];
$data[$i]['company_address'] = $user_meta['company_address'][0];
$data[$i]['activity'] = $user_meta['activity'][0];
$data[$i]['Address'] = $user_meta['Address'][0];
$data[$i]['Business_Phone'] = $user_meta['Business_Phone'][0];
$data[$i]['Mobile_Phone'] = $user_meta['Mobile_Phone'][0];
$data[$i]['fax_number'] = $user_meta['fax_number'][0];
$data[$i]['Personal_email'] = $user_meta['Personal_email'][0];
$data[$i]['phone'] = $user_meta['phone'][0];
$data[$i]['Birth_Date'] = $user_meta['Birth_Date'][0];
$data[$i]['Member_Birthday'] = $user_meta['Member_Birthday'][0];
$data[$i]['Member_Birthday_FR'] = $user_meta['Member_Birthday_FR'][0];
$data[$i]['Member_Birthday_ES'] = $user_meta['Member_Birthday_ES'][0];
$data[$i]['birth_place'] = $user_meta['birth_place'][0];
$data[$i]['description'] = $user_meta['description'][0];
$data[$i]['Description_FR'] = $user_meta['Description_FR'][0];
$data[$i]['Description_ES'] = $user_meta['Description_ES'][0];
$data[$i]['Life_Companion'] = $user_meta['Life_Companion'][0];
$data[$i]['Description_ES'] = $user_meta['Description_ES'][0];
$data[$i]['Life_Companion_Birthday'] = $user_meta['Life_Companion_Birthday'][0];
$data[$i]['Life_Companion_Birthday_FR'] = $user_meta['Life_Companion_Birthday_FR'][0];
$data[$i]['Life_Companion_Birthday_ES'] = $user_meta['Life_Companion_Birthday_ES'][0];
$data[$i]['Board_Member'] = $user_meta['Board_Member'][0];
$data[$i]['board_title'] = $user_meta['board_title'][0];
$data[$i]['Past_President'] = $user_meta['Past_President'][0];
$data[$i]['Skal_Greeter'] = $user_meta['Skal_Greeter'][0];
$data[$i]['Is_Member_have_offer'] = $user_meta['Is_Member_have_offer'][0];
$data[$i]['DBAF_Local'] = $user_meta['DBAF_Local'][0];
$data[$i]['DBAF_Local_FR'] = $user_meta['DBAF_Local_FR'][0];
$data[$i]['DBAF_Local_ES'] = $user_meta['DBAF_Local_ES'][0];
$data[$i]['DBAF_National'] = $user_meta['DBAF_National'][0];
$data[$i]['DBAF_National_FR'] = $user_meta['DBAF_National_FR'][0];
$data[$i]['DBAF_National_ES'] = $user_meta['DBAF_National_ES'][0];
$data[$i]['DBAF_International'] = $user_meta['DBAF_International'][0];
$data[$i]['DBAF_International_FR'] = $user_meta['DBAF_International_FR'][0];
$data[$i]['DBAF_International_ES'] = $user_meta['DBAF_International_ES'][0];
$data[$i]['facebook_titles'] = $user_meta['facebook_titles'][0];
$data[$i]['social_field_facebook'] = $user_meta['social_field_facebook'][0];
$data[$i]['twitter_titles'] = $user_meta['twitter_titles'][0];
$data[$i]['social_field_twitter'] = $user_meta['social_field_twitter'][0];
$data[$i]['lInkedin_titles'] = $user_meta['lInkedin_titles'][0];
$data[$i]['social_field_linkedin'] = $user_meta['social_field_linkedin'][0];
$data[$i]['google_plus_titles'] = $user_meta['google_plus_titles'][0];
$data[$i]['social_field_gplus'] = $user_meta['social_field_gplus'][0];
$data[$i]['Instagram_titles'] = $user_meta['Instagram_titles'][0];
$data[$i]['Instagram'] = $user_meta['Instagram'][0];
$data[$i]['meal_special'] = $user_meta['meal_special'][0];
$data[$i]['Food_Allergies'] = $user_meta['Food_Allergies'][0];
$data[$i]['Meal_Plan'] = $user_meta['Meal_Plan'][0];
$data[$i]['Note_Field'] = $user_meta['Note_Field'][0];
$data[$i]['photo'] = $user_meta['photo'][0];
$i++;
}
echo '<pre>'; print_r($data); echo '</pre>';
$dataJSON = json_encode($data);
// echo $dataJSON;
file_put_contents( OP_VIEW_PATH . '/users.json', $dataJSON);
<!-- import -->
$userJSON = file_get_contents( OP_VIEW_PATH . "/users.json");
$users = json_decode($userJSON, true);
foreach ($users as $data) {
$email = $data['user_email'];
if (empty($data['user_email']) && empty($data['Personal_email'])) {
// continue;
} elseif (empty($data['user_email'])) {
$email = $data['Personal_email'];
}
// # Induction date
// if (!empty($data['Induction_Date'])) {
// $induction_date = new DateTime($data['Induction_Date']);
// $data['Induction_Date'] = $induction_date->format("Y-m-d");
// }
# Birth Date
if (!empty($data['Birth_Date'])) {
$birth_date = new DateTime($data['Birth_Date']);
$data['Birth_Date'] = $birth_date->format("Y-m-d");
}
if (!empty($data['photo'])) {
echo $photo_url = $data['profile_image'];
$data['photo'] = OpsUpload::customMediaSideloadImage($photo_url);
}
# Check User exit
$user_id = username_exists($data['user_login']);
$user_data = [
'user_pass' => $data['user_pass'],
'user_url' => $data['user_url'],
'user_email' => $email,
'nickname' => $data['nickname'],
'first_name' => $data['first_name'],
'last_name' => $data['last_name'],
'description' => $data['description'],
'role' => $data['role'],
];
if ($user_id) {
# Update user data
$user_data['ID'] = $user_id;
wp_update_user($user_data); } else {
# If not exit create user
$user_data['user_login'] = $data['user_login'];
$user_id = wp_insert_user($user_data);
if (is_wp_error($user_id)) {
echo "error " . $data['user_login'] . $data['Induction_Date'] . " " . $user_id->get_error_message() . " <br>";
continue;
}
}
$skipped_data = array_keys($user_data);
# Update Usermeta
foreach ($data as $meta_key => $meta_value) {
// echo $meta_value;
// echo '<pre>'; print_r($meta_key); echo '</pre>';
if (in_array($meta_key, $skipped_data)) {
continue;
}
update_user_meta($user_id, $meta_key, $meta_value);
// delete_user_meta( $user_id, "photo" );
}
echo '<pre>'; print_r(get_userdata($user_id)); echo '</pre>';
echo '<pre>'; print_r(get_userdata($user_id)->roles); echo '</pre>';
// echo '<pre>'; print_r(get_user_meta($user_id)); echo '</pre>';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment