V tomto příspěvku se dozvíme:
K čemu se používá?
Základním principem pravidla je, že námi vybranému existujícímu elementu přidá další hodnotu.
Pravidlo vypadá a pracuje podobně jako pravidlo Přepsat, akorát nepřepisuje už existující hodnotu, ale “tu novou ještě zatím neexistující” (= přidá hodnotu). Schválně najděte rozdíl:
Jak funguje pravidlo Přidat hodnotu vícenásobného elementu?
Pravidlo funguje intuitivně. Zadáme cestu k elementu, ke kterému se má nová hodnota vložit, a samotnou hodnotu. Po aplikování pravidel se nám daná hodnota přidá k danému elementu.
Příklad:
Mějme následující data:
Pomocí pravidla Přidat hodnotu vícenásobného elementu přidáme další URL obrázku.
Po přegenerování vidíme, že se nám přidala další hodnota k elementu IMGURL_ALTERNATIVE:
V cestě k elementu nelze pomocí speciálního atributu @@POSITION určovat, na kterou pozici se má hodnota přidat. Hodnota se vždy automaticky přidá na další volné místo.
Příklad: Zvolený element je prázdný, pravidlo tedy přidá hodnotu na první pozici.
Příklad: Zvolený element má jednu hodnotu, pravidlo přidá novou hodnotu na druhou pozici, atd.Tímto se toto pravidlo liší od ostatních pravidel, kde je možné pomocí cesty k elementu určit a upravit hodnotu na konkrétní pozici.
Přidáním druhé hodnoty elementu se z elementu stává vícenásobný element. Pomocí tohoto pravidla je možné z jakéhokoli elementu udělat vícenásobný, a to včetně zanořených elementů.
Pravidlo samotné nepřidává hodnotu strukturově
Pozor na případy, kdy bychom chtěli přidat další hodnotu k zanořenému elementu, který má strukturu jako např. parametr, doprava, varianta, flag apod.
Příklad: špatně
Řekněme, že máme u produktu parametr Barva a chceme mu přidat další parametr Velikost. Mohlo by nás napadnout, že stačí použít pravidlo Přidat hodnotu vícenásobného elementu a zadat cestu PARAM | PARAM_NAME
a hodnotu Velikost:
Po přegenerování ale dostaneme:
Proč? Protože jsme pravidlu řekli, že chceme přidat hodnotu u elementu PARAM_NAME u všech elementů PARAM. A pravidlo nás pouze poslechlo. Musíme tedy upravit náš postup.
Příklad: správně
Správný postup je následující: Pomocí jednoho pravidla Přepsat přidáme hodnoty ke všem elementům dané části struktury. Konkrétně přidáme hodnotu pro VAL a zároveň i pro PARAM_NAME:
Využíváme zde obecného chování pravidel, které říká: Při zapisování do elementů - vše, co je uvedeno v podmínce a je s operátorem = či spojovacím operátorem AND, bude vytvořeno taktéž.
V některých případech, kdy máme v jiných elementech stejnou strukturu jako u elementů, u kterých chceme přidávat vícero hodnot, může být výhodnější použít pravidlo Hromadné zkopírování hodnot, kterým si předpřipravíme více hodnot, které pak následně jenom přepíšeme.
Pro přidávání parametru nebo dopravy používáme příslušná pravidla Nastavit parametry produktu a Nastavení ceny dopravy.
Nejčastější použití
1. URL obrázků
Příklad jsme si ukazovali v sekci Jak funguje pravidlo Přidat hodnotu vícenásobného elementu? Příklad je uvedený pro formát Heureka, ale stačí do cesty napsat cestu k jakémukoliv námi potřebnému elementu a pravidlo bude fungovat i pro jiné formáty.
Příkladové cesty:
IMGURL_ALTERNATIVE
g:additional_image_link
IMAGES | IMAGE
2. Kategorie
Postup je stejný jako v případě obrázků.
Příkladová cesta pro Shoptet: CATEGORIES | CATEGORY
.
Shrnutí
-
Jak pravidlo funguje?
Pravidlo funguje intuitivně. Zadáme cestu k elementu, ke kterému se má nová hodnota vložit, a samotnou hodnotu. Po aplikování pravidel se nám daná hodnota přidá k danému elementu. -
Strukturové přidávání hodnot
Pravidlo nepřidává hodnoty strukturově. Pokud chceme přidat hodnoty strukturově, použijeme pravidlo Přepsat. -
Nejčastější použití
Nejčastěji použijeme pravidlo např. u URL obrázků nebo kategorií.