Chapitre 3 sur 20
WordPress/WooCommerce pour le e-commerce
Nous avons déjà rapidement abordé la question dans le chapitre “Moteur de blog, CMS ou Framework ?“, WordPress est-il une bonne solution pour un site e-commerce ?
Si cette question se pose, c’est évidemment que WordPress est tout à fait capable de faire de l’e-commerce. Le plugin WooCommerce ajoute toutes les fonctions nécessaires et la marketplace WooCommerce regroupe des milliers d’extensions couvrant presque tous les besoins.
Dès lors, on est en droit de se poser la question : pourquoi WordPress/WooCommerce plutôt qu’une solution spécialisée ?
Je ne vais pas vous dire qu’il faut adopter WP dans toutes les situations, cependant, nous allons voir les différences avec les autres options qui s’offrent à nous et évaluer les avantages et inconvénients.
WooCommerce VS SaaS
Les plateformes e-commerce cloud de type SaaS gagnent aujourd’hui du terrain. Ce constat n’est pas étonnant. Ces solutions offrent un moyen clef en main de mettre sur pied une boutique extrêmement rapidement et à peu de frais (initialement).
Par ailleurs, aussi bien Shopify que BigCommerce permettent de créer des thèmes sur-mesure et offrent via leurs API, de très nombreuses possibilité de customisation.
Nul besoin de se soucier de l’hébergement et des aspects techniques, tout est géré pour vous. Cependant, vous êtes aussi limité dans les possibilités d’intégrations car vous ne pouvez pas (ou peu) ajouter de code métier. Par ailleurs, les passerelles de payement sont limitées et vous êtes tributaire des conditions de la plateforme.
Heureusement, leurs API permettent de faire de très nombreuses choses, mais l’intégration de certaines fonctionnalités (forum, programme de fidélité…) sont limitées, chères ou très complexes.
Chaque approche possède des atouts et des limitations. Pour en savoir plus, voici un comparatif détaillé entre WooCommerce et Shopify.
En dernier lieu, il faut aussi noter qu’une approche hybride est possible. C’est ce que propose Snipcart : vous utilisez vos outils de prédilection pour gérer le contenu, Snipcart s’occupe des fonctionnalités e-commerce (panier, payement, expédition, factures…).
Frameworks e-commerce
À l’autre bout du spectre des solutions, nous avons les frameworks e-commerce (Bagisto, Sylius…). Ces derniers s’opposent aux CMS dans la mesure où ils sont plus bas niveau. C’est à dire qu’ils permettent plus de souplesse au détriment d’un temps de développement plus long.
Ce sont en général des modules qui viennent s’ajouter aux grands frameworks généralistes afin d’apporter une palette de fonctionnalités spécifiques au e-commerce. Dans la logique d’un framework, leur but est d’accélérer le développement du code mais pas d’offrir une solution prête à l’usage.
Les CMS e-commerce
Les deux plus connus dans cette catégorie sont Magento et PrestaShop. Évidemment, ces deux solutions sont dédiées au e-commerce. Elles offrent donc par défaut de nombreuses fonctions dédiées à cet usage.
Certaines fonctions assez poussées ne sont par défaut pas présentes dans WooCommerce. On peut citer à titre d’exemple la gestion du stock multi-entrepôt. Magento est réputé être plus puissant et adapté à des boutiques d’envergures, mais aussi plus lourd à héberger et par conséquent requiert un hébergement solide.
J’ai récemment travaillé sur un site PrestaShop. On voit immédiatement que le e-commerce est dans la place ! En revanche, pour tout ce qui est éditorial, on repassera. Pour modifier le contenu d’une page, il faut aller dans un sous-menu et il n’y a pas de blog par défaut.
Par ailleurs, le CMS a beau reposer sur Symfony, c’est une galère pour le développement : difficile de passer d’une version à l’autre et de changer de version de PHP, les migrations sont compliquées, la version de dev n’est pas la même que celle de prod…
Là où ces solutions atteignent leurs limites, c’est lorsque l’on souhaite développer un site polyvalent. Vous l’avez peut-être déjà constaté, sur de nombreux sites, la boutique est sur un “site séparé”, dans un sous-domaine (pas le top d’un point de vue SEO).
Cela est parfois un choix voulu mais c’est aussi souvent imposé par des limitations techniques. En effet, ces solutions n’offrent que peux de fonctions en dehors de leur cœur de métier : éditorial limité, intégrations sociales parfois complexes etc.
Dès lors, pour intégrer le catalogue produit dans le reste du site, il faudra s’interfacer avec l’API d’un système différent, on ajoute immédiatement de la complexité.
On pourrait souhaiter tout avoir sur le même domaine pour une intégration maximum (expérience plus immersive pour l’internaute) et également profiter des bienfaits SEO du contenu rédactionnel.
Les CMS généralistes
De la même manière que WooCommerce permet d’ajouter des fonctionnalités de e-commerce à WordPress, VirtueMart permet de faire du e-commerce avec Joomla et Drupal Commerce avec Drupal.
Je n’ai pas une connaissance assez approfondie des trois solutions pour en faire un comparatif. Les trois sont éprouvées, activement développées et, de manière générale, autant partir sur la solution offerte par le CMS que vous connaissez ou qui est déjà en place (dans le cas d’un site existant sur lequel on souhaite ajouter du e-commerce).
L’avantage de ces solutions comparées aux autres est qu’elles sont avant-tout conçues pour gérer du contenu (et des utilisateurs). Ainsi, pour ces CMS, les produits ne sont qu’un type de contenu spécifique et les clients ne sont que des utilisateurs spécifiques.
Cette approche offre une incroyable souplesse et une puissance difficilement égalable en terme de richesse de contenu : blog, FAQ, tutoriel, contenu riche, landing page, forum, espace communautaire… Autant de fonctions que ne permettent souvent pas les autres outils (avec les frameworks, tout est faisable moyennent du temps de développement).
Avec les CMS, vous bénéficiez d’une immense panoplie de fonctions au sein du même outil tandis qu’avec d’autres approches, il faudrait un outil (et potentiellement un sous-domaine) pour chaque fonction ; avec tous les inconvénients que cela représente :
- difficulté à récupérer des produits (en promo, meilleur vente, etc) sur certaines pages de contenu,
- utiliser les mêmes identifiants clients pour le forum ou l’espace communautaire,
- permettre au client de commenter sur le blog avec leur compte déjà existant…
Et WooCommerce
WooCommerce est sans conteste le plus populaire. Il profite en effet de l’immense popularité de WordPress. Il propulse des millions de sites e-commerce et, de ce fait, il y a des chances que vos besoins et vos problèmes aient déjà été rencontrés par quelqu’un d’autre.
Pour cette raison, l’offre de plugins est sans égal et la communauté – que ce soit sur les forums officiels, Stack Overflow ou même directement sur GitHub (en cas de bug) – a réponse à tout.
Son nouvel éditeur, Gutenberg, est si puissant que même Joomla et Drupal l’ont adopté. WooCommerce possède également l’avantage d’offrir une interface familière à tous ceux qui utilisent déjà WordPress. Il est très facile à customiser, que ce soit via l’ajout de plugin ou avec notre propre code.
Pour les petits sites
On entend souvent que WooCommerce convient seulement pour des petites boutiques. Évidemment, on n’aurait pas l’idée d’utiliser WooCommerce pour Amazon. Cependant, l’idée que WooCommerce ne peut fonctionner qu’avec quelques produits et quelques transactions par jour est totalement fausse.
Certaines boutiques ont des centaines de milliers de produits à leur catalogue et des centaines, des milliers voir même des centaines de milliers de transactions par jour avec WooCommerce.
C’est bien la preuve que ça scale. D’ailleurs, parmi les stores d’importance, la marketplace WooCommerce tourne évidemment avec WooCommerce !
Gagnant ?
WooCommerce peut répondre aux besoins de 99% des e-shops. C’est pourquoi, à moins que les besoins soient très spécifiques, qu’un autre CMS soit historiquement utilisé où que l’équipe de développement soit plus à l’aise avec d’autres outils, c’est la solution que je recommande généralement.
Néanmoins, les autres CMS et les offres SaaS ont aussi des atouts et, au final, tout est à mettre en relation avec les besoins et contraintes du projet.
Dans le prochain chapitre, nous allons aborder les conventions de code qu’il est nécéssaire de connaître lorsque l’on développe avec WordPress.
Commentaires
Rejoignez la discussion !