13 jours avec Magento

Je travaille depuis très exactement 13 jours sur un projet Magento histoire de changer un peu d'eZ Publish. Bon, en réalité j'ai fait 2 jours de formation et 11 de développement plus une petite expérience d'optimisations côté système. C'est certes trop court pour en saisir toutes les subtilités techniques mais c'est largement suffisant pour y voir de très bonnes choses et de beaucoup moins bonnes.

Parmi les excellents points :

  • la flexibilité et l'extensibilité : grâce à l'alliance du modèle EAV et à la possibilité de surcharger proprement presque tout le core.
  • le système d'installation et mise à jour des modules qui résout pas mal de problèmes liés au développement collaboratif sur plusieurs plateformes différentes avec de multiples informations stockées en base de données
  • l'ergonomie générale du backoffice mais ...

Dans les moins bons points :

  • le backoffice est lent, vraiment très lent; il n'y a pas (encore) d'éditeur WYSIWYG vraiment intégré, l'accessibilité est loin d'être parfaite (j'aime naviguer dans les formulaires au clavier...), et si une requête AJAX n'aboutit pas pour cause d'expiration de la session, rien ne se passe, pas de message d'erreur, juste rien...
  • Magento utilise directement PHP comme langage de template, je ne suis pas fan (je ne vais pas relancer le débat), en revanche quand je vois des templates comme price.phtml, j'ai mal à la tête rien qu'en pensant devoir le modifier un jour...
  • la version Entreprise de Magento embarque à la fois Prototype/Scriptacoulous et jQuery, je semble être le seul que ça choque pourtant quand on connaît l'impact de quelques centaines de millisecondes de latence supplémentaire, l'optimisation du temps chargement devrait être encore plus prioritaire sur un outil de boutique en ligne.

» Commentaires

- javascript (#67964) par Nath le 29 Septembre 2009 à 10:30
Je trouve également que le javascript est assez mal géré dans magento.
On en trouve un peu partout, y compris dans les templates, alors qu'il serait plus propre (et plus accessible) d'avoir tout en html pur et l'ajout de fonctionnalités dans des fichiers .js à part.
- C'est pas fini (#67965) par Fiber_Optic le 29 Septembre 2009 à 12:33
Je suis Magento depuis le début, et ils ont fait d'énormes progrés depuis la v1.0. Le BO de la v1.3 est beaucoup plus rapide que la v1.2 déjà.

Il y a encore plein d'autres points que tu vas adorer et détester. Tu verras quand il va falloir faire un module et où tu devras gérer des fonctions différentes pour utiliser le modèle EAV et le Flat Catalog.
- Magento (#67966) par nautilebleu le 29 Septembre 2009 à 13:45
J'ai dû mettre en place une boutique et j'ai testé Magento ! Je cours encore ! C'est vraiment une horreur, c'est très très très lent, du XML pour faire des templates HTML (faut être malade, c'est encore pire que du faire d'utiliser PHP direct). Bref, j'ai laissé tomber rapidement. J'utilise du coup Prestashop, sans loin d'être parfait mais pour une petite boutique, c'est largement suffisant.
- Je plussois (#67967) par Metal3d le 29 Septembre 2009 à 14:41
Collègue de Pwet, sur le même projet... et je confirme ! Lenteurs, extensibilité, etc...

Seul point, j'ai relancé le débat http://truffo.fr/2009/06/utilite-...s-en-php/comment-page-1/#comment-135 parce que pour ma part je préfère largement les templates PHP que Smarty (cf. les projets où je gueule contre ezPublish)

Sinon, j'ai paramétré Magento avec cache + tmpfs sur var/cache + APC et ça répond plutôt bien (sauf l'admin...)

Par contre, j'apprécie pour ma part la déclaration XML des block de contenu... question de gout ? ou alors je suis maso ?
- Zend_View & Zend_Layout (#67968) par truffo le 29 Septembre 2009 à 20:52
Je le truc que je comprend pas, c'est pourquoi il font leur template avec le XML quand on voit la puissance des composants Zend_View et Zend_Layout.

Je crois que pour eZ Publish utiliser le mot "moteur de template" serait lui faire trop d'honneur.
- Layout XML (#67969) par Damien le 30 Septembre 2009 à 09:23
@truffo : je ne sais pas si Zend_View/Zend_Layout existait et était aussi performant au moment de l'écriture de cette partie de Magento (2007, début 2008 je pense) et puis le système de fichier XML fait beaucoup plus que Zend_Layout permet plus de souplesse sans toucher une ligne de PHP.
- Prototype VS Jquery (#67970) par nono le 30 Septembre 2009 à 16:36
J'ai une petite question concernant le fait que prototype/scriptaculous et JQuery soient embarqués. Veux-tu dire par là que les deux sont d'office activés par magento ? ou peut-on activer l'un ou l'autre ?

Si effectivement les deux bibliothèques sont automatiquement chargée c'est effectivement un mauvais point tant en terme de performance que de compatibilité (surtout avec des add-on javascript supplémentaires).

Par contre que l'on puisse choisir l'un ou l'autre directement dans magento c'est plutot positif.
- Prototype JQuery Magento (#67972) par Damiien le 01 Octobre 2009 à 13:07
@nono : pour être exact, le jQuery et Prototype sont chargés et utilisés simultanément sur certaines pages (la page produit par exemple). Pour éviter les conflits, jQuery est en mode "noConflict" [1]. Cela ne concerne que la version "Entreprise" de Magento. Magento utilise majoritairement Prototype.

[1] http://docs.jquery.com/Using_jQuery_with_Other_Libraries
- Prototype vs. JQuery (#67997) par Benjamin Bellamy le 05 Octobre 2009 à 22:29
Plus d'info sur la cohabitation de Protype et JQuery ici :
http://blog.baobaz.com/blog/prototype-et-jquery-dans-magento
Benjamin.
- supplémentaires (#68011) par fallen earth chips le 26 Octobre 2009 à 09:28
Si effectivement les deux bibliothèques sont automatiquement chargée c'est effectivement un mauvais point tant en terme de performance que de compatibilité (surtout avec des add-on javascript supplémentaires).

» Trackback

Aucun trackback

Les trackacks sont désactivés

Flux RSS des billets

Flux RSS des billets

Rechercher sur pwet.fr

À retenir

Derniers commentaires

Archives

Nuage de tags

Bioutifoul photos

Quelques liens

Licence d'utilisation

Contenu sous Licence Creative Commons By-Sa

Sauf mentions spécifiques, les billets et les photos publiés sur ce site sont placés sous la licence Creative Commons by-sa.

Pour toute utilisation dépassant le cadre de cette licence, merci de me contacter par e-mail.

Login