Magento 2 ervaringen

Onze ervaringen met Magento 2

/ Gepubliceerd: 20 september 2016 / Development

Recent lanceerden we in samenwerking met Momkai de shop voor het Nederlandse uithangbord op fietsgebied: vanmoof.com. Een shop met wereldwijd bereik en mogelijkheden tot verkoop in vele landen. We deden dit in Magento 2, de recent opgeleverde opvolger van de Magento 1.9+ serie. De ervaringen die we hiermee op deden, wil ik in dit blog graag met jullie delen!

Waarom de keuze voor Magento 2?

Er zijn uiteraard andere opties… waarom die niet?

We wilden een shop opleveren die schaalbaar is, lang mee kan en, op technisch gebied, gebruik kan maken van de laatste functionaliteiten.

We hadden uiteraard de keuze tussen WooCommerce tegenover Magento. WooCommerce had hierbij, in combinatie met WordPress, een veel sterkere basis van CMS mogelijkheden ten opzichte van Magento. Aan de andere kant is het ook zo dat WordPress in combinatie met WooCommerce nooit erg fijn werkt op multi-language gebied.

Daarnaast werkt WooCommerce ook niet optimaal in het aanbieden van producten in verschillende landen, met alle haken en ogen die daarbij komen kijken. Denk aan verschillende talen, verschillende valuta, btw-berekeningen voor verschillende regionen en verzendopties. Magento is juist gecreëerd met deze mogelijkheden in het achterhoofd.

Na lang wikken en wegen en het zoeken van alternatieven voor het CMS gebruik binnen Magento, kwamen we tot de conclusie dat Magento het beste platform zou zijn voor deze klus. Vervolgens hadden we de keuze om Magento 1 of 2 te kiezen.

Magento 1 vs. Magento 2 – wat te doen?

De keuze die we moesten maken, werd onder meer bepaald door de ondersteuning van Magento 1.9+ versies. Wat betreft het gebruik voor development; het zou natuurlijk heerlijk zijn om de 1.9+ variant van Magento te kunnen gebruiken, omdat er zeer veel documentatie beschikbaar is en dit platform zogezegd helemaal “uitgeëvolueerd” is. Een eis was echter dat de site na vijf jaar nog geüpdatet en correct gebruikt kan worden. Het team van Magento leerde ons op Meet Magento dat bij de launch van Magento 2 de Magento 1.9+ versies nog drie jaar ondersteund zullen worden met security patches. Dat ging hem dus niet worden.

Veel extra technische mogelijkheden!

Verder heeft Magento 2 de mogelijkheid je eigen code op bijna alles in te laten haken. Ik zal je verder niet vermoeien met de technische details, maar het komt op het volgende neer: we konden het Magento 2 widget systeem goed aanpassen om zodoende de gewenste CMS functionaliteit te creëren voor VanMoof (zie bijvoorbeeld de prachtige product detail pagina’s). Als je bekend bent in WordPress ken je wellicht de plugin Advanced Custom Fields waarmee je elk type veld aan een pagina kunt koppelen – dit concept hebben we proberen na te bootsen.

We konden deze CMS pagina's creëren door Magento 2 widget code aan te passen.

We konden deze CMS pagina’s creëren door Magento 2 widget code aan te passen.

Moeilijkheden die we tegenkwamen tijdens development

Weinig documentatie

Wat hierboven staat klinkt allemaal alsof het een walk in the park was – helaas nog niet. Het hoofdprobleem daarvan is de tijd – Magento 2 is nog niet zo lang uit en dat betekent dat er zéér weinig documentatie beschikbaar is. Ook al is er wel documentatie vanuit Magento zelf, een ontwikkelaar leeft eigenlijk van de problemen van anderen en hoe zij dit hebben opgelost. Daarom zijn coding communities als StackOverflow zo groot!

Het heeft dus wat tijd gekost om eens goed in de core van Magento te duiken en te kijken hoe dingen zitten zonder gemakkelijk een oplossing aangereikt te krijgen. Onderdeel van het vak!

Core bugs

Verder verkeerden we in de situatie dat Magento 2, t.o.v Magento 1, open source is. Op zich goed, maar aangezien de basis Magento 1 is en de code nu voor het eerst “open” is voor developers, betekende dat er een heleboel issues naar boven kwamen die eigenlijk ooit nog eens opgelost moesten worden. Een Pandora’s doos, zogezegd.

Dat betekende wel dat als wij een core bug vonden, we behoorlijk op onszelf aangewezen waren deze op te lossen, want de community was nog niet heel erg op gang met het oplossen ervan. Kijk maar eens hoeveel issues er nog zijn!

Het mooie van deze problemen is dat de tijd deze vanzelf gaat oplossen. Afwachten dus.

Toffe nieuwigheidjes

Als je in een nieuw systeem werkt heb je ook heel veel leuke nieuwe foefjes tot je beschikking: één van de grote voordelen. Bijvoorbeeld de API.Voor wie niet weet wat een API is; het is een set functies van een systeem die je vanaf elke plek kunt aanroepen. De API van Magento 2 is behoorlijk uitgebreid en wederom voor de developer gemakkelijk uit te breiden. Denk dus niet alleen aan VanMoof, in dit geval, maar ook de andere mogelijkheden die dit biedt op het gebied van het gebruik in andere code, je kunt er bijvoorbeeld apps mee maken, of koppelingen met ERP systemen.

Wíj hebben er erg veel gebruik van gemaakt bij het bouwen van de zogeheten “bike composer” – Momkai ontwikkelde het prachtige ontwerp en de UX voor deze zeer intuïtieve manier van het samenstellen van je fiets.

Bike composer

Bij het maken van de bike composer maakten we veel gebruik van de Magento API.

Eindstand

Door dit project zijn we Magento 2 tot in de diepte gaan begrijpen en we hebben een boel code geschreven waarop we in de toekomst kunnen voortborduren. We hebben bijgedragen aan de community en geleerd dat Magento niet per sé slecht hoeft te zijn op het gebied van CMS mogelijkheden, mits correct uitgebreid. Het mooie hiervan is dat we hiermee vrij vroeg zijn en aan het begin van de Magento 2 ontwikkeling staan en hierin kunnen meegroeien.

Buiten al deze voordelen hebben we i.s.m met Momkai een mooie webshop op kunnen leveren die ook nog eens een prachtig product verkoopt. Dat ziet er goed uit voor de toekomst!

Magento 2 voor jouw business inzetten?

We denken graag met je mee of Magento 2 een passende platform is voor jouw business. Nog gerust één van onze specialisten uit voor een kennismaking.

Meer artikelen in je inbox?

(wij sturen max 6 mails per jaar)

Tommy Kolkman

Back-end developer

Tommy is lead developer en technisch partner bij Elephant. Vooral bedreven op het gebied van Back-end development in WordPress en Magento 2. Tommy blijft up-to-date binnen de branche en deelt via onze blog de laatste ontwikkelingen met je. Naast het klappen van goede code, houdt Tommy ook van muziek en speelt als gitarist in een band.

Alle artikelen van Tommy »