Changing your Magento core-agency
Taking on a client whose agency has changed the Magento core
As a business utilising Magento Enterprise Edition, you are paying £10,000+ annually to get access to one of the best eCommerce platforms available. Similarly, when you choose your eCommerce agency you place a great deal of trust that they will take great care of your investment. This is not always the case and we are often asked to take over and maintain a site that has been built by another agency, when a business is experiencing significant difficulties due to changes to the core Magento framework.
Changes to the core Magento framework
There can be any number of reasons an agency may have gone down the route of changing the Magento core and whilst we don’t believe any agency would encourage it, there are those that will take a shortcut to save on development time. Without going into it too deeply, Magento is built in such a way that it is perfectly possible to build ‘on to’ it, but the core should never be changed. Very simply, changing the core means that any future upgrades or security patches simply won’t work and you leave yourself open to significant issues.
So what options do you have if you find yourself in this situation?
Recently we had, what we like to think is, the worst case scenario which gave us the opportunity to show you how you can get yourselves back on track and back to core Magento. We were approached by a customer (who we had once pitched to build their website) who had found themselves in exactly this predicament.
Short-term vs long-term
Unfortunately the site hadn’t been properly maintained and an incomplete upgrade, alongside some work that changed the Magento core, meant that whilst we could keep the site going in the short-term, we needed to rebuild the Magento code base from the ground up to give them long-term stability. This may sound extreme but a look back at the support history on the site painted a picture of regular downtime and unsuccessful upgrades and issues, which all pointed to problems with the database and core Magento framework.
So the plan was to keep the existing site going as best we could whilst rebuilding what they had on a new Magento installation. We would also ‘clean’ their database and then complete an upgrade of their Magento from 1.13 to 1.14. The biggest issue was how much of the functionality that had been built on their old site could we re-create. Much of what had been done relied on making changes to the core and as a rule we never make changes of this kind.
The technical specifics
Writing the technical specification for the site was simpler than most as it was more an exercise in documenting the existing functionality. Coupled with auditing the code to see what could be salvaged, we were able to put together a decent plan that included moving the website to a much-improved server.
Though it was clear why the previous agencies had gone down the roads they had, our experience enabled us to look at the functionality from a different perspective. Despite it sometimes being very tricky, everything that was required was achieved without ever needing to repeat the mistakes of the past.
In order to minimise downtime during the switchover, our approach was to incorporate our own upgrade scripts with the Magento 1.14 ones provided that ported the database over to the new server with the rebuilt Magento code base. The benefit of this approach was that over the months that the site was being rebuilt and the new functionality added, we could see exactly what the end result of the move would be. We regularly ran the script against the most recent live database that created the new site for us to test. Utilising the live database and scripts meant that the ‘go-live’ process was incredibly smooth and the client was under very little pressure to dedicate days to testing.
Rather than simply get the client back to square one we also completed a complete re-design which moved them from a desktop and broken mobile theme to a fully responsive site. The end result meant that they have both code stability and the opportunity to sell products through a much broader range of devices, on tablet and mobile.
This provides a great worst-case scenario, proving that even the most difficult circumstances can be rectified given the right approach.
If you’re worried that your core Magento framework has been compromised and would like to discuss how to get back on track, then get in touch.