Cómo agregar la verificación de correo electrónico de registro de WooCommerce
Publicado: 2021-05-24¿Desea agregar una verificación de correo electrónico de registro de WooCommerce personalizada? Siga leyendo, ya que esta publicación le proporcionará una solución simple.
No es un proceso complicado agregar la verificación de correo electrónico de registro de WooCommerce. Sin embargo, es posible que necesite algunas habilidades básicas de codificación para lograrlo. Sí, puede usar un complemento, pero pueden terminar inflando su sitio. Esta es también una forma segura de personalizar.
También recomendamos crear un tema hijo. Esto asegurará que sus cambios no se pierdan durante una actualización.
Agregar verificación de correo electrónico de registro de WooCommerce
Al final de esta publicación, podrá agregar la verificación de correo electrónico de registro de WooCommerce. Creamos un fragmento de código personalizado para lograr esto. Lo guiaremos a través de todos los pasos que debe seguir para que sea más fácil para los principiantes implementar esta solución.
Entremos directamente en ello.
Pasos para agregar la verificación de correo electrónico de registro de WooCommerce
Antes de continuar, recuerda hacer una copia de seguridad de tu sitio. Esto le ayudará a volver a la versión anterior si se produce un problema.
Estos son los sencillos pasos que debe seguir:
- Inicie sesión en su sitio de WordPress y acceda al Panel como usuario administrador.
- En el menú del panel, haga clic en Menú de apariencia > Menú del editor de temas . Cuando se abra la página del Editor de temas, busque el archivo de funciones del tema donde agregaremos la función que agregará la funcionalidad del Número GTIN en los Productos en WooCommerce.
- Agregue el siguiente código al archivo php :
// this is just to prevent the user log in automatically after register function wc_registration_redirect( $redirect_to ) { wp_logout(); wp_redirect( '/sign-in/?q='); exit; } // when user login, we will check whether this guy email is verify function wp_authenticate_user( $userdata ) { $isActivated = get_user_meta($userdata->ID, 'is_activated', true); if ( !$isActivated ) { $userdata = new WP_Error( 'inkfool_confirmation_error', __( '<strong>ERROR:</strong> Your account has to be activated before you can login. You can resend by clicking <a href="/sign-in/?u='.$userdata->ID.'">here</a>', 'inkfool' ) ); } &return $userdata; } // when a user register we need to send them an email to verify their account function my_user_register($user_id) { // get user data $user_info = get_userdata($user_id); // create md5 code to verify later $code = md5(time()); // make it into a code to send it to user via email $string = array('id'=>$user_id, 'code'=>$code); // create the activation code and activation status update_user_meta($user_id, 'is_activated', 0); update_user_meta($user_id, 'activationcode', $code); ; // create the url $url = get_site_url(). '/sign-in/?p=' .base64_encode( serialize($string)); // basically we will edit here to make this nicer $html = 'Please click the following links <br/><br/> <a href="'.$url.'">'.$url.'</a>'; // send an email out to user wc_mail($user_info->user_email, __('Please activate your account'), $html); } // we need this to handle all the getty hacks i made function my_init(){ // check whether we get the activation message if(isset($_GET['p'])){ $data = unserialize(base64_decode($_GET['p'])); $code = get_user_meta($data['id'], 'activationcode', true); // check whether the code given is the same as ours if($code == $data['code']){ // update the db on the activation process update_user_meta($data['id'], 'is_activated', 1); wc_add_notice( __( '<strong>Success:</strong> Your account has been activated! ', 'inkfool' )  ); }else{ wc_add_notice( __( '<strong>Error:</strong> Activation fails, please contact our administrator. ', 'inkfool' )  ); } } if(isset($_GET['q'])){ wc_add_notice( __( '<strong>Error:</strong> Your account has to be activated before you can login. Please check your email.', 'inkfool' ) ); } if(isset($_GET['u'])){ my_user_register($_GET['u']); wc_add_notice( __( '<strong>Succes:</strong> Your activation email has been resend. Please check your email.', 'inkfool' ) ); } } // hooks handler add_action( 'init', 'my_init' ); add_filter('woocommerce_registration_redirect', 'wc_registration_redirect'); add_filter('wp_authenticate_user', 'wp_authenticate_user',10,2); add_action('user_register', 'my_user_register',10,2);
Conclusión
A estas alturas, los clientes de su tienda deben verificar sus correos electrónicos después de registrarse para poder comprar productos en su tienda. Este código ha sido probado y funciona bien.
Si tiene problemas para implementar esta solución, debe dejar que un profesional inserte el código por usted o usar un complemento.
Esperamos que esta solución lo haya ayudado a agregar la verificación de correo electrónico de registro de WooCommerce.
Artículos similares
- Los 30 mejores complementos de reserva de WordPress para reservas en línea
- Cómo agregar lista de deseos en WooCommerce
- Cómo crear una paginación de números en WordPress sin usar un complemento
- Cómo cambiar el eslogan del tema de la tienda WooCommerce
- Cómo agregar el inicio de sesión social en el inicio de sesión social de WooCommerce
- Cómo agregar el botón Ver carrito en WooCommerce
- Cómo seleccionar todo excepto el último hijo en CSS » Ejemplo de CSS no último hijo
- Cómo instalar Facebook Pixel en WooCommerce
- Cómo enviar un correo electrónico sobre el cambio de estado en WooCommerce
- Cómo cambiar la plantilla de correo electrónico en WooCommerce
- Cómo verificar si el usuario ha iniciado sesión en WordPress
- Cómo eliminar una categoría sin categorizar en WordPress WooCommerce
- Cómo configurar WooCommerce Compre uno y llévese otro
- Cómo agregar SKU de producto en WooCommerce
- Cómo eliminar el título de la categoría del producto WooCommerce
- Más de 30 mejores complementos de búsqueda de WordPress para mejorar la búsqueda y el SEO de su sitio
- Cómo crear páginas separadas de inicio de sesión y registro en WooCommerce