Dnes jsem narazila na zajímavý problém - u eshopu Gardenpardubice.cz, se nám na Heuréka.cz u některých produktů nezobrazovaly obrázky...Po detailním prošetření jsem zjistila, že názvy některých obrázků obsahovaly mezery. V tomto článku vám poradím, jak tento problém vyřešit v nastavení komponenty ProductXport, aniž byste museli přejmenovávat všechny soubory s mezerami.
Názvy souborů v eshopech
Většinou se snažím své klienty a členy svého týmu instruovat, aby názvy obrázků a souborů, které nahrávají do eshopu Virtuemart nebo obecně do webových stránkách v Joomla! i jiných systémech, neobsahovaly českou diakritiku, mezery a velká písmena. Proč? Důvodů je několik:
Proč nepoužívat českou diakritiku v názvech souborů
Myslete napřed. Vývojáři systémů Joomla! a Virtuemart často nejsou Češi a tudíž je jim celý systém kódování UTF-8 tak trochu jedno. Když pak migrujete web v Joomla! na vyšší verzi pomocí komponenty Virtuemart Migrator, migrátor se snaží soubory např. kočička.jpg přejmenovat na kocicka.jpg - což má za následek, že se soubor nezobrazí, protože vy máte na serveru soubor kočička.jpg a to je úplně jiný soubor než kocicka.jpg. Výsledek pak je, že musíte obrázky nahrávat do nového eshopu ručně. A to je ještě jen proto, že jsem na to programátory upozornila, protože předtím nahrazovali české znaky za znaky typu š se středníkem, což vám pro změnu zkomplikuje importy přes csv (na delší povídání).
Proč nepoužívat v názvech souborů Velká písmena
Pokud používáte webhosting, který má servery běžící na Windows tak vám je to asi jedno (v tuto chvíli), ale u serverů na Linuxu se opět bere soubor Kocicka.jpg vs. kocicka.jpg jako dva naprosto různé soubory. Takže v okamžiku, kdy přesunete svůj web na jiný hosting, může se vám opět stát, že se vám obrázky přestanou zobrazovat.
Proč nepoužívat v názvech souborů mezery
Mezery v názvech souborů doporučuji nahrazovat pomlčkou nebo třeba podtržítkem, např. místo sedici kocicka.jpg pojmenujte soubor sedici-kocicka.jpg. Mezery se totiž v adresách běžně nahrazují %20, pokud s tím komponenta generující odkaz počítá. Pokud ne, je třeba jí pomoci viz níže.
K samotnému problému s exportem obrázků na Heuréka.cz
Po úvodním slovu se dostáváme k jádru pudla. Problém vznikl proto, že soubor obrázku obsahoval mezeru:
Komponenta ProductXport, kterou používám pro generování XML feedů pro srovnávače cen, s tímto nepočítala, a nenahradila v cestě k souboru mezeru %20. Proto se obrázek nenačetl.
Bylo tedy třeba na radu Davida Zirhuta, autora komponenty ProductXport, upravit nastavení.
Je nutné jít do Komponenty - ProductXport - Správa serverů - rozkliknout heureka.cz (i další srovnávače, pokud je používáte) a na záložce Rozšířené nastavení přidat tento řádek kódu:
Tento řádek se postará o to, že se mezera bude nahrazovat %20, a vy nebudete v tuto chvíli muset kontrolovat všechny názvy obrázků a ručně je nahrazovat.
Opravená adresa souboru pak v XML feedu pro heuréku vypadá takto:
Mohlo by vás také zajímat...
Děkujeme za hodnocení. Pokud se vám článek líbil, budeme rádi, když jej budete sdílet dál!