PrestaShop – rychlé postřehy

Posted 04. 04. 2009 / By Petr Soukup / Eshop

Na Webtrhu neustále někdo doporučuje open-source e-shop PrestaShop, ale nikde jsem ho pořádně neviděl. Rozhodl jsem se tedy pořádně ho vyzkoušet. Doufám že článek nebude moc zmatený, hodlám připisovat dojmy postupně, jak si s ním budu hrát. Nedělám si iluze, že nějak kompletně systém zhodnotím. Chystám se spíše sepsat různé detaily, které při zkoušení potkám.

POZOR: Tento článek je z roku 2009 a řeší jednu z prvních verzí prestashopu. Některé námitky už dnes nemusí platit.

Instalace

Budu trochu podvádět proti typickému uživateli a vypomůžu si s SSH. Stahuji archiv, rozbaluji a zkouším spustit přes web. Rovnou na mě vyskakuje instalace a držkuje, že nemá právo zápisu v určitých složkách. Jsem dost líný a chci si už hrát, takže jako prasátko píšu do konzole chmod –R 777 *, což dá všem souborům presty absolutní práva zápisu. Jenže – instalace stále hlásí chybu. Navíc mi nabízí radu v dokumentaci, jenže po kliknutí vidím jen nadpis a prázdnou stránku. Děkuji mnohokrát za pomoc. Nakonec to vyřešilo vypnutí a zapnutí prohlížeče. Zřejmě se kontrola nějak uložila do session či co… Další kroky už byly bez problémů.

První dojmy z administrace

Při prvním spuštění po mě chce smazat složku s instalací (což má určitou logiku) a přejmenování složky s administrací, což má logiku už o dost menší. Copak nemá žádný lepší bezpečnostní mechanismus, než schovat administraci jinam a nutit uživateli nestandardní názvy?

Docela mi vadí angličtina, ale věřím, že nějaká dobrá duše už udělala lokalizaci. Po instalaci jsou v eshopu testovací položky, což se mi teď velmi hodí.

Správa produktů

Jako první mě zaujalo, že je možné položkám v kategorii měnit pořadí. Zaujetí mě přešlo, jakmile jsem ho vyzkoušel. Při každém kliknutí na šipečku se stránka musí znovu načíst. Pokud bych chtěl položku z 1. pozice vyměnit s položkou na 20. pozici, musel bych stránku znovu načíst asi 40x. Přitom se navíc musím trefit přesně na mrňavou šipečku, jinak se dostanu do detailu produktu.

Největší raritou ale je, že ve výpisu lze seřadit zboží například podle ceny. Jenže řadící šipečky zůstávají. Takže pokud s nimi začnete řadit, už nelze dopředu odhadnout, ¨v jakém pořadí zboží nakonec skončí.

presta2

Úplně chybí jakékoliv hromadné akce. Pokud například potřebujete přesunout 10 položek do jiné kategorie, je nutné u každé vstoupit do detailu a nakliknout změnu.

V detailu se navíc texty musí editovat v HTML. Možná je to ale jen nějaká chyba, protože mi na liště svítí chyba javascriptu, tak je možné, že se editor nenačetl. Stejně tak se mi nepodařilo vyzkoušet přiřazování souvisejícího zboží, protože na ně vyskakovala nějaká šílená chyba.

Abych jenom nerýpal, tak je celkem hezky vyřešeno vyplňování parametrů.

presta4

Zmatený jazyk

Zkouším vytvořit novou kategorii. Zadávám krásný český název “Žluťoučký kůň” a PrestaShop rovnou vytváří hezkou URL “luouky-k”. Nejdřív jsem myslel, že možnost editace hezké URL je drobnost, která potěší rýpali, ale ona je to nutnost.

Zajímavou funkcí je nápověda u každého políčka. Pokud například editujete URL, pod ní se zobrazí, jaké znaky nemůžete používat. Podivným důsledkem jejího zmizení při odchodu z políčka ale je, že na Save se musí kliknout dvakrát, protože pod myší uteče. Navíc mi není jasné, proč je například v názvu kategorie zakázáno používat <>{} – Presta neumí escapovat?

Image mapping

Zajímavou funkcí je image mapping. Ten dovoluje vzít fotku, kde je více produktů a ukázat, který je který. Pokud přes obrázek pak zákazník přejede myší, zobrazují se mu popisky. Využití bych viděl možná u fotky, kde by byl vyfocený třeba pokojíček a šlo by klikat na produkty. Přímo vzorové řešení, které je v eshopu po instalaci mi ale přijde dost bezúčelné.

