WooCommerce Sipariş Durumları Nasıl Özelleştirilir? (Adım Adım Rehber)
WooCommerce sipariş durumları genellikle varsayılan olarak sunulan 7 temel statü ile sınırlıdır. Ancak çoğu e-ticaret sitesi, iş akışına özel sipariş durumları tanımlamak ister. Bu rehberde özel sipariş durumu ekleme işlemini functions.php dosyası üzerinden adım adım anlatacağız.
1. Varsayılan WooCommerce Sipariş Durumları Nelerdir?
- Beklemede (Pending)
- İşleniyor (Processing)
- Tamamlandı (Completed)
- İptal Edildi (Cancelled)
- İade Edildi (Refunded)
- Başarısız (Failed)
- Beklemede Ödeme (On Hold)
2. Yeni Bir Sipariş Durumu Nasıl Eklenir?
Aşağıdaki kodu functions.php dosyanızın en altına ekleyerek özel bir durum tanımlayabilirsiniz:
add_action('init', 'register_custom_order_status');
function register_custom_order_status() {
register_post_status('wc-hazirlaniyor', array(
'label' => 'Hazırlanıyor',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop('Hazırlanıyor <span class="count">(%s)</span>', 'Hazırlanıyor <span class="count">(%s)</span>')
));
}
3. Sipariş Durumunu Listeye Ekleme
Yeni durumun sipariş detaylarında görünmesi için aşağıdaki filtreyi ekleyin:
add_filter('wc_order_statuses', 'add_custom_order_status');
function add_custom_order_status($order_statuses) {
$order_statuses['wc-hazirlaniyor'] = 'Hazırlanıyor';
return $order_statuses;
}
4. Nerelerde Kullanılabilir?
Artık bu özel sipariş durumu manuel olarak sipariş detay sayfasından atanabilir. Ayrıca bazı özel wc_order_status kontrolleriyle ödeme geçişlerinde otomatik olarak da kullanılabilir.
5. Neden Kullanılır?
e-ticaret özelleştirme sürecinde her mağaza farklı statü adımlarına ihtiyaç duyar. Örneğin:
- Kargoya Verildi
- Hazırlanıyor
- Depodan Çıktı
Sonuç
WooCommerce sipariş durumları üzerine bu özelleştirme, müşterilerin sipariş süreçlerini daha iyi anlamasını sağlar. Kodla uğraşmak istemeyenler için eklenti alternatifleri de mevcut olsa da functions.php ile işlem yapmak site performansı açısından çok daha sağlıklıdır.