WooCommerce vs Shopify okiem developera

Z pewnością każdy początkujący sprzedawca (i nie tylko) zadaje sobie pytanie, jakie narzędzie najlepiej sprawdzi się do sprzedaży jego produktów.

Stały wzrost rynku e-commerce powoduje dynamiczny rozwój platform pozwalających na sprzedaż w Internecie.

Z pewnością każdy początkujący sprzedawca (i nie tylko) zadaje sobie pytanie, jakie narzędzie najlepiej sprawdzi się w sprzedaży jego produktów. Taki sprzedawca zastanawia się jaki mechanizm pozwoli mu się skupić przede wszystkim na sprzedawaniu zamiast na obsłudze sklepu internetowego. Platform e-commerce dostępnych na rynku jest niemało, a najpopularniejsze z nich to:

  • WooCommerce,
  • Shopify,
  • BigCommerce,
  • Prestashop,
  • Magento.

Pomiędzy nimi występują mniejsze i większe różnice, a największe z nich to cena i sposób serwowania usługi. W swoim porównaniu skupię się na platformach WooCommerce i Shopify, czyli darmowym sklepie do którego potrzebujesz hostingu i płatnej platformie SaaS za rozsądną cenę. Od prawie 10 lat w swojej pracy używam WordPressa, bez którego WooCommerce nie mógłby funkcjonować, a od roku jestem też związany z Shopify, a to doświadczenie uzupełnione jest migracją sklepu internetowego z WooCommerce do Shopify.

W poniższym artykule chciałbym ci przedstawić różnice w możliwościach jakie dają webdeveloperom (głównie backendowym) obydwa systemy. Dowiesz się między innymi:

  • czy potrzebujesz własnego serwera WWW,
  • jakie języki programowania są obsługiwane,
  • jak wygląda praca na localhost,
  • jakie są ograniczenia developmentu,
  • jakiej wiedzy i zasobów potrzebujesz, żeby uruchomić swój sklep.

 

Własny serwer WWW - zło konieczne, czy przydatne wsparcie?

Wprawdzie nie jestem administratorem, jednak moja wiedza pozwala mi na udzielenie kilku praktycznych porad nt. serwerów i mogę udzielić kilku praktycznych porad nt. serwerów WWW. Zaczynając od WooCommerce i jego specyfiki, założenie sklepu bez hostingu jest w tym przypadku niemożliwe. Nie ma większego znaczenia, czy skorzystasz z serwera dedykowanego czy z hostingu współdzielonego, na którym samodzielnie wykonasz instalację WordPress i WooCommerce. Możesz też skorzystać z rozwiązań typu WooCommerce as a Service oferowanych przez wiele agencji interaktywnych, która dość skutecznie odetnie cię od zarządzania serwerem, jednak w jakimś stopniu ten serwer posiadać musisz. Zupełnie inaczej jest z Shopify, w tym przypadku serwer jest przydatny, ale nie jest konieczny, żeby z sukcesem prowadzić swój sklep. Wszystko zależy od wymagań technicznych jakie stawiasz swojej platformie.

Jeśli aplikacje dostępne w sklepie Shopify będą dla ciebie wystarczające to już na początku zyskujesz czas i pieniądze, których nie musisz marnować na własny hosting, a które możesz przeznaczyć na abonament Shopify. Jednak jeśli twoje wymagania technologiczne są nieco większe i będziesz potrzebować dedykowanych aplikacji to prawdopodobnie będziesz musiał wyposażyć się w prosty serwer www, na którym te aplikacje będą działać. Zawsze możesz też skorzystać z usług firmy, która taką aplikację nie tylko napisze, ale również będzie ją dla ciebie utrzymywać. Dzięki temu wciąż nie będziesz musiał się przejmować serwerem www, oczywiście to wiąże się z dodatkowymi kosztami, ale w ogólnym rozrachunku mogą one być znacznie niższe niż własna infrastruktura.

 

Do you speak PHP? - czyli w jakich językach programowania możesz pisać

