Étude de cas : comparaison de Magento et WP-E-Commerce

22

Nous sommes convaincu que WordPress sait se donner à fond sur tous les types de projets web. Aidé de Wp-E-Commerce, il sait être un concurrent redoutable pour les plus grandes plateformes de e-commerce comme Magento. Bien entendu, j’entend déjà ceux d’entre vous me disant que Magento est dôté de bien plus de fonctionnalités e-commerce que wp-e-commerce n’en possède. Je vous répondrais simplement, tout dépend du besoin client.

Nous voulions vous présenter WordPress sous un angle E-Commerce sans technique, mais sachant que nous sommes totalement partial, nous préférons vous conter l’aventure d’un développeur Magento rencontrant le monde WordPress.

Traduction de l’article « Magento vs WordPress a comparison case study » de Ashley Schroder par Louis Lecailliez, traduction web

Être programmeur signifie typiquement que votre famille et tous vos amis prennent pour acquis le fait que vous 1) sachiez réparer un routeur wifi et 2) que vous ayez envie de le faire. Pour la même raison nous sommes souvent sollicités pour mettre en place un site internet, un blog, développer une application web 2.0 de-la-mort-qui-tue, voire tout cela à la fois ; le plus souvent je ne peux pas aider par manque de temps libre. Mais j’ai quand même réussi à trouver du temps pour un projet basé sur WordPress et WP-E-Commerc. Ce billet est une étude dudit projet qui compare les solutions WP-E-Commerce et Magento.

Ma copine Cindy m’a demandé de l’aide pour sa nouvelle entreprise : Cheap Titles (le site met en vente des titres de propriétés Néo-Zélandais). Je l’ai tout naturellement aidée à concocter un site. En fait bien que je passe le plus clair de mon temps à développer des extensions pour Magento, j’ai donné une chance à la combinaison WordPress + WP-E-Commerce. Comme je résume les raisons de ce choix dans la partie suivante, je dirai simplement que cela a rendu les choses bien plus faciles.

Je résume ici mes expérimentations lors de la création du site avec WP-E-Commerce, les différences que j’ai pu remarquer entre les deux plateformes, et en particulier ce que je pense de la qualité du code sous-jacent de WP-E-Commerce par rapport à celui de Magento.

Pourquoi WordPress et pas Magento ?

Tout d’abord pourquoi donc un développeur travaillant sur Magento tel que moi, a-t-il pu ne serait-ce qu’imaginer une autre solution ? En voyant que le site n’avait pas besoin d’un catalogue gigantesque, ni d’aucune des fonctionnalités bling-bling de Magento, il n’était pas couru d’avance de l’utiliser. WordPress est une solution beaucoup plus simple et plus légère. Il est plus facile à utiliser pour des non-informaticiens, ce qui est était un point important car je n’avais pas envie de devoir répondre à des questions telles que «Pourquoi mes produits ne sont-ils pas affichés ?»

Un autre point du cahier des charges était la présence d’un blog. Je sais qu’il existe des extensions dédiées à cela pour Magento et je sais qu’on peut interfacer WordPress et Magento par une foultitude de moyens (une des meilleures étant d’encapsuler WordPress entre le header et le footer Magento).

Je n’utilise pas cette extension parce que je n’aime pas l’idée d’utiliser un blog qui n’est pas un WordPress, tout simplement parce que je sais qu’il est tellement utilisé que je trouverais la solution sur Google pour presque tous les problèmes rencontrés. L’intégration entre les deux aurait fonctionné mais aurait demandé pas mal d’efforts supplémentaires, pour un gain quasiment nul sachant que les fonctionnalités avancées de Magento n’étaient pas nécessaires (par exemple la fonction de comparaison entre produits).

Voilà le pourquoi de ce choix : blogguer en toute simplicité.

Construction du site

Si vous m’avez déjà rencontré vous devriez savoir que je suis loin d’avoir la fibre artistique, en conséquence le site a été construit en utilisant une version personnalisée d’un thème payant. J’ai utilisé Appcloud de Tokokoo. En fait je dois vous avouer que je n’achèterai plus de thèmes de cette équipe… en fait certaines de mes critiques concernant le code (ci-dessous) sont plus de la faute du thème que de l’extension WordPress sous-jacente.

