Parametry z html pole

Dobrý den, zasekl jsem se na feedu, který má parametry uvedené v html. Vypadá to nějak takto:

<h2 class="props-title">Vlastnosti</h2>
<table>
<tr><th>Značka</th><td>SAPHO</td></tr>
<tr><th>Rozměr</th><td>500x8x100 mm</td></tr>
<tr><th>Délka</th><td>500&nbsp;mm</td></tr>
<tr><th>Šířka</th><td>500&nbsp;mm</td></tr>
<tr><th>Výška</th><td>8&nbsp;mm</td></tr>
<tr><th>Hloubka</th><td>100&nbsp;mm</td></tr>
<tr><th>Materiál</th><td>Sklo</td></tr>
<tr><th>Hmotnost</th><td>1.1200&nbsp;kg</td></tr>
<tr><th>Balení</th><td>1&nbsp;ks</td></tr>
<tr><th>EAN</th><td>8590913817335</td></tr>
<tr><th>Taric</th><td>70139900</td></tr>
<tr><th>Záruka</th><td>2 roky</td></tr>
</table>

Existuje způsob, jak to z toho vytáhnout do samostatných filtrovacích elementů pro Shoptet? Díky za radu :slight_smile:

Ano, stačí si vytvořit proměnné, které z textu načtou konkrétní hodnoty pro jednotlivé parametry a tyto proměnné pak použijete v pravidle Nastavit parametry produktů (nebo v jiných přepisovacích pravidlech pro naplnění elementů hodnotami).

Proměnné můžete v MERGADO Editoru přidávat na stránce Proměnné → tlačítko “Nová proměnná”.

  • nejprve si zvolíte element, ze kterého se má část textu zachytávat do nové proměnné
  • načte se náhodně vybraná hodnota z tohoto elementu, můžete si však klidně vložit vlastní
  • zadáte regulární výraz pro zachycení konkrétní části textu
  • zadáte název nové proměnné a uložíte

Tímto postupem si vytvoříte několik proměnných, regulární výraz bude pro uvedený příklad pokaždé skoro stejný, jen se v něm změní název parametru:

  • pro zachycení hodnoty značky: (?<=Značka</th><td>)[^<]+
  • pro zachycení hodnoty rozměru: (?<=Rozměr</th><td>)[^<]+
  • pro zachycení hodnoty délky: (?<=Délka</th><td>)[^<]+
    atd.

Ukázka:

Pak už jen proměnné použijete v pravidle, ukázka:

Výše uvedené postupy bude třeba přizpůsobit konkrétnímu stavu dat ve feedu, jde spíše o ukázku možností, než přesné řešení. :wink:

3 Likes