Woocommerce Ödeme Alanlarının Sırasını Değiştirmek

Ali Çınaroğlu

WordPress Uzmanı
26.04.2021

Woocommerce Ödeme Alanlarının Sırasını Değiştirmek

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.

Ali Çınaroğlu

👨🏼‍💻Web & WordPress Geliştirici 💼 flatisler.com 🏇Amatör Atçı 🪖İkinci Dünya Savaşı Meraklısı