À côté de ça, la construction du site se résume principalement à moi travaillant sur les CSS et le code PHP, et Cindy ajoutant les produits et le contenu. Tout s’est déroulé comme prévu, rapidement et sans accrocs. Le site est maintenant en production et traite les commandes.

Ce qui a bien fonctionné

De nombreuses choses ont été très faciles à installer et ont bien fonctionné sur le site.Voici ma sélection :

Ajout d’un champ personnalisé pour l’adresse du titre : cela a bien fonctionné, juste en réaffectant les options de personnalisation d’un produit. Avec Magento cela aurait été un champ personnalisé pour un produit, c’est donc aussi faisable.

Méthodes de paiement et passage d’une commande : en comparaison de Magento, la procédure de paiement dans WP-E-Commerce est relativement simple, et c’est un changement rafraîchissant. L’intégration de Paypal fonctionne aussi « out of the box », ce qui est sympathique. La page de paiement est une page unique où vous pouvez choisir les contrôles du formulaire très facilement. Sur cheaptitles.co.nz nous avions seulement besoin de 3 champs : le nom, un numéro de téléphone et une adresse électronique. Dans Magento la personnalisation de la page de paiement peut être pour le moins douloureuse.

Ajout de produits : le formulaire d’ajout de produits est également une simple page, il n’y a pas vraiment moyen de la détraquer et elle possède toutes les fonctionnalités nécessaires pour le site : un titre, une description, une image et un prix. Et c’est tout.

Intégration d’un blog : comme je l’ai dit plus tôt, même si Magento peut s’en charger, il n’y a rien de plus simple qu’un WordPress natif.

Ce qui n’a pas bien marché

J’ai dû éliminer de nombreux bugs dans le thème, et j’ai du améliorer certaines zones. Le thème ne semblait être qu’une accumulation de hacks. Voici quelques-uns des problèmes que j’ai dû résoudre.

Le bouton de paiement (le plus important du site !) ne fonctionnait pas avec Internet explorer. Oui, c’est la loose totale. Le bouton HTML n’avais pas d’attribut type= »submit », ce que Firefox interprète comme un bouton de validation, tandis qu’IE ne fait rien lorsqu’il est cliqué (essayez vous-même). Ceci donne un aperçu de la manière dont le thème a été testé… Un thème pour une application d’e-commerce qui ne permet pas de commander sur le navigateur le plus utilisé, ça ne va pas vous aider à faire fortune.

La numérotation des pages a été défectueuse (current page == max page et pas >=), donc Google a indexé à peu près 160 pages vides :

Un bug dans la numérotation a conduit Google à indexer un tas de pages vides.

Ceci a maintenant été réglé grâce à des redirections et j’ai complètement désactivé la numérotation des pages de produits, puisque le magasin n’en aura jamais besoin de plus d’une seule. Mais c’est un piège pour les personnes débutantes dans la création de sites web qui pourraient ne pas remarquer ce genre de choses. C’est une autoroute pour se faire bannir de l’indexation de Google si vous laissez un de ses robots piégé dans une boucle infinie de pages vides !

La qualité du code en général

Du point de vue développeur, la différence entre Magento et WP-E-Commerce est astronomique. WP-E-Commerce est l’héritier du monde de PHP en tant que script pour le web, dans lequel absolument tout est contenu dans les fichiers .php : la logique métier, le contrôleur et la couche de persistance. Ce qui donne l’impression de faire de l’archéologie lorsqu’on lit et qu’on édite ces fichiers. C’est parce qu’à l’université avant de commener à programmer des logiciels en entreprise, on se contente d’écrire tout le code dans de gros et longs fichiers, parce que cela semble plus simple sur le moment. Pour être plus honnête, il y a des traces de modularité et même un framework de thèmes dans WP-E-Commerce, mais ce n’est pas un substitut à une application orientée objet moderne.

La réalité est que les vieilles architectures logicielles rendent le code difficile à lire, à modifier et à refactoriser et WP-E-Commerce est atteint de ce mal. Ma technique de développement repose essentiellement sur la recherche d’une chaîne de caractères que j’espère trouver dans le code (une classe CSS ou une chaîne d’affichage) puis que je recherche avec grep dans le fichier wp-content.

