Youtube kanalım üzerinden aldığım bir soru üzerine bu ipucunu sizlerle paylaşmak istedim. Woocommerce’de ödeme ekranında bulunan bilgilerin bir sıralaması mevcut. Adınız, Soyadınız, Şirket Bilgileriniz, Ülke, Adres diye devam ediyor. Peki bu sıralamayı değiştirmek isterseniz hangi hook & filter (woocommerce e müdahale edebilmek için kullandığımız fonksiyonlar) ‘u kullanmanız gerekiyor.
[toc]
Burada kullanmamız gereken filtre woocommerce_checkout_fields filtresidir.
Bu filtre ile alanların priority (önem) değerini değiştirerek istediğimiz sıralamayı yapabiliriz.
Woocommerce Ödeme Alanlarının Sırasını Değiştirmek
Örneğin müşterinizin email adresi sizin sormak istediğiniz en önemli bilgi diyelim, bunun için mevcut email değerini, en tepeye çekmek istiyorsanız, en tepede bulunan alanın aldığı değerden daha düşüğünü vermeniz gerekecektir. Diyelim ki Ad, Soyad sonrasında email gelsin istiyorsunuz, ad,soyad’ın aldığı önem derecesine aşağıdaki tablodan bakarak, onlardan büyük, ama bir sonraki değerden küçük bir rakam yazmanız gerekecektir. Bu örneğe göre email alanının alması gereken değer, 20 ile 30 arasında olmalı.
add_filter( 'woocommerce_checkout_fields', 'odeme_ekrani_siralama' );
function odeme_ekrani_siralama( $checkout_fields ) {
$checkout_fields['billing']['billing_email']['priority'] = 21;
return $checkout_fields;
}
kodunu çalıştırdığımızda Adınız 10, soyadınız 20 aldığı için önce onlar gelecek, hemen sonrasında da 21 değerini alan email alanı gelecektir.
Woocommerce Ödeme Alanlarının Sırasını Değiştirmek Nasıl Yapılır ?
Aşağıda bulunan tabloyu kullanarak alanların yerlerini dilediğiniz gibi değiştirebilirsiniz.
Fatura Alanları – Aldığı Değer
billing_first_name - 10
billing_last_name - 20
billing_company - 30
billing_country - 40
billing_address_1 - 50
billing_address_2 - 60
billing_city - 70
billing_state - 80
billing_postcode - 90
billing_phone - 100
billing_email - 110
Gönderim Alanları – Aldığı Değer
shipping_first_name - 10
shipping_last_name - 20
shipping_company - 30
shipping_country - 40
shipping_address_1 - 50
shipping_address_2 - 60
shipping_city - 70
shipping_state - 80
shipping_postcode - 90
Bu ve benzeri ipuçları için Blog‘umu takip etmeye devam edin.