i have problems :
- i wanna create cron auto delete user with user meta_key Ex: Use have meta_key = not_verified ( in wp_usermeta )
so, i wanna delete all user have meta_key = not_verified !
And i tried code below, but it not working, please help me !
function delete_user_not_verified() {
global $wpdb;
$held_duration = iwp_option( 'delete_user_not_verified');
$sql = "SELECT ID FROM {$wpdb->users} WHERE user_id = %s AND meta_key = %s AND (user_registed + INTERVAL %d HOUR) < %s ";
$users = $wpdb->get_results($wpdb->prepare($sql, 'ID', 'not_verified', $held_duration, current_time('mysql')));
if($users){
foreach ($users AS $user){
wpmu_delete_user($user->ID);
}
}
if ( $held_duration >= 1 ) {
wp_schedule_single_event( time() + ( absint( $held_duration ) * 60 * 60), 'iwp_delete_user_not_verified' );
}
}
held_duration
array(
'name' => __( 'Time to keep draft user (in hours)', 'iwproperty' ),
'desc' => __( 'Leave blank if you do not want to automatically delete', 'iwproperty' ),
'id' => 'delete_user_not_verified',
'type' => 'text',
'std' => '24',
),
iwp_delete_user_not_verified
wp_clear_scheduled_hook( 'iwp_delete_user_not_verified' );
$held_duration = iwp_option( 'delete_user_not_verified', '48' );
if ( $held_duration >= 1 ) {
wp_schedule_single_event( time() + ( absint( $held_duration ) * 60 * 60), 'iwp_delete_user_not_verified' );
}