Salta al contingut
WooRescueHQ

Servei especialitzat

Suport HPOS per a WooCommerce

High-Performance Order Storage treu les comandes de WooCommerce de les taules d’entrades de WordPress i les porta a taules pròpies. La majoria dels problemes venen de codi que encara llegeix les comandes a l’antiga. Auditem, migrem, verifiquem i arreglem, sense posar en risc les dades de comandes.

Què cobreix un encàrrec HPOS

  • Auditoria del codi a mida, el tema i les extensions per trobar accessos directes a comandes
  • Estat de compatibilitat de cada extensió activa
  • Reescriptura del codi incompatible amb l’API CRUD de WooCommerce (wc_get_orders(), $order->get_meta())
  • Un pla de migració amb mode de compatibilitat i sincronització
  • Verificació de les dades de comandes abans i després del canvi
  • Una via de tornada enrere mentre la sincronització continuï activa

Què reps

  • Un informe d’auditoria: què fallarà i per què, amb referències a fitxer i línia
  • Codi corregit i compatible amb HPOS
  • Una botiga migrada amb les dades de comandes verificades
  • Documentació del que ha canviat per a futurs desenvolupadors

Com es fa una migració a HPOS segura

  1. Auditar. Buscar al tema, als plugins a mida i als snippets accessos directes a comandes: get_post_meta() o update_post_meta() amb IDs de comanda, WP_Query o get_posts() amb shop_order, i SQL contra wp_posts o wp_postmeta per a comandes.
  2. Corregir el codi perquè faci servir l’API CRUD de WooCommerce, i declarar la compatibilitat amb HPOS als plugins a mida.
  3. Activar el mode de compatibilitat perquè tots dos emmagatzematges es mantinguin sincronitzats, i deixar que la sincronització acabi.
  4. Verificar que les dades de comandes coincideixen entre emmagatzematges, primer a staging.
  5. Canviar l’emmagatzematge principal a HPOS, mantenint la sincronització com a xarxa de seguretat.
  6. Desactivar la sincronització només quan la botiga hagi funcionat correctament durant un temps.
PHPplugin-a-mida.php
// Abans: falla quan HPOS és l'emmagatzematge principal
$po = get_post_meta( $order_id, '_po_number', true );

// Després: funciona amb tots dos emmagatzematges
$order = wc_get_order( $order_id );
$po    = $order ? $order->get_meta( '_po_number' ) : '';

FAQ

Preguntes freqüents

HPOS ve activat per defecte?

A les botigues noves, sí: és l’opció per defecte des de WooCommerce 8.2. Les botigues existents mantenen l’emmagatzematge antic en entrades fins que migren.

Podem tornar enrere si alguna cosa va malament?

Mentre el mode de compatibilitat mantingui els dos emmagatzematges sincronitzats, és possible tornar a canviar l’emmagatzematge principal. Per això la sincronització continua activa fins que la botiga ha funcionat correctament amb HPOS durant un temps.

El nostre codi fa servir get_post_meta() sobre comandes. Fallarà?

Quan HPOS sigui l’emmagatzematge principal, sí: llegeix les taules d’entrades, que ja no són la font de la veritat. Fes servir l’objecte de la comanda: wc_get_order( $id )->get_meta( 'clau' ).

$ descriu el problema

Tens un problema amb WooCommerce?Sol·licita una diagnosi.

Explica'ns què falla, què ha canviat darrerament i com afecta el negoci. Revisem cada sol·licitud i et recomanem el pas següent.

Sol·licitar una diagnosi Veure serveis i preus

No enviïs mai contrasenyes, claus d'API ni dades de targetes a través del formulari.

Diagnosi des de299 €

Sol·licitar una diagnosi