Productname pro XML feedy

Productname je název produktu v XML feedu. Může být složen z různých parametrů, nejen z názvu produktu ve WooCommerce.

Příklad struktury názvu produktu pro Heuréku: Výrobce | Řada | Barva | Ročník | Verze

Ve WooCommerce máte k dispozici pouze titulek a další parametry jsou odděleny. Například barva je jako samostatný atribut.

Productname můžete v pluginu upravit několika způsoby.

  1. Vyplnit jej u detailu produktu
  2. Vyplnit jej u detailu varianty
  3. Použít globálního nastavení v pluginu
  4. Změnit jej pomocí filtru

Prvním dvěma se věnovat nebudeme, ty nepotřebují vysvětlení.

Globální nastavení názvu produktu

Toto nastavení najdete v hlavním nastavení pluginu, hned pod prefixem feedu.

Pokud není vyplněno a u produktu a varianty produktu není vyplněn název produktu pro feed, aplikuje se pravidlo:

Výrobce | Titulek produktu | ID varianty ( pro odlišení názvů variant )

 

Pomocí tohoto textového pole si můžete sestavit pravidlo pro vytváření názvu produktu pomocí zástupných znaků.

Můžete použít:

  • {MANUFACTURER} – výrobce, pokud je vyplněn, nebo použita nějaká taxonomie v hlavním nastavení
  • {NAZEV} – titulek produktu
  • {KATEGORIE} – kategorie produktu
  • {pa_vlastnost} – vlastnost produktu, u variant i u jednoduchých produktů. Pokud se jedná například o velikost, tak zadáte {pa_size}. Hodnotu najdete ve vlastnostech, když rokliknete seznam hodnot, tak v url položka taxonomy: wp-admin/edit-tags.php?taxonomy=pa_color&post_type=product

 

Výsledek pak může vypadat: {MANUFACTURER} {NAZEV} {pa_size} {pa_color} – Lacoste tričko pánské XXL modrá

Úprava názvu produktu pomocí filtru

Seznam filtrů najdete v dokumentaci na jiném místě, zde si ukážeme, jak s nimi změnit název produktu.

Heuréka CZ má pro název produktu filtry:

  • toret_xml_feeds_productname_variant
  • toret_xml_feeds_productname_simple

$text = apply_filters( ‚toret_xml_feeds_productname_variant‘, $text, $product_item->ID, $vars->ID );

$text = apply_filters( ‚toret_xml_feeds_productname_simple‘, $text, $product_item->ID );

Z definice vidíme, že filtr přijímá název produktu, id produktu a u varianty i její id. Díky tomu můžete změnit název produktu, například pro produkt s konkrétním id:

add_filter( 'toret_xml_feeds_productname_simple', 'custom_product_name' );

function( $text, $product_id ){

    if(  $product_id = 333 ){

        $text = 'Můj speciální produkt s ještě speciálnějším názvem';

    }

    return $text;

}

Použití filtru je vhodné, pokud potřebujete upravit například kategorii produktu.

Řekněme, že chcete pro všechny chladničky přidat nakonec názvu nějakou hodnotu. Pomocí filtru přidáte funkci, která zkontroluje, zda má produkt kategorii Chladničky a nakonec řetězce $text přidáte odpovídající prvek.