WooCommerce Kayıt E-posta Doğrulaması Nasıl Eklenir
Yayınlanan: 2021-05-24Özel bir WooCommerce kayıt e-posta doğrulaması eklemek istiyor musunuz? Okumaya devam edin, çünkü bu gönderi sizin için basit bir çözüm sağlayacaktır.
WooCommerce kayıt e-posta doğrulamasını eklemek karmaşık bir süreç değildir. Ancak, bunu başarmak için bazı temel kodlama becerilerine ihtiyacınız olabilir. Evet, bir eklenti kullanabilirsiniz, ancak sitenizi şişirmeye son verebilirler. Bu aynı zamanda kişiselleştirme yapmanın güvenli bir yoludur.
Ayrıca bir alt tema oluşturmanızı öneririz. Bu, bir güncelleme sırasında değişikliklerinizin kaybolmamasını sağlayacaktır.
WooCommerce Kayıt E-posta Doğrulaması Ekle
Bu gönderinin sonunda, WooCommerce kayıt e-posta doğrulamasını ekleyebileceksiniz. Bunu başarmak için özel bir kod parçacığı oluşturduk. Yeni başlayanların bu çözümü uygulamasını kolaylaştırmak için izlemeniz gereken tüm adımlarda size yol göstereceğiz.
Hemen konuya girelim.
WooCommerce Kayıt E-posta Doğrulaması Ekleme Adımları
Devam etmeden önce sitenizi yedeklemeyi unutmayın. Bu, bir sorun oluştuğunda önceki sürüme dönmenize yardımcı olacaktır.
İşte izlemeniz gereken basit adımlar:
- WordPress sitenize giriş yapın ve yönetici kullanıcı olarak Gösterge Tablosuna erişin.
- Pano menüsünden Görünüm Menüsü > Tema Düzenleyici Menüsü öğesine tıklayın. Tema Düzenleyici sayfası açıldığında, WooCommerce'de Ürünlerde GTIN Numarası işlevini ekleyecek işlevi ekleyeceğimiz tema işlevleri dosyasını arayın.
- php dosyasına aşağıdaki kodu ekleyin :
// 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);
Çözüm
Şimdiye kadar, mağazanızdaki müşterilerin mağazanızdan ürün satın alabilmeleri için kayıt olduktan sonra e-postalarını doğrulamaları gerekir. Bu kod test edildi ve iyi çalışıyor.
Bu çözümü uygulamada sorun yaşıyorsanız, kodu sizin için bir profesyonelin eklemesine veya bir eklenti kullanmasına izin vermelisiniz.
Bu çözümün WooCommerce kayıt e-posta doğrulamasını eklemenize yardımcı olacağını umuyoruz.
Benzer Makaleler
- Çevrimiçi Rezervasyon için En İyi 30+ En İyi WordPress Rezervasyon Eklentisi
- WooCommerce'de İstek Listesi Nasıl Eklenir
- Eklenti Kullanmadan WordPress'te Numara Sayfalandırma Nasıl Oluşturulur
- Vitrin Teması Etiket Satırı Nasıl Değiştirilir WooCommerce
- WooCommerce Sosyal Girişinde Sosyal Giriş Nasıl Eklenir
- WooCommerce'de Sepeti Görüntüle Düğmesi Nasıl Eklenir
- CSS'de Son Çocuk Hariç Tümü Nasıl Seçilir » CSS Son Çocuk Değil Örneği
- WooCommerce'de Facebook Piksel Nasıl Kurulur
- WooCommerce'de Durum Değişikliğinde E-posta Nasıl Gönderilir
- WooCommerce'de E-posta Şablonu Nasıl Değiştirilir
- Kullanıcının WordPress'te Oturum Açmış Olup Olmadığı Nasıl Kontrol Edilir
- WordPress WooCommerce'de Kategorize Edilmemiş Kategori Nasıl Kaldırılır
- WooCommerce Nasıl Kurulur
- WooCommerce'de Ürün SKU'su Nasıl Eklenir
- Ürün Kategori Başlığı Nasıl Kaldırılır WooCommerce
- Site Aramanızı ve SEO'nuzu Geliştirmek için 30'dan Fazla En İyi WordPress Arama Eklentisi
- WooCommerce'de Ayrı Giriş ve Kayıt Sayfaları Nasıl Oluşturulur