benhuson / expire-users

Set expiry dates for users in WordPress
http://wordpress.org/plugins/expire-users/
24 stars 16 forks source link

Expire Users not working with WooCommerce registration form #39

Open benhuson opened 9 years ago

benhuson commented 9 years ago

See https://wordpress.org/support/topic/expire-users-not-working-with-woocommerce-registration-form?replies=2#post-7232639

benhuson commented 9 years ago

Possibly need to use this hook: 'woocommerce_created_customer' http://docs.woothemes.com/wc-apidocs/source-function-wc_create_new_customer.html#115

Something like the following (note: completely un-tested):

<?php

function expire_user_woocommerce_created_customer( $customer_id, $new_customer_data, $password_generated ) {

    global $expire_users;

    if ( ! class_exists( 'Expire_User' ) ) {
        return;
    }

    $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'       => $expire_settings['expire_user_date_in_num'],
        'expire_user_date_in_block'     => $expire_settings['expire_user_date_in_block'],
        '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( $customer_id );
    $user->set_expire_data( $expire_data );
    $user->save_user();

}
add_action( 'woocommerce_created_customer', 'expire_user_woocommerce_created_customer', 10, 3 );

?>
Makr91 commented 6 years ago

Can you clarify in which file I should place this?

benhuson commented 5 years ago

https://wordpress.org/support/topic/woocommerce-438/