Nové tabulky pro data produktu ve WooCommerce - Affinite.io CZ

Jedna z věcí, která je WordPressu vyčítáno, potažmo i pluginu WooCommerce, je struktura databáze. V podstatě všechno co u produktů uložíte, jde do tabulky postmeta. Což je kolem 30 záznamů u každého produktu, nebo varianty.

A to nepočítáme další pluginy, transienty a podobně. Velmi lehce se dostanete na 50 položek u každého produktu. K tomu další záznamy pro články, stránky, revize a tak dále. Není divu, že tabulka postmeta bobtná a bobtná a vyjímkou nejsou ani miliony záznamů.

Prvním krokem, jak tento problém řešit, alespoň z části, bylo zavedení CRUD a data-stores pro produkty a objednávky. Tím že se standartizoval způsob získání dat pro produkty, vznikla cesta, jak převést tato data do vlastních tabulek.

V tuto chvíli jsou k dizpozici dva pluginy, jenž umožňují ukládat informace objednávek a produktů do vlastních tabulek a snižovat tak zátěž na databázi. Přestože si můžete říct – mě se to netýká, používám cache plugin a ten návštěvníkovi nabízí uloženou html stránku, tak to platí jen do chvíle, než se zákazník, nebo administrátor přihlásí. Většina pluginů je nastavená tak, že při přihlášení cache vypíná.

Pokud to myslíte s provozováním e-shop na WooCommerce vážně, zkuste otestovat tento plugin, jenž je zatím ve vývoji – https://github.com/woocommerce/woocommerce-product-tables-feature-plugin.

Dřív nebo později bude zaveden do jádra WooCommerce, takže je lepší se připravit a můžete jej používat již nyní.

Upozornění: V žádném případě nedoporučuji, testovat jej na funkčním e-shop a bez záloh databáze. Jde o plugin ve vývoji a za případné škody nesete odpovědnost sami.

Plugin do databáze přidá nové tabulky, udělal jsem vám screeny, aby jste věděli co se vám vytvoří:

Tabulka wc_products

Tabulka wc_product_attributes

Tabulka wc_product_attribute_values

Tabulka wc_product_downloads

Tabulka wc_product_relationships

Doporučená verze WooCommerce – 3.4.7 a vyšší

Minimální verze pro zkoušení 3.0 (2.6 ještě nemá CRUD a data-stores)

Známé bugy:

  • v administraci se nemusí zobrazovat náhledy produktů – mělo být odstraněno již ve verzi 3.5.1, zatím není
  • pokud vaše custom šablona pro získání obrázku produktu nepoužívá $product->get_image_id, ale has_post_humbnail, obrázek se nenačte

O data stores a CRUD ve WooCommerce budu mluvit na školení pro vývojáře 19.2. v Praze a 21.2. v Brně – https://toret.cz/woocommerce-pro-vyvojare-skoleni/

Potkat mne můžete také na Pražském WordCampu

Prague WordCamp 2019

 

Skrytí variant které nejsou skladem WooCommerce
Skrytí variant které nejsou skladem WooCommerce
29 Říj, 2018
Jak získat url WooCommerce stránek
Jak získat url WooCommerce stránek
05 Led, 2019

Looking for something?