CDATA v Mergade#
Načo CDATA slúži a prečo je dôležitá?#
CDATA (z anglického Character Data) je spôsob, ako v XML ochrániť časť textu pred vyhodnotením ako kód. V e-commerce feedoch sa hodí hlavne tam, kde elementy obsahujú HTML alebo špeciálne znaky — typicky u <DESCRIPTION> či <LONGDESC>. Bez CDATA by sa HTML tagy (napr. <p>, <strong>) mohli čítať ako XML elementy, čo vedie k nevalidnému feedu alebo strate obsahu.
Čo je CDATA?#
CDATA označuje úsek textu, ktorý sa neparsuje ako XML a zostane presne tak, ako je zapísaný.
Príklad:
<DESCRIPTION><![CDATA[<p>Stylová košile <strong>z bavlny</strong></p>]]></DESCRIPTION>Bez CDATA by sa HTML značky <p> a <strong> mohli interpretovať ako XML elementy a spôsobiť chybu vo feede.
Ako pridať CDATA v Mergade?#
A) Najjednoduchší spôsob (odporúčané): cez kartu Elementy#
- Prejdite do karty Elementy.
- U požadovaného elementu (napr.
DESCRIPTION) kliknite na ikonu CDATA. - Pregenerujte výstupný feed: Nastavení → Přegenerování, aby sa zmena prejavila.
- Potrebujete CDATA zrušiť? U rovnakého elementu obalenie opäť vypnite.
B) Manuálny spôsob: pravidlom Prepísať#
-
Vytvorte pravidlo Prepísať pre daný element.
-
Do poľa Nová hodnota zadajte CDATA obal, napr.:
<![CDATA[%PRODUCTNAME%]]> -
Po pregenerovaní uvidíte vo výstupnom feede napr.:
<PRODUCTNAME><![CDATA[Tričko pánské černé s krátkým rukávem]]></PRODUCTNAME>
Tipy z praxe#
- Používajte CDATA u elementov s HTML formátovaním (napr.
DESCRIPTION) alebo so špeciálnymi znakmi. - Po každej úprave nezabudnite pregenerovať feed (Nastavení → Přegenerování).
- Keď CDATA chýba, niektoré HTML značky môžu zhavarovať validáciu alebo sa nezobrazia správne.
FAQ#
Čo presne je CDATA?#
Je to úsek v XML, ktorého obsah sa nevyhodnocuje ako kód, ale berie sa doslova ako text.
Kedy mám CDATA použiť?#
Keď element obsahuje HTML alebo špeciálne znaky — najčastejšie u DESCRIPTION alebo LONGDESC.
Ako najrýchlejšie obalím element do CDATA v Mergade?#
V karte Elementy kliknite u daného elementu na ikonu CDATA a potom pregenerujte feed.
Ako CDATA pridám ručne?#
Vytvorte pravidlo Prepísať a do novej hodnoty vložte CDATA, napr. <![CDATA[%PRODUCTNAME%]]>.
Musím po zmene niečo robiť, aby sa prejavila?#
Áno, je potrebné pregenerovať výstupný feed: Nastavení → Přegenerování.
Čo keď CDATA nepoužijem?#
HTML značky sa môžu brať ako XML tagy, čo vedie k chybe validácie alebo k strate/skomoleniu obsahu.
Dá sa obalenie CDATA zase vypnúť?#
Áno, v karte Elementy u daného elementu zrušíte obalenie rovnakou ikonou.