WooCommerce gibi popüler platformlar, genellikle kullanıcıların ödeme işlemi sırasında bir dizi zorunlu alan doldurmasını ister. Ancak, bazı durumlarda bu alanların zorunlu olmaması veya tamamen gizlenmesi gerekebilir. Özellikle, bazı işletmeler sadece belirli bilgilerin alınmasını isterken, gereksiz alanların eklenmesi kullanıcıları zorlayabilir ve alışveriş deneyimlerini olumsuz etkileyebilir. Bu yazımızda, WooCommerce ödeme sayfasındaki sokak adresi, posta kodu, ilçe/semt ve şehir gibi alanları nasıl kaldırabileceğinizi veya gizleyebileceğinizi adım adım anlatacağız. Hem kullanıcı deneyimini iyileştirmek hem de gereksiz veri toplamaktan kaçınmak için bu ipuçları size yardımcı olacaktır.
WooCommerce Ödeme Sayfasında Zorunlu Alanları Kaldırmak
WooCommerce’de sokak adresi, posta kodu, ilçe/semt, şehir gibi alanları zorunlu olmadan gizlemek için aşağıdaki gibi bir kod ekleyebilirsiniz. Bu kodu tema dosyanıza (örneğin functions.php
) veya bir özel plugin dosyasına ekleyebilirsiniz.
Adımlar:
- Tema dosyanızın
functions.php
dosyasını düzenleyin: Kodunuzu temanızınfunctions.php
dosyasına ekleyin. (Child Tema kullanıyorsanız, bu dosyayı düzenlediğinizden emin olun.) - Aşağıdaki kodu ekleyin:
// WooCommerce ödeme sayfasındaki zorunlu alanları kaldır
add_filter( 'woocommerce_checkout_fields', 'remove_checkout_fields', 10, 1 );
function remove_checkout_fields( $fields ) {
// Sokak adresini ve ilgili alanları gizleyin
unset( $fields['billing']['billing_address_1'] );
unset( $fields['billing']['billing_address_2'] );
unset( $fields['billing']['billing_city'] );
unset( $fields['billing']['billing_postcode'] );
unset( $fields['billing']['billing_state'] );
// Diğer zorunlu alanları kaldırmak için örnek
unset( $fields['billing']['billing_phone'] ); // Telefon numarasını zorunluğunu kaldır ve gizle
unset( $fields['billing']['billing_email'] ); // E-posta adresini numarasını zorunluğunu kaldır ve gizle
// Gerekirse başka alanlar da eklenebilir.
return $fields;
}
Not: Sorun yaşamamak için WooCommerce ve temanızın güncel olduğundan emin olun.
Açıklamalar:
- Bu kod, ödeme sayfasındaki adres ve şehir gibi alanları kaldırır.
billing_address_1
vebilling_address_2
gibi alanlar kaldırıldığında, kullanıcılar bu bilgileri girmezler.- Zorunlu olmayan başka alanları da kaldırabilirsiniz.
Kodda yer alan unset()
fonksiyonu, ilgili alanı tamamen kaldırır. Eğer sadece bu alanları görünür yapmadan gizlemek isterseniz, CSS kullanarak da gizleme yapabilirsiniz.
WooCommerce Ödeme Sayfasında Zorunlu Alanları Gizlemek
Eğer adres alanlarını tamamen gizlemek istemiyor, ancak zorunlu olmamalarını istiyorsanız, aşağıdaki kodu kullanabilirsiniz:
Adımlar:
- Tema dosyanızın
functions.php
dosyasını düzenleyin: Kodunuzu temanızınfunctions.php
dosyasına ekleyin. (Child Tema kullanıyorsanız, bu dosyayı düzenlediğinizden emin olun.) - Aşağıdaki kodu ekleyin:
// WooCommerce'deki belirli alanları zorunlu olmaktan çıkar
add_filter( 'woocommerce_checkout_fields', 'make_optional_checkout_fields', 10, 1 );
function make_optional_checkout_fields( $fields ) {
// Sokak adresi 1 ve 2'yi zorunlu olmaktan çıkar
$fields['billing']['billing_address_1']['required'] = false;
$fields['billing']['billing_address_2']['required'] = false;
// Posta kodunu zorunlu olmaktan çıkar
$fields['billing']['billing_postcode']['required'] = false;
// Şehir alanını zorunlu olmaktan çıkar
$fields['billing']['billing_city']['required'] = false;
// İl/ilçe alanını zorunlu olmaktan çıkar
$fields['billing']['billing_state']['required'] = false;
return $fields;
}
Bu kod, sadece bu alanların zorunlu olmasını engeller ve görünür olmalarını sağlamaya devam eder. Hangi yaklaşımı tercih edersiniz?