Avisos
Vaciar todo

Crear cuenta woocommerce usuarios  

Página 2 / 3
 
Rebeca
 Rebeca
Usuario activo

Hola, me gustaría que una vez una persona realiza una compra, le llegara un correo de confirmación de que se ha creado su cuenta, con su nombre de usuario y contraseña.

He configurado todo en woocomerce, cuentas y privacidad para que esto sea así, pero no le llega el correo.

He visto en esta página:  https://www.webempresa.com/blog/solo-usuarios-registrados-puedan-finalizar-la-compra-en-woocommerce.html  otra forma de hacerlo para que tengan que registrarse al pagar.

Me gustaría más la primera opción pero si no es posible, la segunda.

¿Cómo puedo hacerlo?
Muchas gracias.

Contenido solo visible a usuarios registrados

Citar
Respondido : 21/04/2023 5:59 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Rebeca

Con las opciones que te indique antes cuando haga el pago se creara una cuenta

También puedes forzar a que el usuario tenga que añadir un usuario y una contraseña a la hora de hacer el pedido y esos serán los datos de acceso del usuario

.- Desmarca la Opción Al crear una cuenta, generar automáticamente un nombre de usuario para el cliente basado en su nombre, apellido o correo electrónico

screenshot mary52.webempresa.eu 2023.04.24 15 38 08

 

Un Saludo

ResponderCitar
Respondido : 24/04/2023 2:40 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Rebeca
 Rebeca
Usuario activo

Pero no les llega el correo cuando les crea esa cuenta, cómo puedo hacer para que les llegue? es lo que me faltaría 🙂

ResponderCitar
Respondido : 28/04/2023 7:53 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Rebeca.

Si que llega el Correo, lo estoy comprobando y recibo el correo de nueva cuenta con un enlace para restablecer la contraseña:

screenshot outlook.live.com 2023.04.28 10 22 21

 

Un saludo

ResponderCitar
Respondido : 28/04/2023 9:23 am

wpdoctor-revisa-la-salud-de-tu-wordpress

Rebeca
 Rebeca
Usuario activo

@pepesoler no sé cómo haces para que te llegue ese correo, yo hago un pedido de prueba y sólo llega "¡Hemos recibido tu pedido" pero no esa captura que me dices, que es lo que me gustaría que recibieran además del otro email.

ResponderCitar
Respondido : 28/04/2023 1:53 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Rebeca.

El usuario se registra desde Mi cuenta.

screenshot gadietista.com 2023.04.28 15 05 06

Si quieres que se cree un usuario cuando hagan el pedido tienes que seleccionar Permitir a los clientes crear una cuenta al finalizar compra y Permitir a los clientes crear una cuenta en la página «Mi cuenta».

screenshot masquecms.es 2023.04.28 15 08 55

 

Un Saludo

 

ResponderCitar
Respondido : 28/04/2023 2:41 pm

Rebeca
 Rebeca
Usuario activo

esa opción la tengo marcada, las dos, pero no les llega el email al hacceer la compra 🙁

ResponderCitar
Respondido : 28/04/2023 3:16 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Rebeca, 

Envíanos un producto que podamos comprar en 0 para revisar los correos que llegan cuando el cliente procesa su compra, de esta forma podemos revisar que información se muestra. 

Un Saludo 

ResponderCitar
Respondido : 28/04/2023 4:33 pm

Cursos Gratuitos WordPress

Rebeca
 Rebeca
Usuario activo

@karen. https://gadietista.com/producto/prueba/

ResponderCitar
Respondido : 28/04/2023 5:01 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Rebeca, 

Veo que si se están creando las cuentas, ten en cuenta que el email tarda un poco en llegar, pero si llega de forma correcta al usuario

image

En este caso veo que todo funciona de forma correcta. 

Un Saludo 

ResponderCitar
Respondido : 28/04/2023 5:14 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Rebeca
 Rebeca
Usuario activo

¡Muchísimas gracias! podéis comprobarlo aquí en un producto de suscripción?

  https://gadietista.com/producto/prueba/

Si aquí funciona genial, no sé por qué no consigo que me lleguen.

¡Gracias!

ResponderCitar
Respondido : 28/04/2023 5:21 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Rebeca, 

Es posible que sea el correo o algo adicional, revisa si no lo tienes en spam. En este caso no vemos nada adicional ya que en el sitio web todo funciona de forma correcta. 

Un Saludo 

ResponderCitar
Respondido : 28/04/2023 5:28 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Rebeca
 Rebeca
Usuario activo

¿os ha llegado de nuevo entonces el correo de "reestablecer contraseña de la cuenta" al hacer un pedido de suscripción?

 

No me ha llegado en spam a mi

Gracias!!

ResponderCitar
Respondido : 28/04/2023 5:29 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Rebeca, 

Es correcto llego el correo de forma correcta, por lo que veo todo bien.

Un Saludo 

ResponderCitar
Respondido : 28/04/2023 5:39 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Rebeca
 Rebeca
Usuario activo
Captura de pantalla 2023 05 03 a las 8.52.22

 

No entiendo el motivo pero lo acabo de intentar de nuevo y sigue (después de media hora) sin llegarme el email de crear una cuenta.

Además, en el producto de suscripción variable no me llega el correo ni para crear una cuenta, ni el de "pago de suscripción realizado"

