Friday, 3 August 2012

PART- 4: Magento development guide line. Pre-Launch Checklist

Module Licenses- Some modules from Magento connect require you to enter a license key when setting up. Make sure that this key is still going to be valid when you move domains and obtain a new key if required.
PHP Configuration- Make sure that you have reasonable values for memory_limit and max_execution_time. This way, the heavier operations that Magento carries out can complete successfully. If either are too restrictive a product export/import will fail.
Turn on the Crons- Some things in Magento development require scripts to be run periodically in order to keep things up to date, e.g. Google Sitemap.xml. In order to configure these you will need to look in System ? Configuration ? Advanced ? System and modify the Cron.php file in the root of your Magento installation. The Magento Wiki has a page on this.
Log Cleaning- Magento website keeps logs in the database, which, over time, can become bloated. There is an option in admin to clean the logs periodically, it can be found in: System ? Configuration ? Advanced ? System ? Log cleaning. This will need enabling as it is disabled by default, I recommend daily cleaning. Some articles suggest that use should optimize the log tables regularly as well in order to keep their size down.
Disable Unnecessary Modules- It’s not likely that your store uses every feature built in to Magento, so why have it enabled? You can disable modules in System ? Configuration ? Advanced. For example, ones that you might not be using include Mage_Wishlist, Mage_Newsletter, Mage_Poll, Mage_Rating and Mage_Tag.
Database Backup and Restoration Strategy- I’m not going to suggest any particular strategy, but take database backups regularly, and know how to restore when the time comes. There’s even an Automatic Database Backup module to do it for you.
The Web should be fast, Test your site out for speed. There are many different tools that you can use for this. I’d recommend either the YSlow extension for Firebug in Firefox, or GTMetrix. These will then show your weak points and offer suggestions on how to make improvements.
Speed should still be a priority even in the broadband age. Remember that even with increasing internet speeds, there are still many on very limited connections. What’s more, you are always being compared to other sites, so if you are too slow, your customers may move to a competitor.
Get organized
Once you have gone live, don’t expect that to be the end of magento development. There are likely to be many bug fixes, editions and further development work. When developing sites with Meanbee, we use a git repository and keep this up to date with all changes.
This way we can always have two identical versions of the site; one that is public facing and the staging area. Once we are happy with changes we can push them live. With ssh access this could not be simpler with a git pull but becomes slightly more difficult if only FTP access is available.
Unfortunately, this is often the case with managed hosting. A service that I was recently introduced to by Nick and we now use at Mean bee is Deploy. Although still in Beta, it allows you to release the changes to the live site effortlessly even when using FTP. Marvelous.
Have you learnt from this experience and want to add a product to this list?
Share it; your Magento buddies will be most grateful.