With proper caching, WooCommerce can be sped up, but dynamic database queries remain slow, especially for sites with a large number of SKUs. Because of a flaw in how WordPress handles meta data,  searching can come to a crawl at critical moments, such as during the checkout of large orders. For wholesale sites, it's better to use a more fitting solution like Shopify.

Mit einem geeigneten Caching lässt sich WooCommerce beschleunigen, doch dynamische Datenbankabfragen bleiben langsam, insbesondere bei Websites mit einer großen Anzahl von SKUs. Aufgrund eines Fehlers in der Art und Weise, wie WordPress Metadaten verarbeitet, kann die Suche in kritischen Momenten, beispielsweise beim Auschecken großer Bestellungen, fast zum Stillstand kommen. Für Großhandels-Websites ist es besser, eine passendere Lösung wie Shopify zu verwenden.

Con un caching adeguato è possibile velocizzare WooCommerce, ma le query dinamiche al database rimangono lente, in particolare nei siti web con un numero elevato di SKU. A causa di un errore nel modo in cui WordPress elabora i metadati, la ricerca può quasi bloccarsi nei momenti critici, ad esempio durante il checkout di ordini di grandi dimensioni. Per i siti web all'ingrosso è preferibile utilizzare una soluzione più adeguata come Shopify.

The slowdown is caused by ajax being required to wait for the product quanities and other data to finish before giving the customer feedback that the order has been completed. In the backend the order almost immediately shows.

Die Verzögerung entsteht, weil Ajax warten muss, bis die Produktmengen und andere Daten vollständig sind, bevor der Kunde darüber informiert werden kann, dass die Bestellung abgeschlossen ist. Im Backend wird die Bestellung fast sofort angezeigt.

Il ritardo è dovuto al fatto che Ajax deve attendere che le quantità dei prodotti e altri dati siano completi prima di poter informare il cliente che l'ordine è stato completato. Nel backend, l'ordine viene visualizzato quasi immediatamente.

Using the javascript hooks in the original checkout code, I was able to bypass most of the heavy lifting.

Mithilfe der JavaScript-Hooks im ursprünglichen Checkout-Code konnte ich den Großteil der mühsamen Arbeit umgehen.

Grazie agli hook JavaScript nel codice di checkout originale, sono riuscito a evitare gran parte del lavoro noioso.

Copy to Clipboard

The order success events also needed to be overridden.

Die Ereignisse zum Bestellungserfolg mussten ebenfalls überschrieben werden.

Anche gli eventi relativi al successo dell'ordine dovevano essere sovrascritti.

Copy to Clipboard

Because the processing is still happening in the background, it was necessary to temporarily cache the quantity changes, so that other customers wouldn't be able to purchase them, too.

Da die Verarbeitung noch im Hintergrund läuft, war es notwendig, die Mengenänderungen vorübergehend zwischenzuspeichern, damit andere Kunden sie nicht ebenfalls kaufen konnten.

Poiché l'elaborazione è ancora in corso in background, è stato necessario memorizzare temporaneamente le modifiche alle quantità, in modo che altri clienti non potessero acquistarle.

Copy to Clipboard