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#

  1. Prejdite do karty Elementy.
  2. U požadovaného elementu (napr. DESCRIPTION) kliknite na ikonu CDATA.
  3. Pregenerujte výstupný feed: Nastavení → Přegenerování, aby sa zmena prejavila.
  4. Potrebujete CDATA zrušiť? U rovnakého elementu obalenie opäť vypnite.

B) Manuálny spôsob: pravidlom Prepísať#

  1. Vytvorte pravidlo Prepísať pre daný element.

  2. Do poľa Nová hodnota zadajte CDATA obal, napr.:

    <![CDATA[%PRODUCTNAME%]]>
  3. 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.

Bol tento článok užitočný?