Her WooCommerce ara sürümü size iki şeyi birden anlatır: neyin bozulduğunu ve birilerinin sessizce artık tartışılmaz saydığı neyin devreye girdiğini. WooCommerce 10.9.2, 2 Temmuz’da yayımlandı ve kısacık değişiklik notunda tam olarak bu ikisini yapıyor. Değişiklik günlüğüne göz gezdirdiyseniz muhtemelen “anlık bildirim” ifadesini gördünüz ve geçtiniz. Bu bir hata olurdu.

Yirmi yıldır ajansların tam bu tarz sürümlerle nasıl ısırıldığını izliyorum. Başlığın zararsız göründüğü — ofiste kimsenin umursamadığı bir mobil uygulama özelliği — ama gerçek yükün bir veritabanı güncellemesi ve ayarlar SDK’sında ölümcül hata koruması olduğu sürümler. Her ikisi de filodaki her mağazayı etkiliyor.

Bunu bir sürüm notu okuru gibi değil, bir işletmeci gibi okuyun. İşte neyin değiştiği, neden önemli olduğu ve sabah toplantısından önce ne yapmanız gerektiği.

Gerçekten yeni olan ne

WooCommerce 10.9.2, iki değişiklik, güvenlik güncellemesi yok, bir veritabanı güncellemesi olan bir ara sürüm. Hepsi bu. Resmi sürüm notlarının tam metni tek ekrana sığacak kadar kısa ve her kelimesi ağır.

İlk değişiklik bir düzeltme. 10.8.x’ten 10.9.x’e yerinde yükseltmelerde bazı mağazalar ölümcül bir hataya çarpıyordu; çünkü eski WC_Settings_Page kod yolu, otomatik yükleyici henüz yetişmeden yeni ayarlar SDK sınıflarına çağrı yapıyordu. Belirti wp-admin’de beyaz ekrandı ve gerçek mağazalarda Class 'Automattic\WooCommerce\Admin\Settings\SettingsSectionRegistry' not found hatasıyla düşüyordu. Tam yeniden üretimi 25 Haziran’da 10.8.1 → 10.9.1 yükseltmesinden sonra yönetim panelini kaybeden bir satıcı tarafından açılan issue #66031‘de görebilirsiniz. Sürüm notlarının atıf verdiği düzeltme PR #65972: yeni ayarlar SDK sınıflarını savunmacı kontrollerle koru ve kullanımdan kaldırılan Automattic\WooCommerce\Admin\API\Settings sınıfını, 10.8’den kalma REST denetleyici kayıtları güvenle çalışabilsin diye no-op uyumluluk sapağı olarak geri getir.

İkinci değişiklik, madde işareti kılığına girmiş bir politika kararı. PR #66088 — “Özellik bayrağını kullanımdan kaldırarak anlık bildirimleri her zaman etkinleştir”, Hannah Tinkler tarafından yazılıp 1 Temmuz’da birleştirildi — özellik bayrağını FeaturesController’dan tamamen kaldırıyor. Özellik artık depolanan seçenek değerinden bağımsız olarak her zaman true döndürüyor. Yeni bir veritabanı taşıması, wc_update_10902_remove_deprecated_push_notifications_option, yükseltmede çalışıp bazı mağazaların 10.5.0 otomatik yükleme taşımasından beri tuttuğu eski seçenek satırını siliyor. Geriye kalan tek kaçış kapısı bir filtre: varsayılan olarak false döndüren, boolean’a zorlanan woocommerce_enhanced_push_notifications_disabled.

Burada bağlam önemli. Gelişmiş anlık bildirimler 10.9.0’da 23 Haziran’da varsayılan olarak geldi ama 10.9.2 notlarının açıkça yazdığı gibi, beta döneminde bayrağı kapatan mağazalar yükseltmeden sonra da kapalı kaldı. 10.9.2 bu boşluğu kapatıyor. woocommerce.com/document/woo-mobile-notifications adresinde belgelenen özellik, Woo mobil uygulaması 24.9+ sürümünün sipariş, stok ve yorum bildirimlerini Jetpack aracılığı olmadan doğrudan mağazadan almasına izin veriyor. Satıcılar ya hep ya hiç mantığı yerine eşik değerleri alıyor: yüksek değerli sipariş alt sınırı, düşük puanlı yorum tavanı.

WordPress ve WooCommerce ekipleri için neden önemli

Farklı sebeplerle iki kitle önemsemeli.

Bir filoyu işleten ajanslar 10.9.2’yi zorunlu bir yükseltme olarak görmeli, “olsa iyi olur” olarak değil. Ölümcül hata koruması, tam olarak sıradan bir salı gecesi güncellemesini iki saatlik bir olaya çeviren düzeltme sınıfı; çünkü çökme wp-admin’de, yani bir şeylerin ters gittiğini fark ettiğiniz yüzeyde oluyor. Yükseltme yordamınız hâlâ üretim ortamında “Güncelle”ye tıklayıp umut etmekten ibaretse bu sürüm o yordamı değiştirmek için iyi bir bahane. Aşamalı dağıtımlara geçin, 10.9.0 ya da 10.9.1’de kalan mağazaları kısa tutun ve çekirdek eklenti güncellemesinden sonra opcache’i temizleyin.