Pour vous donner un exemple jetez un coup d’œil à ce morceau de code extrait de la procédure de commande :

case "delivery_country":
if(wpsc_uses_shipping() && (get_option('use_billing_unless_is_shipping') != 1)) {
$country_name = $wpdb->get_var("SELECT `country` FROM `".WPSC_TABLE_CURRENCY_LIST."` WHERE `isocode`='".$_SESSION['wpsc_delivery_country']."' LIMIT 1");
$output = "

 

 

".$country_name." ";
} else if(get_option('use_billing_unless_is_shipping') == 1) {
$output = wpsc_shipping_country_list();
} else {
$checkoutfields = true;
//$output = wpsc_shipping_country_list($checkoutfields);
$output = wpsc_country_region_list($this->checkout_item->id , false, $_SESSION['wpsc_selected_country'], $_SESSION['wpsc_selected_region'], $this->form_element_id(), $checkoutfields);
}
break;

 

 

Nous y trouvons de l’affichage HTML, de la logique métier et quelques accès à la base de données, tout cela à un endroit.
C’est très différent de l’architecture de Magento (MVC + EAV), et il est facile de comprendre pourquoi une application comme Magento est capable d’évoluer, d’implémenter de nouvelles fonctionnalités à un rythme rapide sans s’effondrer sous son propre poids. Ceci dit Magento est largement plus complexe, pas seulement pour les utilisateurs mais aussi pour les développeurs.

Bien sûr cela ne tient pas compte des performances de l’application, Magento nécessitant des ressources considérables ainsi que des efforts d’optimisation. Comme toujours, c’est un compromis.

Conclusion

Maintenant que le site est en place et vend des titres comme des petits pains je suis en mesure de me demander si je le referais de la même manière. Le fait est qu’en dépit des problèmes avec la qualité du code que j’ai mis en lumière, je continue à penser que le site a été développé plus rapidement et demandera moins de maintenance sur le long terme qu’un site reposant sur Magento. Donc oui, pour des projets d’une taille moyenne, je le referais à nouveau avec WordPress.

Et vous, vous êtes-vous déjà posez la question d’utiliser Magento et toute sa lourdeur quand WordPress et Wp-E-Commerce sait très bien s’en tirer sur des projets raisonnable ?

Partager

à propos de l'auteur

