OK Sushi

What I have learned about Magento

Posted on Tuesday October 28, 2008 in Work

Magento eCommerce Promises to be an excellent open source solution to a common problem – how best to sell goods on the Internet. On paper, it kicks some serious ass (or arse, depending on your location), The sales reporting is fantastic. Adding new products is relatively easy. It comes stock with support for a whole bunch of different payment gateways. Great!

As I wrap up a large Magento project, there have been some large mistakes that cost us weeks of development. I want to document them here for posterity, and hopefully Google will pick them up for anyone trying to decide if Magento is right for them and their project.

Note

Let it be known that I am a tinkerer, and probably got myself into a lot of trouble for not RTFMing in the first place. I tried to squeeze Magento into a design box that it was not supposed to fit into. It works not, though, so meh.

Javascript

Magento REQUIRES Javascript in order to function. There is no graceful degradation here – if it’s not on, it does NOT work. No arguments, no coaxing, no nothing. So what did I do? I deleted all the javascript calls and tried to get it to work.

Cost: 1 week

Inline Language

Want to change the text of something in the cart? You need to change it in the source files. Language is not abstracted for a quick presto change, as it is in Zencart or other carts. This sucks!

Cost: a frequent annoyance

Templating System

How do you spell XML? I’m still not sure. I thought Smarty was annoying, but it is nothing on the xml hybrid system that Magento employs. You don’t want a three column layout? Are you sure? Really? Well, too bad. It’s there – live with it.

Cost: A lot. If you want to redesign a Magento site, just change the colours. Don’t attempt anything fancy, please.

Crazy shipping configurations

If you are shipping products, and you are not in the States, prepare for a laugh. It’s fun, especially setting up shipping tables. In Australia, we use 4 digit Post Codes. so, I needed to upload a CSV with 9999 lines, each with the cost of shipping to that post code. There must be an easier way!

Cost: Probably not too long, but it was annoying as hell.

Support

Huh? What’s support? There aint none. Traverse the forums for a whole bunch of unanswered threads.

Cost: Depends. Hard to tell.

So, I may add more as time permits. If you are going stock, then I would probably recommend Magento. Clients love the backend interface. If you are a developer though, heed this advice:

Only modify those files that you have to – keep your custom template directory as empty as possible

