ProductXport: jak vyřadit z xml feedu produkty s vybranými stavy dostupnosti
Máte internetový obchod ve Virtuemartu a potřebovali byste z XML feedu pro srovnávače cen vyřadit určité produkty, které třeba nemáte skladem, ale přitom nevedete skladové zásoby? V tomto článku vám poradíme jak na to pomocí komponenty ProductXport, která generuje XML feed pro srovnávače cen jako je Heuréka či Zboží.
Standardně lze v komponentě ProductXport nastavit, aby se neexportovalo do XML feedu zboží, které není skladem. Toto řešení je vám ale k ničemu, když nemáte v eshopu aktuální skladové zásoby a jen zobrazujete dostupnost zboží např. skladem, do 3 dní atd.
Co ale dělat, když máte v eshopu i zboží, které je dočasně vyprodáno nebo už vůbec nebude skladem, ale vy nechcete ten produkt odstranit z eshopu, protože přes něj chodí návštěvnost a lidé si pak mohou koupit např. alternativní produkt?
I pro tento případ má ProductXport řešení. Nejprve je dobré si zjistit, jaké různé stavy dostupnosti vůbec v eshopu máte. To zjistíte pomocí PhpMyAdmin z databáze pomocí přikazu:
SELECTDISTINCT product_availability
FROM XXX_virtuemart_products
XXX si nahraďte předponou názvu tabulky.
Výsledek může vypadat např. takto:

Zde vidíme, že pro vybrané stavy bychom potřebovali vyřadit z feedu. Toho můžeme docílit tak, že na záložce Speciální možnosti ( Komponenty - ProductXport - Nastavení obchodu -Virtuemart - Speciální možnosti)
do pole PHP kód pro spuštění během přípravy produktu
vložte tento kód (Vyprodáno nahraďte svými stavy):
if ($product->availability == 'Vyprodáno') $product->skip=true;
text "Vyprodáno" musí přesně sedět s tím co je v databázi (včetně malých velkých písmen, diakritiky apod)
máte-li více variant, které potřebujete ošetřit, může kód vypadat např. takto:
kód může být i takto - pro víc variant:
switch ($product->availability) {
case 'Vyprodáno':
case 'vyprodáno':
case 'vyprodano':
$product->skip=true;
break;
}
Mohlo by vás také zajímat...
- Co dělat, když Facebook nenačítá při sdílení obrázek vůbec nebo načítá nesprávný?
- Fatal error: Class 'FOF30\Container\Container' not found
- Joomla 3.7.2: Změna hesla administrátora v Joomla!
- Jak vynutit HTTPS pomocí souboru .htaccess
- Mnohojazyčný dynamický sitemap pro web v Joomla 3
- Google Analytics: klíčové slovo not provided
- Joomla 3: Fatal error: Call to undefined function iconv()
- Jak nainstalovat web v Joomla 3!
- Jak opravit špatné kódování textu v XML feedu z komponenty ProductXport
- Warning: number_format() expects parameter 2 to be long, string given...