W każdej części artykułu będę zaczynać od WooCommerce, ponieważ taka była moja ścieżka zawodowa. Tym razem chciałbym ci podpowiedzieć, czy twoje umiejętności sprawdzą się przy pracy w obydwu platformach, czy tylko w jednej z nich. Zacznę od części frontendowej projektu, chociaż sam preferuję pracę w backendzie. Jak pewnie się domyślasz, chcąc przygotować własny szablon sklepu musisz mieć wiedzę z zakresu HTML, CSS i JavaScript. To absolutna podstawa i bez znajomości którejś z tych trzech technologii albo będziesz musiał uzupełnić braki wiedzy albo skorzystasz z pomocy innego developera.

Jeśli chcesz przygotować szablon od podstaw i zupełnie sam, to będziesz potrzebować jeszcze jednej umiejętności. W przypadku WooCommerce będzie to PHP, bez którego praktycznie nie da się stworzyć szablonu WordPress od zera, a w przypadku Shopify jest to Liquid. O PHP raczej nie muszę pisać, natomiast wiedza nt. chociażby czym jest Liquid nie jest już taka oczywista. Liquid to język szablonów stworzony przez twórców Shopify ale wykorzystywany obecnie także na innych platformach, np. Zendesk czy Rackspace. Ta subtelna różnica pokazuje też, że w przypadku WooCommerce trudno tak naprawdę oddzielić backend od frontendu. A jeśli chodzi o backendową część projektu to w przypadku WooCommerce nie potrzebujesz w zasadzie niczego więcej niż odrobinę szerszej wiedzy z zakresu PHP.

W Shopify, jeśli chcemy mówić o backend developmencie, to sprowadza się on przede wszystkim do programowania aplikacji, ponieważ Shopify działa w technologii Software as a Service, jedyny kod do którego mamy bezpośredni dostęp to kod szablonu sklepu. Wszelkie aplikacje tworzone na potrzeby Shopify wykorzystują API i dodatkowo mogą wymagać zmian w plikach szablonu. Jednak jeśli tworzyz aplikację stricte backendową to musisz znać tylko język, który pozwoli ci na komunikację z Rest API, a takich języków jest bardzo dużo i w zasadzie możesz pisać aplikacje z użyciem dowolnego backendowego języka programowania. Z pewnością najpopularniejsze z nich to:

  • PHP
  • Node.js
  • Python
  • Ruby

Szczególnie polecanym językiem jest Ruby jako że samo Shopify również jest napisane w tym języku, dodatkowo do Ruby i Pythona są dostępne biblioteki przygotowane przez developerów Shopify, co z pewnością ułatwia programowanie. Dowolność, jeśli chodzi o język programowania jest niewątpliwą zaletą dla każdego web developera, bo bez względu na to w jakiej technologii czujesz się najlepiej z dużym prawdopodobieństwem możesz zacząć swoją przygodę z Shopify.

 

Praca z localhost

Będąc konsekwentnym powiem najpierw kilka słów o pracy na serwerze lokalnym z WooCommerce. Słów rzeczywiście będzie kilka, bo nie jest to temat szczególnie skomplikowany. Żeby uruchomić stronę z WooCommerce na locahost potrzebujesz najprostszego serwera WWW z interpreterem PHP i nie ma znaczenia czy jest to XAMPP, WAMP, MAMP, LAMP czy może zainstalujesz sobie wszystkie składniki oddzielnie, ale sprawa jest tu bardzo oczywista. W przypadku Shopify praca lokalna zależy przede wszystkim od tego co chciałbyś stworzyć. Jeśli efektem twojej pracy ma być szablon Shopify to w zasadzie jedyne sensowne rozwiązanie to użycie Slate. Jest to narzędzie developerskie, które pozwala na development, testowanie i deploy szablonu Shopify.

