Desactivar autologin en WooCommerce tras registro

    Os dejamos este código para que podáis desactivar el autologin de vuestro WooCommerce. Os hablamos de esta función en la sección herramientas del episodio 28 de nuestro podcast.

    <?php
    add_filter( 'woocommerce_registration_redirect', 'user_verification_woocommerce_registration_redirect', 10, 1 );
    
    function user_verification_woocommerce_registration_redirect(){
    	if ( is_user_logged_in() ) {
    		$current_user = wp_get_current_user();
    		$user_id = $current_user->ID;
    		$approved_status = get_user_meta($user_id, 'user_activation_status', true);
    		//si el usuario no ha sido aprobacod, la cookie se destruye y lo saca de la sesión
    		if ( $approved_status == 1 ){
    			return get_permalink(wc_get_page_id('myaccount'));
    		} else {
    			wp_logout();
    			return get_permalink(wc_get_page_id('myaccount')) . "?approved=false";
    		}
    	}
    }
    
    function registration_message(){
    
    	$not_approved_message = '<p class="registration">Tu cuenta estará bloqueada hasta que sea aprobada.</p>';
    	if( isset($_REQUEST['approved']) ){
    		$approved = sanitize_text_field($_REQUEST['approved']);
    		if ($approved == 'false') echo '<p class="registration successful">¡Registro solicitado! Te enviaremos un email para confirmarte la activación de tu cuenta.</p>';
    			else echo $not_approved_message;
    		}
    	else echo $not_approved_message;
    
    }
    add_action('woocommerce_before_customer_login_form', 'registration_message', 2);