Eklenti yazarları ve dahili Automattic\WooCommerce\Admin\API\Settings sınıfına dayanmış olan herkes bu ifadeyi kaçırmamalı. WooCommerce size, sürüm notundaki tek satırla, eski bir REST denetleyicisini kaldırdıklarını ve uyumluluk sapağını yalnızca silince yükseltme sırasında ölümcül hataya yol açtığı için tuttuklarını söylüyor. O sapak kararlı bir arayüz değil. Yaşam desteği. Eklentiniz bu sınıfı üretiyorsa, 28 Temmuz’daki 11.0 sapağı sizinle birlikte götürmeden önce hemen yeniden yazın. Aynı disiplin SDK öncesi ayar yollarına dokunan her şey için geçerli — WooCommerce açıkça göç ortasında ve göç ortası, üçüncü taraf kodun mahsur kaldığı yerdir.

Mobil öncelikli işletme ekibi olan mağaza sahipleri de dikkat etmeli. Mağazanız 10.9.0’da anlık bildirimler bilinçli olarak kapalıyken çalışıyorduysa, o “kapalı” ayarı yükseltmede etkisiz hale gelmek üzere. Taşıma seçeneği siliyor; FeaturesController artık onu okumuyor. 10.9.2’den sonra özelliği kapalı tutmanın desteklenen tek yolu woocommerce_enhanced_push_notifications_disabled filtresine bir kayıt eklemek. Bu adımı atlarsanız Woo mobil uygulamasından sonraki satıcı girişinde mağaza onay vermediğiniz bildirimleri neşeyle fırlatmaya başlayacak. Felaket değil ama sessizlik isteyen bir müşteriye açıklaması utandırıcı.

Ben ne yapardım (ya da yapmazdım)

Üç somut adım.

Birincisi, yükseltmeyi gerçek üretim veritabanı üzerinden hazırlık ortamında koşturun. Veritabanı taşıması küçük ve idempotent, ama 10.9.1’deki ölümcül hata sınıfı bize 10.8.x yükseltme yollarının yalnızca gerçek sınıf otomatik yükleyici durumu altında ortaya çıkan sürprizler taşıdığını öğretti. 10.9.2’nin temiz kurulumu bir test değildir; üretimin bir kopyası testtir. wp-admin’in yüklendiğini, ayar sekmelerinin çizildiğini doğrulayın, sonra üretime geçin.

İkincisi, anlık bildirim politikasını mağaza bazında, arayüzde değil kodda kararlaştırın. Bunu taşımadan sonra seçenek değerinin ne olduğuna bırakmayın. Özelliği isteyen mağazalar için: hiçbir şey yapmayın, 10.9.2’yi yayınlayın, yola devam edin. Müşterinin sessizlik istediği mağazalar için: woocommerce_enhanced_push_notifications_disabled filtresinden true döndüren tek satırlık bir mu-plugin bırakın. Sürüm kontrollü, gözden geçirilebilir, gelecekteki yükseltmelerden sağ çıkar. Bu iş için arayüz düğmesine yaslanmayın — WooCommerce az önce düğmeyi ayağınızın altından çekebileceğini kanıtladı.

Üçüncüsü, kod tabanınızı SDK öncesi ayar isim alanlarına yapılmış her türlü kalıntı referans için tarayın. Siz ya da baktığınız bir eklenti Automattic\WooCommerce\Admin\API\Settings‘i doğrudan üretiyorsa ya da belgelenmiş API’nin parçası olmayan dahili ayar sınıflarını genişletiyorsa, yeniden yazımı 11.0 penceresine değil şu anki 10.9 penceresine planlayın. 10.9.2’deki sapak bir pist ve pist kısa. WooCommerce 11.0, 28 Temmuz’da, blok tabanlı ürün düzenleyici betasının kaldırılması ve ürün nesne önbelleğinin varsayılan olarak etkinleşmesiyle birlikte geliyor. Ayrıca yükseltmeden sonraki gün bir ayarlar sınıfı gerilemesini keşfetmek istediğiniz bir sürüm değil.

10.9.2’deki her şey sessiz. Zaten mesele bu. Bu tarz ara sürümler olgunluk katmanını çalıştırmanın bedelidir — yönlendirmeler, taşımalar, uyumluluk sapakları, filtre biçimindeki kaçış kapıları. Kimse ana konuşmada bunlardan bahsetmiyor ve tam olarak ilk on bin alışverişçiniz geldiği gün WooCommerce’in çalışmaya devam etmesini sağlayan şey bunlar.

Filoyu güncelleyin, gereken yere filtreyi bırakın ve 11.0 planlamasına geçin.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Close Search Window