Pro velké objednávky se lístky nevydávají.

This is most likely caused by a data type limitation in your sites database. FooEvents stores ticket data for an order in a single serialized meta_hodnota. U velkých objednávek (přibližně 30 a více lístků v jedné objednávce, v závislosti na tom, kolik dat každý lístek ukládá) může tato serializovaná hodnota překročit maximální velikost povolenou pro TEXT pole. Když k tomu dojde:

  • Meta objednávky je zkrácené nebo neúplně uložené.
  • FooEvents nemá všechna data, která očekává.
  • Vstupenky pro tuto objednávku mohou nebýt generován správně nebo vůbec.

Koho se to týká?

To by se mělo týkat pouze obchodů, které:

  • Mít HPOS (WooCommerce Vysoce výkonné ukládání objednávek) povoleno.
  • Očekávejte zpracování velké objednávky (asi 30 nebo více lístků v jedné objednávce).

Pokud jste ne používání HPOS, neměl by vás tento problém ovlivnit.

Proč se to netýká webů, které nepoužívají HPOS?

Na stránkách bez HPOS používá WooCommerce standardní WordPress. postmeta tabulka (například wp_postmeta) pro meta údaje o objednávce.

Na adrese postmeta... meta_hodnota sloupec je již definován jako DLOUHÝ TEXT, který může ukládat mnohem větší hodnoty než TEXT.

Z tohoto důvodu mohou weby, které nepoužívají HPOS, bezpečně ukládat velké hodnoty meta ticketů FooEvents bez jakýchkoli změn.

If you do experiance this issue on a non-HPOS site,  you or your developer may gave changed the data type of the meta_hodnota pole v WordPress postmeta tabulka.

Technické údaje

  • TEXT maximální délka: 65 535 bajtů.
  • DLOUHÝ TEXT maximální délka: 4 GB.

FooEvents ukládá údaje o jednotlivých lístcích, jako například:

  • ID vstupenek
  • Údaje o účastnících
  • Informace o akci
  • Další meta vstupenky

Všechno je to serializováno do jediného meta_hodnota. U velkých objednávek může tento řetězec překročit hodnotu TEXT může ukládat, což způsobuje zkrácení a generování neplatných lístků.

Doporučená oprava

Pokud používáte HPOS a očekáváte velké objednávky, změňte meta_hodnota sloupec v wc_objednávky_meta tabulka z TEXT na DLOUHÝ TEXT.

Důležité: To zahrnuje úpravu základní tabulky WooCommerce. Vždy nejprve zálohujte svou databázi. Pokud si na to netroufáte, požádejte o pomoc svého hostitele nebo vývojáře.

  1. Potvrďte název tabulky

    Většina instalací bude používat: wp_wc_orders_meta

    Pokud používáte vlastní předponu, proveďte příslušné úpravy (například myshop_wc_objednávky_meta).
  2. Příklad spuštění příkazu SQL (upravte název tabulky podle potřeby)
    ALTER TABLE `wp_wc_orders_meta`
    MODIFY `meta_value` LONGTEXT NULL;
  3. Ověřit
    • Ujistěte se, že dotaz proběhne bez chyb.
    • Zadejte zkušební objednávku s velkým počtem lístků a ověřte, zda jsou lístky generovány podle očekávání.

Poruší to WooCommerce nebo HPOS?

Ne. Tato změna je bezpečná a odpovídá způsobu, jakým WordPress již ukládá metadata:

  • Jádro WordPress a WooCommerce již používají DLOUHÝ TEXT pro meta_hodnota v postmeta tabulka.
  • Změna meta_hodnota na adrese wc_objednávky_meta z TEXT na DLOUHÝ TEXT pouze zvyšuje množství dat, které lze uložit; nemění způsob, jakým WooCommerce nebo FooEvents čtou nebo zapisují data.

To znamená:

  • Vždy proveďte úplnou zálohu databáze první.
  • V ideálním případě tuto změnu otestujte na stagingová stránka před jeho použitím ve výrobě.

Potřebujete podporu?

Nenašli jste odpověď, kterou hledáte? Náš tým je vám k dispozici, Spojte se!