That is all.

  1. oh yeah, a great post.
    But I’m waiting for the best:
    How to develop websites in Mac! With screenshots
    best tools, software, ideas, tricks, links…etc

    YOU ARE THE MAN!

    Posted by rockyrock on Nov 3, 11:59 PM
  2. I am right there with you on this one. Two sites I’ve done recently in Magento and ZenCart:

    Magento Storefront converted from HTML PayPal shopping cart

    ZenCart Storefront that required digital download functionality

    Which looks better? Surprisingly, the ZenCart site blows the Magento site away. Most people think ZenCart is ugly as butt, but it is as customizable as Magento and easier to handle for traditional PHP coders like myself.

    Posted by Chris Wallace on Nov 7, 06:37 AM
  3. Thanks for the heads up, I just installed this and was going to test it out. Jaymis put me on to this article.

    Posted by Josh on Nov 26, 08:13 AM
  4. Hi Cal,
    Is there a chance that you share your javascriptless magento theme?

    Posted by Pierre on Nov 26, 04:16 PM
  5. I searched on google for ‘magento sucks’ to see how many people think like me, and I found you!

    I am currently working on a Magento based project right now, and I have to say I’m in a bit of a hell right now.

    Magento is cool if you want to pick it as is and use it. BUT, once you want to customize it a little beyond what it offers by default, you are in trouble!!

    I think the Magento company made it hell difficult architecture-wise on purpose – so that they can get the most number of modification contracts – they being the makers of such a complex system, they know it better than all others – a good way to do business via open source (they offer modifications as a paid service).

    If Magento cares about the system being easy to modify, they need to come up with a useful enough documentation with proper description of each class and it’s members (something like MSDN)

    Posted by Kamran on Jan 6, 12:04 AM
  6. Fantastic article. Thanks for the heads up! I’ve been thinking of trying Magento for awhile.

    From a design perspective though, Magento looks much nicer and easier for clients to use than Zencart…

    Posted by rightmost on Jan 9, 03:38 AM
  7. I searched for ‘magento sucks’ too. Just had a site go down, with all the grace of a windows installation. No help, no documentation. I also agree that they aren’t rushing the documentation in order to bring in more money. It’s a business, needs money, sure. Maybe they should advertise more like a business than a free cart software. I feel suckered in.

    Posted by Rackley on Jan 15, 10:42 PM
  8. For sure Magento has some complexity baggage. But its small price to pay.

    Between June 1, 2008 and Nov 1, 2008 (6 months), I’ve launched 14 sites on Magento for 4 brands, in 6 languages, 7 of the sites are full eCommerce sites for US and EU markets and integrate directly to 2 different fulfillment systems. Each of the brands looks significantly different from each other—so major templating done in each case and each brand has a different product line.

    We’ve been able to turn over the administration of several of the websites to our international offices and others we merchandise and maintain ourselves. I have a team of 2—one guy’s a Flash guy and the other does some templating/production and some admin work. I’ve done the rest of the templating.

    I know from past experience that we never could have done that on any other platform. Reskinning Magento isn’t for everyone to be sure, but man is it worth it. (IMHO)

    Posted by kara on Feb 6, 11:51 PM
  9. You must have had a bad hair day. Even in the default themes you can just choose a different layout (down to page granularity) from a drop-down menu in the configuration interface. 1- and 2- column designs are available, in addition to the 3-column. If there is something functional in the column(s) that you are nuking, you need to move it into the remaining column(s) if you still want it. To do that you copy the relevant file from the default theme tree to your working tree and edit it. If you can’t find it, there is a developer switch in the configuration that will turn on file paths for all elements of the interface.

    Hint: Read the documentation that exists and watch the screencasts. There’s a silver lining to the fact that there isn’t much documentation, and that’s that you can go through it all in two or three hours.

    Hint 2: Buy a commercial theme. They’re cheap, but they give you access to a certain amount of support from the seller (even if you don’t use the theme in the end).

    Posted by Mark on Mar 2, 02:00 PM
  10. Hi Mark – yes, I should have read all the documentation. So should the person that designed the interface that I was trying to build. The point I was making is that trying to squeeze Magento into a design it wasn’t designed for was a major PIA.

    Buying a commercial theme was not an option.

    Even if it was, there is no escaping the fact that Theming Magento is a Bitch.

    However, I have learned my lesson. If I were to ever use Magento again, I would go about it differently.

    Posted by Cal Wilson on Mar 2, 10:38 PM
  11. I am still in the middle of my Magento Project, it is a small shipping cart, with only about 25 -35 products. I agree! The shipping tables are incredible difficult and to change any text is also a joke! I agree, that the Reports are EXTREMELY POWERFUL! and that is the reason I decided to stick it out….

    Thanks for your insight!!! I know a lot of people who started with Magento who ran the other direction after a few hours… So it is nice to find some feedback about it out there on the web! Thanks!

    Posted by Swiffer on Mar 26, 10:24 PM
  12. This is great information to have! So have you done any sites with Magento since? Just wondering if you’ve had any successes with any of the later releases.

    Thanks!

    Posted by Robert Spangler on Apr 2, 03:24 AM
  13. Hi Cal!

    I just want to comment three things:

    @Inline Language: Don’t change the language files (CSV). Always activate the Inline Translation (system/configuration) and you can easily change the wording in a WYSIWYG style in the frontend.

    @Templating System: Customizing the XML can be frustrating, yes. However there are many tips on the web how to add your own templates and CMS blocks wherever you want them. And a really great feature are the layout updates you can place almost everywhere to add/change/remove blocks. This is really an innovative approach.

    @Support: We’re talking about an Open Source project, right?! So the first place is the community (forum). Second you can buy support from the vendor or someone of the Magento Partners. Of course you’re also free to digg into the code – as it used to be on Open Source projects ;-)

    Posted by Phoenix on Jun 18, 08:11 AM
  14. Thanks for a great post. I was seriously considering Magento but the issues you pointed out are major turn-offs. What to you recommend instead? Zencart?

    Posted by Dave on Aug 7, 04:06 AM
  15. at Crazy shipping configurations:

    Try the Netherlands. Postal Codes are here 1234 AB (that’s 10*10*10*10*26*26=6.760.000 lines of CSV :P)

    Posted by TeMc on Nov 26, 01:17 AM
  16. Upgraded from from virtuamart to Magento;

    Lessons learned:
    1. Had to triple to the hardware to have load time less than 10sec per page. Joomla virtuamart run fast on on a single core zeon with 4Gb of ram, Now I run on dual quad cores with 16Gb of ram and max out cpu / disk io at each newsletter send.

    2. Virtuamart was not perfect – but once it was fixed it run with no admin / coding for months at a end. Magento keeps on crashing out of the blue, with random error messages which are hard to reproduce.

    3. No easy upgrades – expect to spend many late nights fixing failed upgrade scripts and restoring database dumps.

    4. Magento has a lots of cool features, but they come at a price, we lost nearly 30% in sales after [upgrading] to Magento.

    Posted by NoMagento on Jun 24, 06:41 AM

Comment on this article

Textile help

My flickr photos