Měl jsem několik produktů, obrazy, které měly varianty velikost, způsob provedení a různá zavěšení. Každý obraz byl v několika dalších barevných variantách, které byly vždy jako samostatné produkty. Jeden obraz tedy byl v shopu třeba 10x.
Protože jsem považoval za velmi důležité, aby když je zákazník na stránce konkrétního produktu (obrazu), viděl i ty další barevné varianty, chtěl jsem je tam zobrazit, aby o nich zákazník věděl. Všechny varianty měly jeden společný tag, podle kterého jsem je zobrazoval při filtraci. Jak toho ale dosáhnout, když WooCommerce nemá na to žádný shortcode?
Naštěstí se objevil Martin Starosta, který si dal tu práci a sepsal na to funkci. S jeho laskavým svolením onen kus PHP kódu zveřejňuji a patří mu za to můj dík. Věřím tomu, že se to bude hodit ještě někomu dalšímu. Můžete použít buďto shortcode nebo jej zavěsit do hooku. Zobrazují se pouze obrázky s odkazem na daný produkt, čili žádný název, cena, nic, jen obrázek.
Pro mou potřebu bylo nutné všem produktům, které se takto mají zobrazovat, dát stejný tag. Dovedu si to představit například při prodeji knih, kdy knížky od jednoho autora budou mít stejný tag a tak se při zobrazení jedné knížky zobrazí náhled dalších knížek od tohoto autora. Zdatní si mohou kód upravit třeba podle custom_fields.
Uvedený kód hlídá, jestli má nějaký produkt stejný tag jako právě zobrazený produkt, pokud ne, nic nezobrazí, pokud ano, zobrazí je včetně nadpisu, který si navolíte. Samozřejmě z těchto podobných produktů je odstraněn právě zobrazovaný produkt.
Kód vložíte do functions.php své šablony. Neplatí pro Oxygen Builder, zde je potřeba jej dát do code block v šabloně produktu.
Tak ať slouží.
BONUS: Jako bonus máte na konci kódu i CSS, pomocí kterého se vám bude obrázek, na který najede myší, plynule zvětšovat (vystupovat do popředí). Pokud CSS použijete, nepřehlédněte, že musíte odstranit poznámky, musel jsem je dát za //, aby pastebin nezbořil kód.
DALI SE SKVĚLE POSTARAL O PREZENTACI NA WEBU. ROZHÝBAL TO CO JINÝM NEŠLO. JE FAKT MOC ŠIKOVNÝ! Je nápaditý, ochotný, pracovitý, zkušený a vše hned zařídí.