Jednak jeśli chciałbyś tworzyć aplikacje to raczej będziesz potrzebował lokalnego serwera WWW i narzędzia typu ngrok, natomiast bez samego Slate jesteś w stanie sobie poradzić. Jeśli będziesz pracować i nad szablonem i nad aplikacjami to zdecydowanie potrzebujesz obydwu rozwiązań. Nie chciałbym tutaj wchodzić w szczegóły, bo jest to temat bardzo obszerny, jednak jeśli mógłbym udzielić ci kilku wskazówek to będą dotyczyć one przede wszystkim Slate:

  • jest to narzędzie stworzone przez developerów Shopify i wszelkie alternatywy są raczej gorsze (sprawdzone doświadczalnie),
  • konfiguracja Slate na systemach Windows potrafi przyprawić o ból głowy, dlatego warto się uzbroić w cierpliwość,
  • musisz sobie uświadomić, ze pracując ze Slate de facto nie masz serwera lokalnego i praca bez połączenia z Internetem jest praktycznie niemożliwa, ten problem dotyczy jednak każdego przypadku pracy z szablonem Shopify,
  • zachęcam cię do pominięcia funkcji deploy jaką daje Slate i skorzystania z zewnętrznego narzędzia, które łatwo połączysz z repozytorium GIT, dobrym przykładem takiego narzędzia jest BuddyWorks.

 

Ograniczenia developerskie

Istotną przewagą WooCommerce nad Shopify jest dostęp do kodu strony i możliwości jakie daje ci ta platforma. W przypadku strony umieszczonej na własnym serwerze masz pełny dostęp do jej kodu, co za tym idzie praktycznie nieograniczone możliwości wprowadzania zmian, pomijając oczywiście ograniczenia technologiczne i algorytmiczne. W przypadku Shopify tak dużych możliwości ingerencji w kod całej strony nie ma i pomijając aplikacje, możliwość edycji kodu strony ograniczania się w zasadzie do frontendu. Dodatkowym elementem, w którym możliwe jest wprowadzenie pewnych zmian na styku frontendu i backendu są Shopify Scripts, pisane w języku Ruby, które pozwalają na pewne operacje na stronie koszyka i zamówienia bez konieczności wprowadzania ich w kodzie JavaScript.

Oczywiście to co dla jednych jest wadą dla innych może być zaletą, ponieważ takie podejście ułatwia utrzymanie sklepu, a także zwiększa jego odporność na potencjalne błędy developera. Sklep Shopify nie daje się tak łatwo zepsuć jak to ma miejsce w przypadku sklepu WooCommerce.

 

Wiedza niezbędna do otwarcia sklepu

Z technicznego punktu widzenia nawet WooCommere pozwala na przygotowanie sklepu bez specjalistycznej wiedzy developerskiej, jest to jednak odrobinę trudniejsze niż w przypadku Shopify, przede wszystkim ze względu na konieczność posiadania serwera www, co jak już powiedziałem wyżej również można ominąć. Są też pewne cechy wspólne, które upraszczają utworzenie sklepu zarówno w WooCommerce jak i w Shopify, a należą do nich z pewnością gotowe szablony i wtyczki/aplikacje, które przy pracy w niezbyt zaawansowanych projektach potrafią w pełni sprostać wymaganiom sprzedającego.

Dzięki temu możliwe jest utworzenie sklepu przez osoby, które z webvedevlopmentem mają mało do czynienia, a nawet w ogóle nie posiadają jakiegokolwiek doświadczenia. Należy jednak pamiętać, że sam system WooCommerce jest już wtyczką do platformy WordPress, natomiast Shopify to narzędzie dedykowane do tworzenia sklepów internetowych. Co więcej narzędzie to posiada wiele wbudowanych mechanizmów potrzebnych w handlu internetowym, które w WooCommerce występują jako kolejne wtyczki. To bardzo często już na starcie obniża wydajność sklepu i może wpłynąć negatywnie na koszt uruchomienia, jeśli są to wtyczki płatne.

 

Podsumowanie

Zarówno WooCommerce jak i Shopify to ciekawe rozwiązania pozwalające na łatwe i tanie założenie własnego sklepu sklepu internetowego. Systemy te posiadają wiele cech wspólnych i dają duże możliwości dostosowania do własnych potrzeb. WooCommerce tych możliwości daje nawet odrobinę więcej, jednak wymaga też często większej wiedzy technicznej. Natomiast Shopify to platforma, która upraszcza proces tworzenia sklepu i redukuje wszelkie prace dodatkowe do minimum pozwalając w pełni skupić się na procesach sprzedażowych.

Share this article:
LinkedIn