У меня есть скрипт, который импортирует пользователей.
Каждый раз, когда пользователи импортируются / добавляются идентификаторы.
Проблема в том, что многие пользователи (± 75) удаляются одновременно, а от 50 до 100 добавляются один раз в день.
Можно ли позволить приращению идентификатора начинаться с последнего «активного» идентификатора, чтобы избежать потери базы данных?
Это сценарий, который я использую. (Хорошо это или нет, сейчас не актуально)
$filepath = get_bloginfo('template_directory')."/import_test2.csv";
ini_set('auto_detect_line_endings',TRUE);
$file = fopen($filepath, "r") or die("Error opening file");
$i = 0;
while(($line = fgetcsv($file, 1000, ";")) !== FALSE) {
if($i == 0) {
$c = 0;
foreach($line as $col) {
$cols[$c] = $col;
$c++;
}
} else if($i > 0) {
$c = 0;
foreach($line as $col) {
$data[$i][$cols[$c]] = $col;
$c++;
}
}
$i++;
}
foreach ($data as $gebruiker){
$username = $gebruiker['username'];
if ( username_exists( $username ) && $gebruiker['status'] == 'published' ){
$user = get_user_by( 'login', $username);
update_user_meta( $user->ID, 'first_name', $gebruiker['first_name'] );
}else{
$users = wp_insert_user(
array(
'user_login' => $gebruiker['username'],
'user_pass' => $gebruiker['password'],
'first_name' => $gebruiker['first_name'],
'last_name' => $gebruiker['last_name'],
'user_email' => $gebruiker['email'],
'display_name' => $gebruiker['first_name'] . ' ' . $gebruiker['last_name'],
'nickname' => $gebruiker['first_name'] . '' . $gebruiker['last_name'],
'role' => 'subscriber'
)
);
foreach ($data as $update_user) {
update_user_meta( $users, 'company', $gebruiker['bedrijf'] );
update_user_meta( $users, 'function', $gebruiker['functie'] );
}
}if(username_exists( $username ) && $gebruiker['status'] == 'archived'){
require_once(ABSPATH.'wp-admin/includes/user.php' );
$user = get_user_by( 'login', $username);
echo $user->ID.'<br>';
wp_delete_user( $user->ID );
}
}
Я знаю, что скрипт добавляет пользователей, которые не существуют, и впоследствии удаляются, если статус archived
но это что-то на потом. Приоритеты это сейчас!
Надеюсь, что есть решение!
Задача ещё не решена.
Других решений пока нет …