presta

Správa objednávek

Na první pohled vypadá hezky, ale trpí zásadními nedostatky. Je sice možné z ní položky odebrat, ale nejdou přidat. Přitom je poměrně časté, že se se zákazníkem třeba po telefonu domlouvá změna objednávky (kvůli stavu skladu, nebo něco zapomněl, …).

Když jsem z objednávky položku odebral, PrestaShop to asi rozhodilo a při celkovém součtu se trochu přepočítal.

presta3

Zajímavou funkcí je ale historie. Při změna stavu objednávky se ukládá, kdo změnu provedl a kdy. Bohužel při změně zřejmě nechodí email zákazníkovi (nebo jen automaticky a nelze do něj dopsat informaci).

Dalším problémem je zmatenost grafiky. Že lze na něco kliknout a případně to editovat zjistíte až po přejetí myší. Určitě se na to dá zvyknout, ale při prvním používání je to neuvěřitelně zmatené.

Z objednávky samozřejmě nejde vytvořit faktura, exportovat do Pohody, vytisknout podací arch či složenku. Ale byl bych naivní, kdybych něco takového očekával.

Překlady

Milou funkcí je správa překladů. Eshop je možné mít v několika jazykových verzích a ve veřejná části mezi nimi jednoduše přepínat. Jak se s nimi pracuje v administraci se mi ale zjistit nepodařilo. Zkoušel jsem se něco dočíst v oficiální dokumentaci, ale ta je dosti stručná.

Veřejná část

Podobně zmatený jazyk jako v administraci je i na webu. Pokud v titulku uvedete diakritiku, tak se nezobrazí. Možná lze nějak nastavit jiné kódování, ale nikde v administraci se mi takové nastavení objevit nepodařilo. Teoreticky je ale zbytečné, protože stačí používat UTF-8 a nic takového se nemůže stát.

E-shop obsahuje už v základní šabloně spoustu ajaxových hejblátek, které na zákazníka asi mohou dobře působit. Je škoda, že nejsou využity v administraci, kde by se hodily výrazně více.

Hodně mi vadí povinná registrace při objednávce. U open-source eshopů je to asi běžná praxe.

presta5

Po odeslání objednávky mi na email přišly dokonce tři zprávy. První uvítací, druhá s potvrzením, třetí s žádostí o platbu převodem. Copak to nešlo dát do jednoho emailu? Nefunkční diakritika mě už nijak nepřekvapuje.

Zdrojový kód

Celý systém je psán v PHP a dokonce za použití tříd, což u open-source není moc zvykem. Šablony jsou tvořeny ve SMARTY, takže pokud jste s nimi již pracovali, tak by neměl být problém se v nich zorientovat. Samotné zdrojové kódy působí poměrně zmateně, ale pokud je vnitřní logika tvořena pomocí alespoň základního OOP, tak bude zřejmě možné se v něm trochu zorientovat. Oficiální dokumentace bohužel prakticky neexistuje, takže provést změnu typu odstranění povinné registrace zřejmě nebude nic jednoduchého.

Závěr

PrestaShop mě celkově velmi zklamal. Obsahuje spoustu drobností, které jeho příznivci rádi vypichují. Na druhou stranu je jako celek velmi nedotažený. Pokud je v současnosti nejlepším open-source řešením, tak bych nechtěl vidět ostatní :)

Proběhnul jsem ho jen rychle a je mi jasné, že spousta věcí jde vyřešit jinou konfigurací, úpravami, moduly a podobně. Je ale potřeba počítat s tím, že při jeho nasazení si tyto úpravy vyžádají ještě poměrně dost času/peněz. Pokud by šlo o první betaverzi produktu, asi bych se na něj díval jinak.

Původně jsem chtěl jeho propagaci trochu podpořit, ale bohužel obsahuje tak základní nedostatky, že bych ho nikomu nedoporučil. Je možné, že je nejlepší mezi open-source eshopy, protože je 100x lepší než ZenCart. Ale to pořád neznamená, že jde o kvalitní produkt.



O blogu
Blog o provozování eshopů a technologickém zázemí.
Aktuálně řeším hlavně cloud, bezpečnost a optimalizaci rychlosti.

Rozjíždím službu pro propojení eshopů s dodavateli.