Informační parametry a Shoptet

V nové verzi Mergado 2 se pracuje trochu jinak s parametry u produktů, než tomu bylo v MERGADO 1.

O konkrétních rozdílech se můžete dočíst ve vlákně Práce s parametry v MERGADU 2.

Zde bych se chtěl zaměřit na Shoptet, konkrétně formáty Shoptet kompletní a Shoptet dodavatelský. Jak u nich nastavovat vlastnosti TEXT_PROPERTIES a informační parametry INFORMATION_PARAMETERS?

1. TEXT_PROPERTIES → TEXT_PROPERTY

Pro jejich vytvoření lze použít pravidlo typu "Nastavit parametry produktů ". Na levé straně pravidla zadáte názvy parametrů, které chcete vytvořit, a na pravé straně zadáte odpovídající hodnoty - ukázka:

Po aplikování pravidel se nové parametry vytvoří a naplní zadanými hodnotami:

Pravidlo můžete přidat vícekrát pro konkrétní výběry produktů.

2. INFORMATION_PARAMETERS → INFORMATION_PARAMETER

Pro jejich vytvoření nelze použít výše zmíněné pravidlo “Nastavit parametry produktů”, ale je třeba hodnoty přidat postupně, pomocí pravidel typu “Přepsat”, pro každý informační parametr potřebujete dvě, první pro vytvoření NAME a druhé pro naplnění hodnoty do VALUE.

Příklad:

1. PARAMETR, například s názvem Motiv :

a) vytvoření názvu:
pravidlo typu “Přepsat”, jako cestu k elementu (element-path) zadáte:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER { @@POSITION = 1 } | NAME
Hodnotu: Motiv

b) vytvoření hodnoty:
pravidlo typu “Přepsat”, jako cestu k elementu (element-path) zadáte:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER { @@POSITION = 1 } | VALUE
Hodnotu např.: Pruhovaný

2. PARAMETR, například s názvem Střih:

a) vytvoření názvu:
pravidlo typu “Přepsat”, jako cestu k elementu (element-path) zadáte:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER { @@POSITION = 2 } | NAME
Hodnotu: Střih

b) vytvoření hodnoty:
pravidlo typu “Přepsat”, jako cestu k elementu (element-path) zadáte:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER { @@POSITION = 2 } | VALUE
Hodnotu např.: Pánský

3. a další parametry obdobně jako výše…

Po aplikování pravidel se nové informační parametry vytvoří a naplní zadanými hodnotami:

3 Likes

Dobrý deň,

ako prosím čo najjednoduchšie nastaviť pravidlo na INFORMATION_PARAMETER v prípade, že potrebujem nastaviť 10 krát parameter NAME, ale parameter VALUE mám vyplnené iba pri niektorých produktoch.
Povedzme, že parametre na @@POSITION = 1 až @@POSITION = 4 mám vyplnené na všetkých 3000 produktoch a tu to zatiaľ funguje bez problémov.

@@POSITION = 5 mám už však vyplnenú hodnotu iba na 1200 produktov. Aplikujem pravidlo na výber týchto produktov a zvyšných 1800 by teda malo parameter prázdny. Pokiaľ je však @@POSITION = 5 prázdny, tak MERGADO nevie zaplniť parameter s @@POSITION = 6 a ďalšími.

Ukážka pravidiel na lepšie pochopenie

Napadlo mi použiť pravidlá vždy na výber všetkých produktov. NAME by tak ostal zaplnený vždy a VALUE by bola prázdna. Takýto feed však shoptet nevie spracovať a nenapadá mi ako takýto prázdny element skryť.

Bez vyplnenej VALUE

Dá sa to prosím nejak riešiť? Vopred ďakujem za pomoc.

1 Like

Jestli tomu správně rozumím, tak potřebujete smazat hodnotu v NAME (INFORMATION_PARAMETERS | INFORMATION_PARAMETER | NAME) všude tam, kde se nedoplnila hodnota do VALUE.

To by mělo jít pravidlem typu Přepsat, kde použijete cestu k elementu:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER { VALUE = "" } | NAME a v poli pro novou hodnotu nic nezadáte. Pravidlo by tedy smazalo hodnotu v NAME, ale pouze tam, kde není žádná VALUE.

MERGADO potom do výstupního feedu nebude prázdné elementy generovat, takže tam nebude žádné “prázdné” NAME.

Pozn.: výše uvedená cesta k elementu využívající prázdné hodnoty VALUE bude nejspíš fungovat po zítřejším release, ve kterém, bude opravena funkce, která se dohledáváním prázdných hodnot zabývá, viz přehled změn: 🌟 Novinky a release v MERGADU - #121 od smuuf

3 Likes

Ještě by se sem hodilo doplnit, jak si přidat další informační parametr, aniž bychom znali konkrétní pozici, tj. když nevíme, na kolikátou pozici jej budeme přidávat.

U některého produktu ve feedu by šlo například o 2. pozici, u jiného o 5. pozici, apod. Každý produkt totiž může mít různý počet informačních parametrů.

Jde o to, že INFORMATION_PARAMETER je tzv. vícenásobný element (může být u produktu uveden vícekrát), takže nejprve musíme přidat další hodnotu tohoto vícenásobného elementu a pak pod něj doplníme NAME a VALUE.

Postup ve 3 krocích:

1. vytvoření nového “bloku” pro INFORMATION_PARAMETER

přidáte si pravidlem “+ Přidat hodnotu vícenásobného elementu” další blok pro informační parametry.

Jako cestu k elementu použijete jen tohle:
INFORMATION_PARAMETERS | INFORMATION_PARAMETER

Ukázka:

2. vytvoření NAME

Jako cestu k elementu použijete fígl, že tam ještě NAME není:

INFORMATION_PARAMETERS | INFORMATION_PARAMETER { NAME = "" } | NAME

Ukázka:

3. vytvoření VALUE

Jako cestu k elementu použijete klasické odkázání se na název parametru, např.:

INFORMATION_PARAMETERS | INFORMATION_PARAMETER { NAME = "Formát" } | VALUE

Ukázka:

:wink: :v:

3 Likes

Luďo a teďka:

  • pokud je tam třeba 20-40 elementů, tak nějaký nápad? ať nemusím 40x positionovat? :))
    Nehledě na to, že tu mám třeba feed kde je různých 240 information param hodnot… :smiley: to je 480 pravidel … :smiley:
1 Like

:eyes:

No… :thinking: Nevěděl by @huyle ?

Čeho chceš přesně dosáhnout, Jirko? Prosím o co nejpodrobnější kontext a info, možná pošli odkaz na projekt, ať víme, s čím můžeme pracovat a vymyslet nejlepší řešení. Dík!

1 Like

Ještě doplním dvě situace, které se mohou hodit:

  1. pokud potřebujete zkopírovat parametry z textových do informačních (nebo obráceně)
  2. pokud potřebujete zkopírovat informační parametry do Google parametrů v exportu pro Google nákupy (do g:product_detail)

Tak obě situace řeší pravidlo typu Hromadné zkopírování hodnot, které umí kopírovat celou strukturu elementů a jejich subelementů a obvykle stačí nastavit jen 3 řádky tohoto pravidla a máte hotovo.

Ukázka je popsána ve vlákně, kde šlo právě o nakopírování informačních parametrů do Google parametrů, viz: Jak změnit element u produktových parametrů?

2 Likes