Dessine-moi un Prestashop Lite

Demain c’est un grand jour les vacances sont finies 🙂 et on recommence le travail ouaiiii ! C’est quand même fun de pouvoir s’extasier de recommencer à travailler non ? Mais ce n’est pas tout, parlons un peu de mon projet de développement de site e-commerce.

Cet article fait suite à Développer une solution e-commerce, le commencement…

Est-ce que j’ai commencé à coder une plateforme e-commerce ?
La réponse est « Oui », mais je ne vais pas utiliser le noyau de Prestashop, par contre je m’inspire de toutes les bonnes choses que j’ai appréciées dans leur solution. Je pourrais utiliser le noyau de Prestashop, mais dans ce cas je ne vois pas vraiment d’intérêts de créer une version allégée du produit, il est bien plus intéressant d’utiliser la version courante que d’établir un fork.

Techniquement
Ce que je peux vous dire ce sont les points suivants :
– toute l’application est découpée en  modules
– chaque module fonctionne selon la méthode MVC avec un répertoire pour les vues au sein de chaque module
– url optimisée avec « /controller/action/parametre1/parametre2/etc…. »
– une gestion des « thèmes » est comprise
– un override des modules est possible en le copiant dans le « thème » courant
– la mise en cache des requêtes « critiques » est possible avec une méthode simple
– implémentation de la gestion des « Hook », comme le fait actuellement Prestashop
– gestion des traductions des modules « in file » avec injection automatique dans la base de données (évite les problèmes de droits lors de la mise à jour des traductions)
– grid CSS avec Blueprint
– CSS / thème proposer une interface simple et professionnelle, facilement adaptable

Le projet
Voilà à quoi ça ressemble à présent au  niveau de l’arborescence générale du projet.

Voilà aussi par exemple le code pour la création d’un compte utilisateur, mon but est de rester le plus compact possible pour que ça ne devienne pas trop compliqué à lire par la suite. Les développeurs de Prestashop reconnaîtront par exemple le « Tool::getValue » (non pas Tools…héhé) et oui ça doit vous dire quelque chose :).

L’interface
Certes, il s’agit des premiers débuts de l’interface, mais je veux quelque chose de simple, même si cela semble presque « austère », bien sûr que l’interface est largement clonée de Prestashop.

L’interface pour la connexion au compte client.

Le  formulaire d’inscription minimaliste, mais comme j’aime.

Avec un code de formulaire qui me semble assez léger avec des retours d’erreurs gérés de manière transparente… ahhhhhh.


Problématiques

Il y en a beaucoup, mais je vais commencer par me concentrer sur les points essentiels, en ce moment je vais regarder une méthode de routing qui puisse être traduisible depuis le back-office. Vous ne savez pas ce que c’est le routing ? En fait par exemple vous accédez par exemple à votre page de login via l’url « /login/index/ » l’idée c’est que vous puissiez par exemple aussi y accéder via « /connexion/utilisateur/ » si vous êtes en interface français par exemple, mais il faut que cela puisse être modifiable via back-office pour l’ensemble de vos langues.

Bilan
Je n’ai pas la prétention de faire mieux que Prestashop, mais j’ai envie de créer une solution e-commerce, par passion et pour tenter de proposer une nouvelle alternative sur le marché du e-commerce open-source. Certes, il y a encore un big, travail, mais je me sens moins « coupable » de me reposer uniquement sur les outils que propose le marché du web. Il n’est pas toujours évident de choisir les méthodes adéquates, car parfois « trop segmenter » l’application c’est la rendre moins pratique, mon but c’est que ça soit justement « simple et propice à l’évolution », pour ça il faut vraiment avoir le juste milieu…. est-ce que je vais l’avoir ? …  c’est une affaire à suivre :).

Notez mon billet, Google va adorer :
1 étoiles - J'aime pas !2 étoiles - Bof !3 étoiles - Bien !4 étoiles - Très bien !5 étoiles - Génial ! (Soyez le premier à noter ce billet)
Loading...

