Temanın +/- miktar düğmeleri seçilen teklifi değiştirmiyor
Temanızın miktar düğmeleri seçilen teklifi değiştirmiyorsa önce indiriminizin hangi miktar kontrolünü kullandığını kontrol edin. Girilen bir miktarın bir kademeye düşürülmesi, düğmenin widget'a hiç güncelleme göndermemesinden farklıdır.
8 girdim ancak sepete 6 ürün eklendi
Bundlex'in kendi miktar seçicisi olmadan kullanılan olağan kurulumda tema input alanı yapılandırılmış kademeler arasında gezinir. Tam kademe miktarı ilgili kartı seçebilirken, iki kademe arasındaki bir miktar mevcut teklifin seçili kalmasına neden olabilir. Sepete ekleme işlemi daha sonra bu teklifin miktarını kullanır. "6 al" seçiliyken 8 girmek, sepete 8 ürün ekleneceğini garanti etmez.
Müşterilerin esnek miktarlar seçmesine izin vermek için, kullanılabildiğinde indirimin Miktar seçici seçeneğini Ek ürünler sekmesinde etkinleştirin. Aboneliklerle birlikte çalışır. Devre dışıysa kontrol paneli, bu seçeneği engelleyen ayarın adını gösterir; birlikte kullanılamadığı ayarlara bakın.
Bundlex'in seçicisi etkin olduğunda tema input'u ikinci bir miktarı kontrol etmek yerine seçicinin sonucunu yansıtır. Bazı mağazalarda düz kademeler için destek ekibinin etkinleştirdiği ayrı bir yerel miktar kurulumu bulunur; bu varsayılan değildir. Tema miktarı davranışına bakın.
İsteğe bağlı teklif seçimi açık ve hiçbir teklif seçili değilse tema kontrolleri normal şekilde çalışır ve teklif kartları arasında gezinmez. Aşağıdaki kontroller, kademe gezinme kurulumunda etkin bir teklifle ilgilidir.
Senkronizasyonun nasıl çalışması gerekir
Akılda tutulması gereken iki yön vardır:
- Tekliften miktara: müşteri bir teklife, örneğin 1 al, 2 al veya 3 al, tıkladığında widget tema miktar input alanını teklifin miktarına ayarlar. Bu, Bundlex'in doğru miktar input alanını bulmasına bağlıdır.
- Miktardan teklife: müşteri temanın +/- düğmeleriyle veya yazarak miktarı değiştirdiğinde widget yeni değeri algılamalı ve miktarı tam olarak eşleşen teklifi seçmelidir.
Tema input'u bir olay göndermeden değiştirdiğinde veya widget farklı bir miktar input'unu izlediğinde ikinci yön bozulabilir. Kademe dışı bir sayı tek başına olay sorunu olduğunu kanıtlamaz ve teklifin seçiminin kaldırılacağını garanti etmez.
+/- düğmeleri teklifi neden güncellemiyor
Widget, miktar input alanındaki yerel change ve input olaylarını dinler. Normal yazma işlemi bu olayları tetikler; temanın özel +/- düğmesi bunları tetiklemeyebilir.
Ancak birçok tema, +/- düğmelerini input alanının değerini doğrudan JavaScript ile ayarlayarak uygular, örneğin input.value = newValue. Değeri bu şekilde atamak not change veya input olaylarını tetiklemez. Sayı ekranda değişir ancak hiçbir olay gönderilmez; bu nedenle widget miktarın değiştiğini öğrenemez ve seçilen teklif olduğu yerde kalır.
Bu durum belirli bir framework'e özgü değildir. Programatik olarak yapılan her değer ataması olayları atlar. Yalnızca yazmak gibi gerçek kullanıcı etkileşimleri bu olayları tetikler. Shopify'ın
<quantity-input>özel öğesi üzerine kurulu temalar, örneğin Dawn, değeri güncelledikten sonra birchangeolayı gönderir; bu nedenle bu temalar kutudan çıktığı hâliyle çalışır.
Sorunun nedenini nasıl doğrularsınız
- Tarayıcınızın geliştirici araçlarını açın, Mac'te F12 veya Cmd+Option+I kullanabilirsiniz, ve Console sekmesine gidin.
- Ürün sayfasında bir +/- düğmesine tıklayın.
- Kullanılabilir bir teklifle tam olarak eşleşen bir miktar deneyin. Sayı değişiyor ancak seçilen teklif değişmiyorsa tema geliştiricinizden, Bundlex'in izlediği miktar input alanında düğmenin change veya input olayı gönderip göndermediğini kontrol etmesini isteyin.
Bu sorunla karşılaşan temalar, Shopify'ın <quantity-input> web bileşeni yerine değeri doğrudan ayarlayan özel +/- düğmeleri kullanma eğilimindedir.
Çözüm: bir change etkinliği gönderin
Bu çözüm temada uygulanır, bu nedenle tema kodunuzu yöneten kişi için hızlı bir değişikliktir. Tema geliştiricinizden, +/- işleyicisi yeni miktar değerini ayarladıktan hemen sonra bir change etkinliği göndermesini isteyin:
input.dispatchEvent(new Event('change', { bubbles: true }));
Burada input, güncellenen miktar giriş öğesidir. Bu işlem, Bundlex dahil olmak üzere bu etkinliği dinleyen komut dosyalarını bilgilendirir. Değişiklikten sonra temanın miktar düğmelerini ve sepetini test edin.
Yinelenen miktar girişi durumu, yapışkan sepet çubukları
Bazı temalar, ürün formunu ve ikinci bir miktar girişini kopyalayan yapışkan veya sabit bir "Sepete ekle" çubuğu ekler. Her iki giriş de çoğu zaman aynı name="quantity" değerini, hatta bazen aynı id değerini paylaşır. Bu durumda Bundlex'in varsayılan seçicisi input[name="quantity"] yanlış öğeye bağlanabilir ve teklif ile ana formun miktarı eşleşmeyebilir.
Yinelenen girişlerin bulunduğunu doğrulama
- Geliştirici araçlarını açın ve Console sekmesine gidin.
- Şunu çalıştırın:
document.querySelectorAll('input[name="quantity"]').length - Sonuç 1'den büyükse sayfanızda birden fazla miktar girişi vardır.
Çözüm: özel bir Miktar girişi seçicisi
Bundlex'i, yapışkan çubuğu hariç tutarak yalnızca ana formun miktar girişini hedefleyecek şekilde ayarlayın. Yeni bir seçici çözümü için ürün URL'siyle birlikte destek ekibiyle iletişime geçin; destek ekibi bunu mağazanın widget ayarlarında yapılandırabilir. Uygulama yerleştirmesine daha önce kaydedilmiş eski bir seçiciyi incelemeniz gerekiyorsa konumu şöyledir:
- Shopify yöneticinizde Tema Düzenleyicisi'ni açın.
- Uygulama yerleştirmeleri bölümüne gidin ve Bundlex Bundles'ı bulun.
- Gelişmiş ayarları göster seçeneğini etkinleştirin, ardından Miktar girişi seçicisi alanını yalnızca ana formun miktar girişini hedefleyen bir seçiciyle ayarlayın.
Tam seçici temanıza bağlıdır. Bazı temalarda çalışan iki örnek:
.product-form__item--submit input[name="quantity"]
form.shopify-product-form:not(#addtocart-sticky form) input[name="quantity"]
Seçicilerin hiçbiri temanızda çalışmazsa doğru seçicinin belirlenebilmesi için ürün sayfası URL'sini destek ekibiyle paylaşın. Destek ekibi daha önce bir geçersiz kılma yapılandırdıysa bu ayar tema alanına göre öncelik kazanabilir.
Ne zaman iletişime geçilmeli
+/- düğmelerinin bir etkinlik göndermeden değeri değiştirdiğini veya yinelenen miktar girişleri bulunduğunu doğruladıysanız ve yukarıdaki çözümler sorunu gidermediyse ürün sayfası URL'siyle birlikte destek ekibiyle iletişime geçin. Tarayıcı konsolundaki [Bundlex] mesajlarını ve ürün formunun HTML kodunu da eklemeniz yardımcı olur.
Bu makale faydalı oldu mu?
Geri bildiriminiz belgelerimizi geliştirmemize yardımcı olur.