22 commentaires

  1. Pour avoir aussi utiliser les deux solutions, je pense que ce n’est même pas comparable, ils n’ont pas la même cible, Magento c’est très professionnel, complet et évolutif. wp-e-Commerce c’est pour gérer un petit catalogue dans un site vitrine ou un blog, de plus j’ai été très déçu par la qualité du code et le nombre important de bugs présent dans ce plugin, je pense même qu’il y a mieu comme plugin e-commerce wordpress.

    • Tout dépend de ta définition de petit catalogue, mais wp-e-commerce est fort sympathique lorsqu’il s’agit de gérer un projet ecommerce avec des personnes ne connaissant pour ainsi dire rien au monde du web et dont le nombre de référence ne dépasse pas trop les 500.
      Pour ma part, je ne pourrais dire que Magento est très professionnel, complet et évolutif par opposition à WordPress. Tout les deux sont professionnels, complets et évolutisf, l’un s’accrifiant le côté « toutes options incluses » au profit d’une prise en main rapide. Tout dépend du besoin :)
      Je serais curieux de connaitre le plugin e-commerce wordpress dont tu fais mention.

  2. Tu t’en tiens beaucoup trop à la couche interface avec l’utilisateur. Bien sûr une personne qui a 3 ventes sur son e-commerce par mois n’a pas a s’embetter avec une mastondon comme magento. Mais comparer wp-commerce à magento c’est comme comparer le bloc-note et Word !!!
    Tu ne parles pas des avantages des versions entreprises dont notamment l’interconnexion avec les ERPs, les CRMs, les progiciels de finances, les logiciels de gestion de stocks, les SCMs, et j’en passe !!!
    Il ne faut pas se borner à la simplicité et à l’accessibilite du plugin WordPress !

    • Tous les projets ecommerce nécessitent-ils une interconnexion avec un ERP, CRM, progiciel de finances… non :)
      Alors oui, je me concentre principalement sur la partie accessibilité car pour toute une partie des ecommercants, cela commence surtout comme ca.
      Bien entendu, je n’ai pas la prétention de dire que Wp E-commerce remplace Magento en cas de besoin d’interconnexion avec un ERP, mais je pense que wp e-commerce est capable de faire tourner une boutique avec bien plus que trois ventes dans le mois (et je vais te dire un secret, je connais des sites de e-commerce sous magento qui eux, ne font que trois ventes par mois… à se demander si Magento est vraiment ce qu’il faut des qu’on parle e-commerce :)

  3. Pingback: links for 02/15/2011 « Alan Vonlanthen's blog

  4. Pingback: links for 02/15/2011 « Alan Vonlanthen's blog

  5. Pingback: E-commerçants, Restez Petits ! – E-commerce, Blog :: Magento, Wordpress » Inside da web

  6. Bonjour,
    Pour les petits projets j’aurais plutôt tendance à conseiller prestashop, mais Wp pourquoi pas. Le seul bemol pour magento et les petits projets est le coût de l’hébergement. Après on peut avoir un petit site ecommerce (qui ne demande pas beaucoup d’effort a maintenir) avec magento.

    • Salut,

      En effet il est courant de partir sur du Prestashop ou consort lorsque nous parlons de ecommerce de taille modeste. Je pense cependant que wp-ecommerce à toute ses chances face à ces concurrents. Parfait Ousider, nous sommes certains que d’ici peut de temps, il deviendra aussi une référence dans le domaine.

      Je suis d’accord, Magento sait se plier aux projets de taille modeste, mais cela nous fait penser à l »histoire du bazooka pour tuer une mouche… Cela ne serait pas un peu « disproportionné » ? Pourquoi mettre en place du Magento, qui demandera du temps et des moyens conséquents pour n’importe qu’elle petite modification alors que des « WpEcommerce » savent répondre aux besoins premiers en terme de ecommerce ? Encore une fois, tout n’est question que de niche de marché. Magento est formidable, mais cela est-il vraiment le bon choix pour un projet avec moins de 1 000 références et un budget… limité ? :)

    • Je rajouterais également que si part « effort de maintenance » tu entends un site qui tourne correctement tout le temps sans « buger » mystérieusement, alors oui Magento est une bonne plateforme, mais ce n’est pas la seule.
      Si tu entends par là que des modifications peuvent facilement être réalisé, je serais un peu plus réservé. J’ai déjà vu de simple demande utilisateur se transformer en plusieurs jours de travail car la mise en place était rendue complexe par Magento. Mais je suis certain qu’il existe aussi des exceptions :)

  7. Bonjour,
    j’ai trouvé cet article très intéressant, il croise pas mal de mes questionnements sur WP e-commerce, que je suis en train de tester pour 2 de mes clients (qui ont entre 10 et 20 articles/services à vendre).

    Ce qui reste flou c’est la chose suivante :
    – le Gold cart plugin permet-il vraiment tous les types de connexion bancaire ? Est-ce que la procédure est compliqué ? http://getshopped.org/extend/premium-upgrades/

    Note : c’est vrai que AppCloud a l’air bizarre… je l’ai installé sans acheter la version payante… de toute façon j’ai besoin d’une présentation qui fonctionne sur les terminaux mobiles.

  8. Je rejoins ton avis sur WP E Commerce… C’est une énorme horreur qu’il faut à tout prix éviter… On peut lire sur internet que c’est une solution simple qui fait gagner beaucoup de temps… C’est faux !!!

    Pour ma part, j’ai acheté des plugins… Tout était catastrophique, complètement aberrant… Mal codé, ou tout simplement non fonctionnel… Un héritage de bug et de codes orphelins…

    Pour l’anecdote, j’ai acheté le plugin pour le drag n drop en javascript/ajax… Rien ne fonctionnait correctement/complètement, sur aucun navigateur… Je me suis ensuite rendu compte que la démo sur le site même du créateur du plugin wp e commerce renvoyait sur un autre site qui n’utilisait pas le même code (et fonctionnait très mal aussi…). En vrai, son plugin drag n drop fonctionne tellement mal qu’il ne peut pas mettre la vraie démo… C’est totalement malhonnête…

    Au final, j’ai dû tout recoder moi-même…
    Depuis, c’est pretashop ou magento, et je stop les petites solutions qui semblent être de bonnes idées au départ…

    Pour les curieux, le shop se trouve ici : http://www.stupeflip.com

    • Je pense qu’il est difficile d’incriminer WP-Ecommerce dans ton cas, car cela semble être un soucis de plugin plus qu’autre chose non ?
      http://www.ecritoireduvillage.fr, voila ce que nous pouvons faire avec du wordpress et wp-ecommerce.

      Je suis allé faire un tours sur le site de stupeflip, franchement, c’est une tuerie stupeflip vite, merci de la découverte (sinon le site est bien fait, mais je ne vois pas ce qui t’aurais empêché de le faire sous wp-ecommerce, si ce n’est ce drap’n drop pour les articles ;)

  9. Très sympa ta réalisation http://?www?.ecri?toi?re?du?village?.fr !

    Pour le site de Stupeflip, il s’agit bien d’un WP Ecommerce + plugin drag’n’drop… J’ai juste recodé intégralement le plugin drag’n’drop !!! (100 $ pour le client, des heures en plus pour moi…) et une partie de WP Ecommerce…

    Me plonger dans le code m’a permis de me rendre compte de l’ampleur des dégâts…

    J’aurai aimé donner à la communauté mes évolutions mais sachant qu’après, le créateur du plugin va s’en servir pour gagner de l’argent non merci…

    Bref voilà pour mon avis, je met dorénavant en avant la qualité et le côté évolutif du code, j’aurai moins de surprises.

    Je concède qu’il existe des cas (boutique très simple, peu d’articles) où un WP Ecommerce peut être tentant. Dans ce cas là, il faut absolument tout tester avant, définir précisément les fonctionnalités à l’avance (pas de mauvaises surprises).

    De plus, ne pas faire (totalement) confiance au créateur du plugin, à leur site, leur démo ou la liste des fonctionnalités… Sinon, vous risquez quelques déceptions !!!

    Pour info, ma mauvaise expérience date d’il y a un an…

    • WP eCom­merce se fait tailler un cos­tard un peu par­tout ? Allons, tout dépend du besoin et des res­sources à ta dis­po­si­tion. Je per­siste et je signe, wp ecom­merce est par­fait pour un site de ecom­merce de taille moyenne… et je parle d’expérience.

  10. MAGENTO est la BMW des CMS tout en 1. Le plus utilisé aussi. Les templates y sont magnifiques, les plugin et forums innombrables. Par contre s’adresse aux codeurs si l’on veut le personnaliser un peu. N’est donc pas accessible à tous.

    • Oui bien sur, une BMW où il faut 6 mois pour ajouter une fonctionnalité de base ou 1 ans pour maitriser la sortie du CMS pour le gestionnaire du site. Non y’a pas à dire, tout le monde n’est pas pilote de formule 1 :)
      Je te mets au défi de former tes utilisateurs en une demi-journée sur le fonctionnement du back office de Magento.
      Wp e-commerce supporte des sites de ecommerce avec plusieurs centaines de références, suffisamment pour convenir à la plus part. Mais pas à tout le monde, je suis d’accord.
      Ah oui aussi, Magento c’est bien la BMW des CMS, quant on regarde les prix que demandent les agences pour réaliser des sites Magento. Et c’est sans parler du cout(p) faramineux de la licence entreprise… c’est pour ca qu’existent bon nombre d’autres marques de voiture… entre autre.
      Et puis pour nous WordPress c’est plutôt Range Rover, qui surmonte tous les cas de figure facilement sans la moindre rayure.
      Et si on parle chiffres… je pense que WordPress écrase tout le monde pour ce qui du site généraliste.
      Pour conclure, je pense que ta dernière phrase dénote d’une profonde méconnaissance de WordPress. Crois-tu que nous n’écrivons aucune ligne de code quand nous intégrons une eboutique ? Penses-tu que WordPress ne s’adresse pas aussi aux développeurs ? Je trouve ce sous-entendu un chouille dénigrant ;)

      Librement

      Sébastien

Laisser un commentaire

CommentLuv badge