Hlavní kategorie

Aktuálně ke stažení

Zoner INSHOP4 Manager verze 4.7
(velikost 24 MB)

 

Zoner INSHOP4 Manager verze 4.5
(velikost 24,3 MB)

 

Update verze 4
(velikost 21,8 MB)

 

Manuál pro Zoner INSHOP4 Manager
(velikost 2,5 MB)

 

Úprava XML pro vyhledávače

Výchozí konfigurace

Výchozí konfigurace pro generování XML pro vyhledávače je uložena na serveru v souboru inshop/searchengines/config/ses.xml.
V xml je definován kořenový element <items>, jeho dceřiné uzly <item> představují jednotlivé feedy pro vyhledávače.
 
Ve verzi 4.1.6 je k dizpozici pouze jedna položka, která odpovídá požadavkům většiny známých vyhledávačů - zbozi.cz, jyxo.cz, atlas.cz, centrum.cz atd.
Pro každý feed (element <item> je možné definovat následující atributy):
  • Name - pro každý feed unikátní, pokud existuje více definic se stejným Name, pak je používána pouze jedna, prvně načtená definice.
  • OutputFile - název souboru, který bude obsahovat výsledné XML pro vyhledávače. Soubory se ukládají v adresáři inshop/robots.
  • ExportTemplate - šablona exportu výrobků z databáze inshopu. V XML jsou  definovány parametry výrobků, které budou exportovány a bude možné je využít pro vyhledávače. Na základě této šablony bude vygenerováno XML ve formátu inShop4, které bude obsahovat definované parametry výrobků. Výsledek je ukládán do dočasného souboru, jehož název odvozen od OutputFile ve tvaru ~outputfile.xml.
  • TransformTemplate - Xsl šablona podle které je dočasný sobour ~outputfile.xml přetransformován do podoby, kterou podporuje požadovaný vyhledávač.
  • LangCode - kód jazyka ve kterém budou vráceny texty k výrobkům. Pokud není uveden je použit výchozí jazyk  prodejny
  • LevelTextID - Unikátní ID úrovně (kategorie, oddělení) pro kterou se má XML feed generovat.
  • CurrencyCode - kód měny ve kterém budou vraceny ceny výrobků. Pokd není uveden použije se výchozí měna pro zvolený jazyk
  • Domain - název domény, pro kterou se má xml feed generovat. Název domény se objeví v url pro detail  a obrázek výrobku a url kategorie (od verze 4.1.8.C). Pokud domain není definován, je používán aktuální název domény
  • ShowHidden - příznak, zdali se mají do XML feedu generovat i výrobky s příznakem Skryto. Výchoyí hodnota je false, skryté výrobky se do xml feedu nezařazují
  • ShowSaleForbiddenDisabled - příznak, zdali se mají do XML feedu zařazovat i výrobky s příznakem Prodej zakázán, výchozí hodnota je false, což znamená, že se výrobky s příznakem Prodej zakázán do XML feedu generují.


Proces vytvoření Xml feedu pro vyhledávače:

  1. Vytvoření Xml ve formátu inShop4 na základě předpisu, který je definován v souboru s názvem uvedeným v atributu ExportTemplate. Výsledek je uložen v adresáři inshop\robots, název tohoto souboru je definován podle atributu OutputFile, před názvem je vložen znak ~.
  2. Transformace XML dočasného XML podle XSL šablony, jejíž název je definován v atributu TransformTemplate, výsledek uložev adresáři inshop\robots, název souboru definován atributem OutputFile.
  3. Ke generování XML dochází automaticky v nočních hodinách 1x denně. K přegenerování souborů dochází jen v případě, že dojde ke změně výrobků datovou výměnou, pokud ne, zůstává zachován dříve generovaný soubor.
  4. Generování XML lze zavolat ručně pomocí url
  5. http://vasobchod.cz/inshop/webservices/exchange.asmx/GenerateXmlForSearchEngines
  6. Omezení jsou stejná jako u bodu 3. (Připravujeme i možnost vynuceného přegenerování)
  7.  

Vlastní feedy pro vyhledávače


Definice vlastních feedů pro vyhledávače se ukládají v adresáři
\inshop\searchengines\config\user. Zde je nutné vytvořit vlastní XML dokument a uložit jej pod názvem ses.xml. V tomto souboru pak nadefinovat definici generování podobně jak je tomu ve výchozí konfiguraci. Sablony pro export a transformační šablony se ukládají též do adresáře \inshop\searchengines\user.

Upozornění: Nepřepisujte soubory přímo v adresáři Config. Ten je automaticky přepisován při aktualizacíxh serverové části na novou verzi a Vaše změny budou přepsány. Vše ukládejte v adresáři user.
Příklad:
<?xml version="1.0" encoding="windows-1250"?>

<items>

<item Name="MůjFeed"  OutputFile="mojevyrobky.xml"
ExportTemplate="mujexport.xml"
TransformTemplate="mojetrasnformace.xsl"/>

</items>



Při této definici se vygeneruje jednak Xml soubor podle výchozí definice, která je definována v souboru inshop\searchengines\ses.xml, ale také soubor mojevyrobky.xml podle vlastní definice MůjFeed (export výrobků se provede podle mujexport.xml a transformace pak podle mojetransformace.xsl - tyto soubory musí být uloženy v adresáři user.)

Tip 1:
Lze využít již definovaných standardních exportních či transformačních šablon, v tomto případě je nutné uvést cestu k souboru  o úroveň výš.
 
Příklad:
<?xml version="1.0" encoding="windows-1250"?>

<items>

<item Name="MůjFeed"  OutputFile="mojevyrobky.xml"
ExportTemplate="..\export.xml"
TransformTemplate="mojetrasnformace.xsl"/>

</items>

Tip 2:
Lze nahradit standardní generování feedu vlastním, a to tak, že vlastní definici uložíte pod stejným názvem jako je vedený generátor, který chcete nahradit (atribut name).

Příklad:
<?xml version="1.0" encoding="windows-1250"?>

<items>

<item Name="General"  OutputFile="mojevyrobky.xml"
ExportTemplate="..\export.xml"
TransformTemplate="mojetrasnformace.xsl"/>

</items>





V tomto případě bude generován jen jeden soubor mojevyrobky.xml, protože nahradí výchozí definici (přednostně se používají uživatelské definice)

 

Rošíření transformačních šablon o extérní funkce

 
  • Prři generování  xml feedu lze pro transformaci napsat i vlastní třídu s funkcemi  v .NET 2.0 a ty mít zkompilovány ve vlastní assembly. V ses.xml je pak nutné vložit informace o této třídě pomocí parametrů XsltAssembly a Xslt typu
  • XsltAssembly - název assembly (dll knihovny), která obshauje třídu s extérními funkcemi.
  • XsltType - celý název třídy včetně namespace.

Do hlavičky xslt šablony je pak potřeba doplnit definici:

 

 xmlns:myFuncts="urn:custFuncts"
Vložení hodnot funkcí v xslt šabloně pak vypadá takto:

<xsl:value-of select="myFuncts:GetDate()" />
Více informací o extérních funkcích najdete např v tomto tutoriálu.