Internet’te benim gibi başkaları da araştırıyordur diye bu süper geek bilgiyi paylaşıyorum.

WooCommerce de varyasyonlu bir ürün tanımlarken tanımladığınız ürüne dair bir kaç varyasyon olabilir. Bu varyasyonlar kendi içinde uyumsuz olduğundan göstermek istemeyebilirsiniz.

Mesela bir tshirt mağazanız var. Ve bir tshirtun XXL boyunu sadece erkekler için ürettiniz.

Tshirt sayfasında kadın erkek seçimi yaptırmak ancak XXL türünün sadece erkek varyasyonu seçili olduğunda göstermek istiyorsunuz.

WooCommerce 30 varyasyon kombinasyonuna kadar bunu yapıyor.

Yani sizi Kadın – XXL varyasyonunu etkin olmaktan cıkardığınızda bunu göstermiyor.

Ancak 30 dan fazla varyasyonunuz varsa. Dahili mekanizma devreden çıkıp olay AJAX a devrediyor ve o zaman da seçeneklerde etkin olmayan ürün görüntülenebiliyor ve seçildiğinde “Seçiminizle eşleşen ürün bulunamadı” yazıyor.

WordPress destek forumlarında çözüm paylaşılmış. 30 varyasyon eşiğini arttırmak.

Aşağıdaki kodu functions.php dosyasına ekleyince sorun adresleniyor. Aşağıdaki kod eşiği 150 ye çıkarıyor. Siz isterseniz, maksimum varyasyon sayınız 50 veya 100 u geçmeyecekse o rakamı da 150 yerine yazabilirsiniz.

add_filter( 'woocommerce_ajax_variation_threshold', 'wc_ninja_ajax_threshold' );
function wc_ninja_ajax_threshold() {
    return 150;
}

Referans link:

https://wordpress.org/support/topic/variable-products-showing-all-possible-product-combos-even-nonexisting/