Projeler ve ajans desteği için müsait · Hızlı yanıt, işi yapan kişiden

WooCommerce’de Yüksek Performanslı Sipariş Depolamayı (HPOS) Etkinleştirme

Ekim 2023’te yayınlanan WooCommerce 8.2 ile birlikte yüksek performanslı sipariş depolama (HPOS, Custom Order Tables olarak da bilinir) beta aşamasından çıkıp kararlı ilan edildi. 10 Ekim 2023’ten itibaren oluşturulan mağazalarda varsayılan olarak etkin; daha eski mağazaların bunu bilinçli olarak etkinleştirmesi gerekir.

Sorunumu anlatayım Mesaj gönderin

HPOS sipariş depolamada ne değiştiriyor

HPOS öncesinde WooCommerce her siparişi wp_posts tablosunda bir yazı olarak (shop_order içerik türüyle) kaydediyor, tüm verilerini (müşteri, tutarlar, durum, adres) sitedeki tüm diğer içerik türleriyle paylaşılan genel bir tablo olan wp_postmeta içinde dağınık meta veriler olarak tutuyordu. HPOS ile siparişler, arama, duruma göre filtreleme ve raporlama gibi sipariş sorguları için özel olarak yapılandırılmış özel tablolarda saklanır.

Etkinleştirme, varsayılan olarak açık olmayan mevcut mağazalarda WooCommerce > Ayarlar > Gelişmiş > Özellikler üzerinden yapılır. Geçiş süresince bir senkronizasyon modu iki yapıyı hizalı tutar; bu da bir sorun çıkması durumunda geri dönmeyi mümkün kılar.

Bir eklenti HPOS ile neden çalışmayı durdurabilir

  • WooCommerce’in CRUD API’si (get_post_meta(), WC_Order vb.) yerine doğrudan wp_posts veya wp_postmeta’ya okuma/yazma yapan bir ödeme, muhasebe veya raporlama eklentisi, HPOS etkinleştirildikten sonra verileri yanlış yerde aramaya devam eder: raporlarda eksik siparişler, güncellenmeyen durum, eksik muhasebe dışa aktarımları.
  • wp_posts üzerinde post_type = 'shop_order' filtresiyle doğrudan SQL sorgusu yapan bir tema veya özel modül, HPOS etkinleştirildikten sonra oluşturulan siparişleri artık bulamaz.
  • Bazı eklentiler HPOS uyumluluğunu eklenti başlığında açıkça belirtir; WooCommerce bunu eklenti listesinde gösterir (uyumlu, uyumsuz veya belirtilmemiş), bu sayede bir olay yaşanmadan önce kontrol etmek mümkün olur.

Mevcut bir mağazada HPOS’u nasıl etkinleştiriyorum

  1. Eklenti uyumluluğunun kontrolü

    Sipariş ile ilgili her aktif eklenti (ödeme, faturalama, kargo, raporlama) için WooCommerce’in gösterdiği HPOS uyumluluk durumunu kontrol eder, henüz uyumlu olmayanları güncellerim.

  2. Senkronizasyon modunun etkinleştirilmesi

    HPOS’u senkronizasyon açık şekilde etkinleştiririm: siparişler yeni tablolara yazılır ve wp_posts’ta da çoğaltılmaya devam eder; bu da bir eklenti sorun çıkarırsa geri dönüş kapısı bırakır.

  3. Bir sipariş örneğinde test

    Her aktif ödeme kanalında bir test siparişinin oluşturulmasını, durum değişikliğini, iadesini ve dışa aktarımını önce bir test ortamında kontrol ederim.

  4. Senkronizasyon açıkken gözlem süresi

    Raporları ve hassas eklentileri izleyerek, tam bir sipariş döngüsünü kapsayacak kadar mağazayı senkronizasyon açık şekilde çalışır bırakırım.

  5. Eski depolamanın devre dışı bırakılması

    Kararlılık doğrulandıktan sonra senkronizasyonu ve wp_posts’taki eski depolamayı devre dışı bırakırım. Bu nokta geri dönüşün olmadığı noktadır: hiçbir eklentinin siparişler için hâlâ wp_posts’a bağımlı olmadığından emin olmadan bunu devre dışı bırakmak, sessiz bir uyumluluk kaybına yol açabilir.

Daha fazlası için

İhtiyacınızı bir dakikada anlatın

Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.

origine
catalogue
extensions-premium (facultatif)
conserver (facultatif)
Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Sıkça sorulan sorular

HPOS mevcut siparişlerimi değiştirir mi?
Hayır, senkronizasyonla etkinleştirme mevcut siparişleri değiştirmeden yeni tablolara kopyalar. Sipariş geçmişi bozulmadan kalır ve normal şekilde görüntülenebilir.
HPOS’u etkinleştirdikten sonra geri dönebilir miyim?
Evet, senkronizasyon ve wp_posts’taki eski depolama devre dışı bırakılmadığı sürece. Eski sistemi kapatmadan önce senkronizasyonu bir süre açık tutmanın amacı zaten budur.
Ödeme eklentilerimin uyumlu olup olmadığını nasıl anlarım?
WooCommerce, her eklentinin bildirdiği HPOS uyumluluk durumunu aktif eklenti listesinde gösterir. Üretimde herhangi bir şeyi etkinleştirmeden önce bu bilgiyi kontrol ederim.
HPOS zorunlu mu?
10 Ekim 2023’ten itibaren oluşturulan mağazalarda varsayılan olarak etkindir. Daha eski bir mağazada etkinleştirme isteğe bağlı kalır, ancak sipariş kataloğu büyüdükçe sipariş sorgularında gerçek bir performans kazancı sağlar.
Eski depolamayı devre dışı bırakmadan önce senkronizasyonu ne kadar süre açık tutmalıyım?
Mağazanın faaliyetini temsil eden bir sipariş döngüsünü, en az kullanılan eklentiler (iadeler, ay sonu muhasebe dışa aktarımları) dahil olmak üzere kapsayacak kadar; bunların düzgün çalıştığından emin olmak için.