4 commentaires sur “Dessine-moi un Prestashop Lite”

  1. Salut,

    L’idée me turlupine aussi depuis quelques temps. Mais je n’ai jamais eu le temps/courage de m’y lancer.

    Si tu n’as pas encore commencé je te conseille de te baser sur un framework existant, ça a énormément d’avantages. Pour jelix par exemple beaucoup de choses sont déjà faites (template, cache, accès BDD, ACL, override, mise à jour, gestion des erreurs, url…), le système de module existe déjà, celui des hooks et la gestion des webservices aussi. Le MVC est déjà là et une logique de développement est déjà là.
    Si je devais le faire je partirai de Jelix.

    Prestashop est parti de rien et ça lui a causé du tord, pas mal de classes/modules ont dû (ou devrait) être retravaillées parce mal conçue au départ, la gestion des hooks est gourmande, l’override est arrivé très tard, le code de l’admin est affreux…

    Un autre avantage à utiliser un framework, est que la documentation est déjà existante et les développeurs connaissent la solution. C’est un autre défaut de Prestashop, faut tout apprendre vu qu’il ne se base sur rien.

    Magento est basé sur Zend et ça lui a apporté de suite une grosse communauté de développeur. Après Zend c’est lourd dingue et pour une boutique ça me parait démesuré. Faut bien choisir dès le départ plus tard c’est foutu.

    En tout cas partir de rien c’est perdre des mois a réinventer la roue.

    Bon courage

    1. Salut,

      Merci pour ton avis, toujours très constructif.

      Absolument, en fait j’ai survolé autrefois Jelix, mais j’ai surtout travaillé avec CakePHP qui me correspondait mieux au niveau de sa logique.
      En ce qui concerne Prestashop, tu as tout à fait raison, pour ce premier exemple de projet j’ai repris la logique de CakePHP, mais il faut reconnaître qu’il y a un tas d’exception à gérer, certainement d’ailleurs que je vais passer mon projet sur CakePHP. Baser son développement sur un Framework rôdé, c’est déjà un gage de succès.

      En ce qui concerne Zend, j’ai pas vraiment accroché à leur logique, trop permissive selon moi, mais Magento rencontre un franc succès il faut le reconnaître. Faire un bon choix dès le départ, ça c’est le point difficile, chaque choix aura sont lots d’avantages, mais aussi d’inconvénients, il faut vraiment bien tout peser.

      Est-ce utopique de développer une plateforme e-commerce ? Peut-être, mais ça semble passionnant. Si a présent on raisonne qu’en terme « d’argent », je passerai mon temps à vendre des shop, je ne développerai pas de modules 😀 … mais dans le e-commerce, ce qui compte aussi c’est la passion 🙂

  2. C’est du grand déterrage que de poster un commentaire sur cet article.. Mais peut-être apporteras-tu réponse à mes questions. Si je ne me trompe pas, tu as abandonné cette idée de Presta Lite, pour vendre des modules prestashop, des sites web e-commerce etc.
    Cet abandon est lié à quoi ? Une prise de conscience dans ton évolution au niveau de la programmation ? Ou plutôt d’une dur réalité qu’il est impossible de consacrer assez de temps à ce type de projets tout en continuant à vendre pour vivre ?

    1. Hello,

      En fait j’ai toujours proposé du Prestashop, mais l’envie d’avoir sa propre solution c’est toujours une grande fierté… mais il faut surtout s’aligner avec l’envie des clients. Les clients veulent du « Prestashop », du « Magento » ou du « Woocommerce », il faut donc leur vendre un nom connu.

      Vendre sa propre solution e-commerce c’est très difficile et si c’est pour faire une imitation de Prestashop en moins bien, autant éviter (il faut penser autrement)… Il est plus sage de se servir de la force de Prestashop et offrir quelque chose de complémentaire là où il y a une forte demande.

      Regardez aussi mon idée de Shoppax que j’avais voulu lancer à l’époque : https://www.webbax.ch/2011/12/16/shoppax-une-solution-ecommerce-qui-sera-rapide-a-deployer/

      D’ailleurs je pense qu’il y’a un avenir pour des solutions e-commerce plus simple, voir ma vidéo « Prestashop & Magento des solutions trop complexes ? » : https://www.youtube.com/watch?v=gRrFiwdVflY

      Après on peut pas tout faire… donc je préfère utiliser la force des autres et me servir de leur élan pour mieux me vendre ce qui est le cas avec Prestashop.

      A bientôt !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *