Skip to content

Instantly share code, notes, and snippets.

@arsalan13nov
Created January 9, 2019 20:04
Show Gist options
  • Save arsalan13nov/cf4a168590aa2f941b32c922ba8b620c to your computer and use it in GitHub Desktop.
Save arsalan13nov/cf4a168590aa2f941b32c922ba8b620c to your computer and use it in GitHub Desktop.
Reset Users Course Progress LearnDash
// REST Code
function oddc_learndash_delete_user_activity( $user_id ) {
if( empty( $user_id ) )
return false;
global $wpdb;
$users = $wpdb->get_results( $wpdb->prepare( "SELECT activity_id FROM ". $wpdb->prefix ."learndash_user_activity WHERE user_id = %d ", $user_id ), ARRAY_A );
if( !empty( $users ) ) {
foreach( $users as $user_activity ){
if ( !empty( $user_activity['activity_id'] ) ) {
$activity_id = $user_activity['activity_id'];
$wpdb->delete(
$wpdb->prefix .'learndash_user_activity',
array( 'activity_id' => $activity_id ),
array( '%d' )
);
$wpdb->delete(
$wpdb->prefix .'learndash_user_activity_meta',
array( 'activity_id' => $activity_id ),
array( '%d' )
);
}
}
}
}
add_action( 'init', 'reset_course_status' );
function reset_course_status() {
//**************** Custom Work **********
// Fetch the users from the CSV
global $wpdb;
$users = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM ". $wpdb->prefix ."users WHERE user_email like '%s' limit 300, 100 ", '%@penskeautomotive.com%' ), ARRAY_A );
//$users = $wpdb->get_results( $wpdb->prepare( "SELECT ID FROM ". $wpdb->prefix ."users WHERE ID = %d ", 3077 ), ARRAY_A );
$current_user_id = get_current_user_id();
if( !empty( $users ) && $current_user_id == 4936 ) {
// echo '<pre>';
// print_r( $users );
// exit;
foreach( $users as $u_id ){
echo $user_id = $u_id['ID'];
echo '<br>';
$user_meta = get_user_meta( $user_id, '_sfwd-course_progress', true );
// print_r( $user_meta );
// exit;
if( $user_meta ) {
// Go through the all courses
foreach( $user_meta as $u_course_id => $u_meta ){
delete_user_meta( $user_id, 'course_completed_' . $u_course_id );
}
delete_user_meta( $user_id, '_sfwd-course_progress' );
// Reset Quiz progress
delete_user_meta( $user_id, '_sfwd-quizzes' );
}
// Delete activity meta
oddc_learndash_delete_user_activity( $user_id );
}
exit;
}
}
@ZeeshanAslam123
Copy link

ZeeshanAslam123 commented Aug 24, 2020

please detail me .! learndash_delete_course_progress() function please help how is function are works please help with all the detailed

@ZeeshanAslam123
Copy link

learndash_delete_quiz_progress() function please help how is function are works please help with all the detailed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment