Viewing 6 replies - 1 through 6 (of 6 total)
  • Thread Starter dune1982

    (@dune1982)

    Oh by the way, I have made a German translation if you whant to include it.

    Thread Starter dune1982

    (@dune1982)

    Ok I got it now, some custom code in the functions.php

    Please keep on developing this plugin, I would love to have different expire options, like different times for registration and my case on purchase of a product.

    hi there…

    any chance you can share your custom code?

    thx!

    Thread Starter dune1982

    (@dune1982)

    Yes here it is. It is already adapted for pieregister. But if you use a diffrent add_action you can start the function otherwise

    // Function to add expiry on registration to a user role  $current_user->ID
    function new_registerd_member( $user ) {
    	//$current_user = wp_get_current_user();
    
    	//$user = new WP_User( $current_user->ID );
    
    	// Remove role
    	//$user->remove_role( 'subscriber' ); 
    
    	// Add role
    	//$user->add_role( 'mycustomrole' );
    
    	// This adds the expire user stuff to the role  posible date_in_block 'years' 'months' 'weeks' 'days'
    	global $expire_users;
    
    	$expire_settings = $expire_users->admin->settings->get_default_expire_settings();
    
    	$expire_data = array(
    				'expire_user_date_type'         => $expire_settings['expire_user_date_type'],
    				'expire_user_date_in_num'       => 1,
    				'expire_user_date_in_block'     => 'months',
    				'expire_user_date_on_timestamp' => $expire_settings['expire_timestamp'],
    				'expire_user_role'              => $expire_settings['expire_user_role'],
    				'expire_user_reset_password'    => $expire_settings['expire_user_reset_password'],
    				'expire_user_email'             => $expire_settings['expire_user_email'],
    				'expire_user_email_admin'       => $expire_settings['expire_user_email_admin'],
    				'expire_user_remove_expiry'     => $expire_settings['expire_user_remove_expiry']
    	);
    
    	$user = new Expire_User( $user->ID );
    	$user->set_expire_data( $expire_data );
    	$user->save_user();
    }
    
    add_action( 'pie_register_after_register_validate', 'new_registerd_member', 10,1 );

    Hope this helps

    awesome, thx!

    I’d like to only start expiration for new users that are created with a role = free_trial

    Do you think the above code will do this? Thanks

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘start expiration period not on registration, but when assigned to role’ is closed to new replies.