Cas client #3

Un plugin Akeneo
pour Sylius 2 :
le pari de
l'innovation

Découvrir en détails le cas client

Découvrir en détails le cas client

Logo Akeneo

Temps
de lecture
mn

Lors de la refonte e-commerce de l'un de nos clients, le choix de la stack technique s'est imposé comme une décision stratégique. Le client, déjà utilisateur d'Akeneo pour la gestion centralisée de ses produits (PIM), avait besoin d'une nouvelle plateforme e-commerce robuste et flexible. Notre choix s'est porté sur Sylius 2, alors dans sa version Alpha.

Cependant, au lancement du projet, aucune solution n'était disponible sur le marché pour connecter Akeneo à cette nouvelle version de Sylius. Face à ce défi technologique, nous avons décidé de développer notre propre connecteur Akeneo pour Sylius 2.

Pourquoi Akeneo est stratégique pour votre e-commerce ?

Dans une stratégie e-commerce, la plateforme de vente ne peut pas être considérée comme l'unique référentiel de données. Pour ce projet, le choix d'Akeneo répond à un besoin de gestion de la donnée. En isolant la gestion de l'information produit (PIM) de la plateforme de vente, vous garantissez une séparation des responsabilités.

L'ERP conserve la maîtrise des données comme les stocks et les prix, tandis qu'Akeneo centralise et structure les données produits (descriptions, médias, caractéristiques techniques). Cette approche permet de limiter les interdépendances : les équipes marketing enrichissent le catalogue sans jamais impacter les performances ou la stabilité de l'environnement de production.

Sylius 2 Un choix audacieux
mais nécessaire

Sylius est un moteur e-commerce headless, conçu par et pour des développeurs. Sa force réside dans son extensibilité et sa capacité à gérer des logiques métier complexes, là où des solutions "clés en main" montrent leurs limites. En tant que Professional Partner Sylius, les équipes de Widop sont formées pour exploiter le plein potentiel de ce framework.

Pourquoi avoir opté pour la version 2, alors encore en phase Alpha ? Le choix était guidé par une vision long-terme. Démarrer un projet d'envergure sur Sylius 1 aurait offert une simplicité immédiate, mais aurait engendré une dette technique rapide et une dépréciation rapide du code. Choisir Sylius 2, c'était garantir à la DSI de notre client une solution pérenne, maintenable et moderne pour les années à venir.

Connecter le PIM au e-commerce

L'écosystème Sylius brille par sa communauté open-source. Toutefois, les changements majeurs entre la v1 et la v2 ont rendu obsolète la quasi-totalité des plugins existants, y compris le connecteur Akeneo historique. La réécriture d'un plugin n'était pas une simple mise à jour, mais une nécessité pour bénéficier de la nouvelle architecture sans sacrifier la synchronisation des données produits.

L'objectif principal du plugin est d'importer les données du PIM Akeneo vers le Sylius de manière performante. Plutôt que de solliciter l'API d'Akeneo à chaque affichage de page, ce qui serait désastreux pour les temps de chargement, le plugin synchronise les données dans la base de données Sylius.

Sylius 1 vs Sylius 2

La réécriture de ce plugin a été motivée par les évolutions des briques technologiques sous-jacentes. Sylius 2 s'appuie sur l'état de l'art de l'écosystème PHP : Symfony 7.3, PHP 8.4, Doctrine ORM 3 et API Platform 4.1.

Côté Frontend, on retrouve un abandon de l'ancien système au profit des Twig Hooks et de Symfony UX. Cette approche "Full Stack Symfony" réduit drastiquement la dépendance au JavaScript complexe, améliorant la maintenabilité et le SEO, tout en s'appuyant sur Bootstrap pour la cohérence du Design System.

Concrètement, nos développeurs ont dû relever plusieurs défis techniques pour adapter le connecteur :

  • Modélisation des données : Adaptation aux nouveaux schémas de base de données de Sylius et gestion des breaking changes.
  • Gestion des médias : Réécriture complète de la logique d'import et de stockage des images pour correspondre à la nouvelle gestion des chemins d'accès et aux attributs produits variables.
  • Cycle de vie des attributs : Implémentation d'une logique de suppression en cascade (si un attribut disparaît d'Akeneo, il doit être nettoyé proprement dans la base de données Sylius).
  • Internationalisation & Cache : Optimisation de la gestion des traductions et mise en place de stratégies de cache pour minimiser la durée des imports.

Un pari réussi

Ce projet démontre la capacité de nos équipes à ne pas seulement intégrer des solutions existantes, mais à construire les briques manquantes lorsque la situation l'exige. Aujourd'hui, le site tourne en production sur une architecture Sylius 2 stable, avec un flux de données fluide et automatisé depuis Akeneo.

Le client bénéficie d'une plateforme moderne, sécurisée et prête pour les futures montées de version.

Vous envisagez une migration vers Sylius ou l'intégration d'un PIM complexe ? Contactez-nous pour étudier votre architecture.

NAVIGATION