Sklepy Internetowe część 1: Magento

Zostałem poproszony o zrobienie sklepu Internetowego. Pomyślałem, że może być to dobry pretekst do przyjrzenia się, co aktualnie oferuje open source w tej kategorii. Krótki research i na pierwszy ogień poszedł Magento najczęściej polecany. Najnowsza wersja podczas pisania recenzji to 1.4.1.0, jednak testy były wykonywane na starszej wersji 1.4.0.1. Lista zmian nie jest jakaś imponująca, więc nie powinna mieć znaczenia na ocenę końcową.

Strona Internetowa sklepu wygląda profesjonalnie, a sam projekt jest dynamicznie rozwijany. Statystyki jak 1,5 miliona pobrań oraz ponad 2000 dodatków robią wrażenie.

Instalacja

Skopiowałem pliki na serwer i bez zbędnych ceregieli wpisałem adres domenę sklepu. Zgodnie z przewidywaniami uruchomił się instalator.

Szybko zaakceptowałem licencję i przeszedłem dalej, do okna wyboru opcji lokalizacyjnych.

I tu się pojawił pierwszy problem. Zmiana języka lokalizacji na polski powoduje automatyczne przeładowanie strony i powrót do języka angielskiego. Trudno, angielski znam, jakoś przeżyję. Wybieram strefę czasową “Europe/Warsaw”, walutę “Polish Zloty” i przechodzę dalej.

W końcu coś ciekawego. Uzupełniam dane do połączenia z bazą klikam dalej. Instalator tworzy teraz zapewne wszystkie tabelki w bazie wymagane, jednak brak o tym żadnej informacji. Przez około 7 minut nic się nie dzieje. Jest to zdecydowanie za długo, aby pozostawić zwykłemu użytkownikowi wczytującą się stronę z ciągle dostępnym przyciskiem “Continue”. Bardzo prawdopodobne, iż nieniecierpliwiony kliknąłby go ponownie, wysyłając kolejne żądanie do serwera, z niewiadomo jakim rezultatem.

W końcu pojawił mi się kolejny krok, ze zdefiniowaniem domyślnego użytkownika i podobnych opcji.

Szybkie uzupełnienie informacji i już można cieszyć oko informacją o pomyślnej instalacji.

Niestety, ale tak gładko instalacja przeszła dopiero za drugim razem, po przeczytaniu instrukcji instalacji. Przy pierwszej próbie instalator na jednym z kroków nie chciał przejść dalej, jednak nie informując czemu. Dopiero po spojrzeniu w instrukcję doczytałem, iż chodzi o uprawnienia do katalogów. Dlatego, za brak informacji o błędach – duży minus.

Pierwsze wrażenie

Po instalacji ukazuje się nam prawie pusta strona główna. Jest przykładowy banner, przykładowa ankieta, ale brak przykładowego… produktu. Trochę dziwne – w końcu zainstalowałem sklep.

Niestety, ale kliknięcie w jakikolwiek link kończy się wyświetleniem pięknego komunikatu o wyłączonych cookies.

Po około trzech godzinach debugowania odkryłem iż portal wysyła cookie z datą wygaśnięcia wstecz. Tymczasowym rozwiązaniem tego problemu jest w pliku (swoją drogą ścieżka imponująca)

magento/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php

zakomentowanie linii numer 100:

call_user_func_array('session_set_cookie_params', $codokieParams);

Sam sklep niestety jest chyba najwolniejszą stroną PHP, jaką w życiu widziałem. Wczytanie każdej strony trwa około 2 sekund przy użyciu cache. Bez cache strona główna wczytuje się 10 sekund.

Panel administracyjny

Po rozwiązaniu problemu z cookies zalogowałem się na admina i… zauważyłem ceny w dolarach. Dziwne, skoro podczas instalacji wybrałem “Polish Zloty”.

Dalej podczas grzebania w panelu odkryłem, iż żadna z opcji lokalizacyjnych wybrana podczas instalacji (język, waluta, strefa czasowa) nie została zapisana.

Jako że dobrze, aby polski sklep był po polsku, poszukałem możliwości polonizacji. Wybór języka polskiego w panelu spowodował jedynie zmiany daty na polska. Dlatego poszukałem dodatku polonizacyjnego. Niestety, jego instalacja zakończyła się niepowodzeniem.

Analizując treść błędu doinstalowałem paczkę php-pear, jednak nie zrobiło to żadnej różnicy. Niestety, ale instalacja polonizacji zakończyła się niepowodzeniem.

Sam panel administracyjny początkowo przeraża ogromem opcji. Jednak, gdy już raz się odkryje lokalizację danej opcji, to następnym razem już łatwo do niej trafić.

Kolejną rzeczą jest do, iż potworzyłem sobie podstrony, potworzyłem kategorie, potworzyłem produkty, stawki VAT, ale utworzonego sklepu nie udało mi się zobaczyć…

Podsumowanie

Magento posiada ogrom opcji, skoda tylko, że ciężko je opanować. Dostępna pomoc ma pełnić bardziej funkcję marketingową, a przykładowo oficjalny 212 stronicowy user guide dostępny jest za jedynie 24,95$. Mnie niestety, po utworzeniu sklepu od strony administracyjnej, nie udało się zobaczyć go od strony użytkownika. Zapewne nie ustawiłem jakiejś małej opcji, ale jak ma obsłużyć ten sklep zwykły nieinformatyczny użytkownik?

Dochodzą do tego problemy z instalatorem, który pominął opcje lokalizacji i zmusił mnie do przerabiania kodu. Wyraźnie widać, iż Magento jest przygotowane na rynek amerykański.

Ponad 2000 dodatków wygląda imponująco, ale co z tego, skoro nie da się ich zainstalować?

Niestety, ale wyraźnie projekt skierowany dla bogatych firm, które są w stanie wydać grube tysiące na serwery, support i szkolenia.

One thought on “Sklepy Internetowe część 1: Magento

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.