Atributy (v elementech)

 
V tomto příspěvku se dozvíme:

Úvod

Narazili jste u zpracování produktových dat na potřebu pracovat s atributy v elementech a nevíte, k čemu slouží nebo jak na ně? V MERGADO Editoru, který je založen na názvosloví jazyka XML, s nimi dokážete snadno pracovat a zvýšit tím své prodeje. Pojďme si říct, co jsou atributy v elementech a jak vám s nimi MERGADO pomůže.

Co jsou atributy?

Zjednodušeně řečeno: XML soubory se skládají z elementů, které nesou data. A atribut je součást elementu upřesňující význam daného elementu. Jsou to nositelé upřesňující hodnoty. Tyto hodnoty se vždy musí uzavřít do uvozovek nebo do apostrofů.

Příklad: Když si budeme chtít vytvořit XML soubor se jmény účastníků oslavy a jejich pohlavím, struktura za použití atributu by vypadala takto:

<person gender="female">
    <firstname>Pavlína</firstname>
    <lastname>Nováková</lastname>
</person>

V elementu person je atribut gender (tmavě modrá barva) s hodnotou female (červená barva). Tento atribut tedy upřesňuje, že se Pavlína Nováková identifikuje jako žena.

Bez použití atributu by tento zápis mohl mít tuto strukturu:

<person>
    <gender>female</gender>
    <firstname>Pavlína</firstname>
    <lastname>Nováková</lastname>
</person>

Příklad: Shoptet používá atributy pro popisky obrázků:

<IMAGES>
   <IMAGE description="Zimní bunda Columbia (Barva Zelená, Velikost L)">https://cdn.myshoptet.com/název_obrázku.jpg</IMAGE>
</IMAGES>

:warning:  Google ve svém názvosloví nepoužívá dělení na elementy a atributy jako XML soubory. Používá pouze označení atributy (pro elementy a zároveň atributy). Podívejte se na specifikaci Googlu.

K čemu jsou atributy?

Atributy v produktových feedech

Pro naše osobní účely je jedno, v jaké struktuře si oslavence zapíšeme (první příklad), hlavně že nám to bude fungovat. Pokud ale budeme chtít prodávat své zboží na různých reklamních portálech, můžeme narazit na problém. Některé portály totiž vyžadují zasílaní produktových dat s atributy v elementech. Takovými portály jsou například Ceneo, Heureka Dostupnostní, Shoptet a mnoho dalších.

Příklad: Ceneo

<attrs>
    <a name="Producent">Nike</a>
</attrs>

Příklad: Heureka Dostupností

<item_list>
    <item id="314141-120">
    <stock_quantity>1</stock_quantity>
    <delivery_time orderDeadline="2023-04-17 12:00">2023-04-26 12:00</delivery_time>
</item>

Příklad: Shoptet

<IMAGES>
    <IMAGE description="Columbia Squish N’ Stuff (Barva Zelená, Velikost L)">https://cdn.myshoptet.com/název_obrázku.jpg</IMAGE>
    <IMAGE description="Columbia Squish N’ Stuff (Barva ČErvená, Velikost S)">https://cdn.myshoptet.com/název_obrázku.jpg</IMAGE>
</IMAGES>

Atributy a MERGADO Editor

S atributy je možné pracovat napříč celým MERGADO Editorem. Díky těmto úpravám můžete:

  • Nabízet své zboží na portálech, které vyžadují používání atributů.
  • Odstraňovat nežádoucí atributy a přepisovat hodnoty atributů.
  • Vytvářet výběry produktů na základě atributů.
  • Obecně s nimi pracovat všude tam, kde se objevují názvy elementů: například v pravidlech nebo MQL.

Atributy poznáme v Editoru tak, že mají na začátku zavináč @. Ukažme si to na příkladu: Mějme následující vstupní feed:

<SHOP>
    <SHOPITEM id="DEF87">
        <CODE>7DW890</CODE>
        <EXTERNAL_ID>ALERNARIVE798</EXTERNAL_ID>
        <NAME>Žehlicka</NAME>
        <IMAGES>
            <IMAGE description="desc image">www.zehlicka-image.com</IMAGE>
        </IMAGES>
    </SHOPITEM>
</SHOP>

Feed obsahuje element SHOPITEM, který má v sobě atribut id. Dále vidíme element IMAGE s atributem desc. V MERGADO Editoru se nám zmíněné atributy ukazují se zavináčem:

  • @id na stránce Elementy:

  • @description na stránce Elementy:

  • @id v poli pro element:

  • @description v poli pro element:

:information_source:  V MERGADO Editoru můžeme narazit i na tzv. speciální atributy. Poznáme je tak, že začínají dvěma zavináči, např. @@POSITION nebo @@VALUE.

Příklady použití

1. V pravidle cílíme na element CODE jedné specifické varianty, která v atributu @id elementu VARIANT obsahuje hodnotu idvariant3:

<VARIANTS>
    <VARIANT id="idvariant3">
        <CODE>EEQ21</CODE>
        <UNIT>unit</UNIT>
        <FREE_SHIPPING>1</FREE_SHIPPING>
        <FREE_BILLING>1</FREE_BILLING>
    </VARIANT>
    <VARIANT id="idvariant4">
        <CODE>EEQ22</CODE>
        <UNIT>unit2</UNIT>
        <FREE_SHIPPING>0</FREE_SHIPPING>
        <FREE_BILLING>0</FREE_BILLING>
    </VARIANT>
</VARIANTS>

Cesta k danému elementu CODE bude vypadat následovně: VARIANTS | VARIANT { @id ~ "idvariant3" } | CODE.

2.  Na stránce Produkty hledáme produkt s výchozí kategorii s atributem @id = 123:

<CATEGORIES>
    <DEFAULT_CATEGORY id="123">Spotrebice</DEFAULT_CATEGORY>
    <CATEGORY id="456">Elektronika</CATEGORY>
</CATEGORIES>

Podmínka pro výběr bude vypadat následovně: CATEGORIES | DEFAULT_CATEGORY | @id = "123".

Shrnutí

1 Like