Magento has seen a consistent rise in popularity and since being supported by eBay it’s found a whole new audience, this has further been supported by its hosted Magento GO offering.
We’ve done a few Magento developments here at Branded3 and during these builds we’ve identified a few things to ensure you always do (or don’t) with a Magento eCommerce solution.
1. Ensure you have the latest version
It may seem obvious, but when you first start developing the platform you may find there is a new release, patch or minor update as with many open source platforms these tend to be essential security fixes rather than functional releases therefore its always best to keep up to date. Even if it means a full upgrade and test routine prior to go-live.
2. Make sure you have the default CRON schedules
Magento has some great features for catalogue based pricing, promotions and alert systems such as ‘Back in stock’ however in order to get these features working you need to have the default Magento cron schedule running, always worth checking first that the schedule ran if you aren’t receiving the alerts as expected!
3. Check compatibility of plugins
There are so many great extensions and plugins available for Magento, even more so with the Magento Connect system making it easier to install these. However one thing to always check is that the plugin you are installing has been tested not only with the version of Magento you are using but also bear in mind there may be conflicts with other plugins used in the same area. For example if you are using payment gateway plugins along with checkout optimising plugins then these are key to check for compatibility.
4. Test the checkout pages and place as many orders as you can!
Another almost too-obvious point but place as many test orders as you can in different browsers and with different catalogue products and quantities. We recently discovered a very odd bug between two of Magentos most popular and supported plugins that meant people using old versions of IE or in compatibility mode couldn’t check out! One to look out for.
5. Disable unused features
Magento is such a great platform and offers so many features that sometimes these can affect the speed and performance of the site. Therefore if you aren’t using or don’t plan to use a particular feature then it’s best to disable the output of these modules to reduce overheads. Two in particular which we have seen drastically improve the speed of checkout is to disable the RSS and Virtual product modules.
6. Enabled caching
Any one that’s used Magento knows that with all its features it comes at a price and that is it’s resource heavy. To counter act some of this activity it’s best to look for options to speed up the site and offer scalable solutions, One of these which Magento works nicely with is caching. Magento supports both APC Cache and Memcache which can speed your site up by up to 95%.
7. Ensure Google page speed recommendations are in place
Another speed based tip is to use the Google Page Speed plugin which is available for most browsers. It recommends a number of best practise items that can help with page load speeds as well as reducing resource requirements on the server. HTML compression modules such as GZIP and Deflate are ideal for reducing the page size.
8. Default email styling
Magento has around 20 default system templates and it’s sometimes easy to forget these with the focus on the front end and user journey. All these templates have a number of modules and included sections that need personalising to your particular store, a key thing is usually the logo and store name. I’m sure your customers don’t want to receive emails from Default Store!
9. Disable default logging (Only if you are confident that the site is good to go!)
Magento features a great developer support tool for logging, should errors occur on the site or you are looking for general activity then the logs are a huge help. They do however add an overhead to the page loads so once you are happy with the platform and entering a production environment its recommended to turn this feature off.
10. Ok this is more of a don’t but do not edit the core code!
One of the fundamentals of using open source products and a platform like Magento is to not edit the core code! Too often the ease of tweaking some core code to enable the functionality to work how you want it calls us, but more often than not this will catch you out in the future when you come to upgrade or revisit the development and forget the change is there. Where possible you should always develop your own module or extension to the functionality to ensure things work as you require and enable you to upgrade in the future. Remember you can override models with ease in your local folder and write a module to add new controller routes!