ResponderCitar
Respondido : 03/05/2023 8:09 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Rebeca.

Ok, prueba lo siguiente:

.- Accede a WooCommerce -> Ajustes -> Cuentas y privacidad

.- Desactiva la opción Permitir a los clientes crear una cuenta al finalizar compra.

.- Activa Al crear una cuenta, generar automáticamente una contraseña de cuenta

.- Añade lo siguiente en el archivo functions.php que encontrarás en wp-content -> themes -> tu_plantilla o si utilizas algún plugin para añadir código como puede ser Code Snippets

function action_woocommerce_thankyou( $order_id ) {
    // Determines whether the current visitor is a logged in user.

    if ( is_user_logged_in() ) return;

   
    // Get $order object

    $order = wc_get_order( $order_id );

    // Get the user email from the order

    $order_email = $order->get_billing_email();

    // Check if there are any users with the billing email as user or email

    $email = email_exists( $order_email ); 

    $user = username_exists( $order_email );

    // If the UID is null, then it's a guest checkout (new user)

    if ( $user == false && $email == false ) {

        // Random password with 12 chars

        $random_password = wp_generate_password();
       

        // Firstname

        $first_name = $order->get_billing_first_name();
       

        // Lastname

        $last_name = $order->get_billing_last_name();


        // Role

        $role = 'customer';


        // Create new user with email as username, newly created password and userrole          

        $user_id = wp_insert_user(

            array(

                'user_email' => $order_email,

                'user_login' => $order_email,

                'user_pass'  => $random_password,

                'first_name' => $first_name,

                'last_name'  => $last_name,

                'role'       => $role,

            )

        );
   

        // Get all WooCommerce emails Objects from WC_Emails Object instance

        $emails = WC()->mailer()->get_emails();


        // Send WooCommerce "Customer New Account" email notification with the password

        $emails['WC_Email_Customer_New_Account']->trigger( $user_id, $random_password, true );



        // (Optional) WC guest customer identification

        //update_user_meta( $user_id, 'guest', 'yes' );



        // User's billing data

        update_user_meta( $user_id, 'billing_address_1', $order->get_billing_address_1() );

        update_user_meta( $user_id, 'billing_address_2', $order->get_billing_address_2() );

        update_user_meta( $user_id, 'billing_city', $order->get_billing_city() );

        update_user_meta( $user_id, 'billing_company', $order->get_billing_company() );

        update_user_meta( $user_id, 'billing_country', $order->get_billing_country() );

        update_user_meta( $user_id, 'billing_email', $order_email );

        update_user_meta( $user_id, 'billing_first_name', $order->get_billing_first_name() );

        update_user_meta( $user_id, 'billing_last_name',  $order->get_billing_last_name() );

        update_user_meta( $user_id, 'billing_phone', $order->get_billing_phone() );

        update_user_meta( $user_id, 'billing_postcode', $order->get_billing_postcode() );

        update_user_meta( $user_id, 'billing_state', $order->get_billing_state() );



        // User's shipping data

        update_user_meta( $user_id, 'shipping_address_1', $order->get_shipping_address_1() );

        update_user_meta( $user_id, 'shipping_address_2', $order->get_shipping_address_2() );

        update_user_meta( $user_id, 'shipping_city', $order->get_shipping_city() );

        update_user_meta( $user_id, 'shipping_company', $order->get_shipping_company() );

        update_user_meta( $user_id, 'shipping_country', $order->get_shipping_country() );

        update_user_meta( $user_id, 'shipping_first_name', $order->get_shipping_first_name() );

        update_user_meta( $user_id, 'shipping_last_name', $order->get_shipping_last_name() );

        update_user_meta( $user_id, 'shipping_method', $order->get_shipping_method() );

        update_user_meta( $user_id, 'shipping_postcode', $order->get_shipping_postcode() );

        update_user_meta( $user_id, 'shipping_state', $order->get_shipping_state() );


        // Link past orders to this newly created customer

        wc_update_new_customer_past_orders( $user_id );
 

        // Auto login

        wp_set_current_user( $user_id );

        wp_set_auth_cookie( $user_id );

   

}

add_action( 'woocommerce_thankyou', 'action_woocommerce_thankyou', 10, 1 );


function filter_woocommerce_thankyou_order_received_text( $str, $order ) {

    // Determines whether the current visitor is a logged in user.

    if ( is_user_logged_in() ) return $str;    

    // Get the user email from the order

    $order_email = $order->get_billing_email();

    // Check if there are any users with the billing email as user or email

    $email = email_exists( $order_email ); 

    $user = username_exists( $order_email );


    // If the UID is null, then it's a guest checkout (new user)

    if ( $user == false && $email == false ) {

        // Link

        $link = get_permalink( get_option( 'woocommerce_myaccount_page_id' ) );


        // Format

        $format_link = '<a href="' . $link . '">logged in</a>';


        // Append to orginal string

        $str .= sprintf( __( ' An account has been automatically created for you and you are now %s. You will receive an email about this.', 'woocommerce' ), $format_link );

    }       


    return $str;
}

add_filter( 'woocommerce_thankyou_order_received_text', 'filter_woocommerce_thankyou_order_received_text', 10, 2 );

 

Revisa si con eso se soluciona y nos comentas

Un saludo

ResponderCitar
Respondido : 03/05/2023 10:39 am

Página 2 / 3