When developers propose using a modern MVC framework (such as Laravel) over a CMS (such as WordPress), non-tech stakeholders are sometimes unsure whether it is the right choice. Prebuilt CMS might seem a money/time saver and a more obvious tool to accomplish their business tasks. However, when is it really better to use a CMS rather than a typical modern framework for custom software development?
Advantages of Wordpress
WordPress, as the most popular CMS, is often a good first choice for the project. Of course, it is not fit for everyone.
Generally speaking, WordPress is usually the no.1 choice if:
- The project falls under the category of content-based portals such as blogs/newspapers.
- The market has available WordPress plugins with the necessary quality/security and functionality to suit software requirements.
- The founder of the startup wants to test the market and to create the first version of the website fast/cheap with a stripped-down functionality. In this case, WordPress can be useful as a prototype and platform for a minimal viable product.
Some non-tech managers believe WordPress is better than any frameworks because WordPress as a pre-built CMS has a great admin panel (user-friendly interface), so each non-tech staff member can update the website without developers. The truth is that if it's necessary to have a WordPress-like admin panel, then it will be developed easily with a framework. It is also easy to find a Laravel developer - the market is quite wide.
As Jake Goldman, the owner of WordPress-centric digital agency 10up (California), puts in his blog: “Pushing WordPress to a client in the face of clearly better-suited alternative is, from my perspective, tantamount to professional malpractice.”
Security vulnerabilities of Wordpress
When making a decision on the use of WordPress, security vulnerabilities of the WordPress core and plugins should be considered. Just get a quick overview of the widely known cases:
- Over 1 million WordPress sites may be affected by a flaw in WP Super Cache plugin
- 50,000 sites hacked through WordPress plug-in vulnerability
- Websites running WordPress hacked to display money-making ads for hackers
- Hackers Grab 800,000 Banking Credentials
- My client's site was hacked and I do not have a backup of his WP site. He's been calling me for 3 days but could not answer. What can I tell him?
Security vulnerabilities of WordPress mean that it is important to constantly update the WordPress core and plugins (which implies hidden costs). Well-developed Laravel-based websites are more secure and do not need constant updates. Laravel uses custom code and has built-in functions for encryption and protecting against common vulnerabilities.
Moreover, Laravel 5.2 is fully compatible with PHP 7. This newest version of the language makes web applications faster and more secure. And it requires fewer servers to handle the same amount of requests per second, which reduces hosting expenses. At the same time, most of the themes and plugins of WordPress are not fully compatible with PHP 7. Moving WordPress website from PHP 5 to PHP 7 can also be a time-consuming endeavor.
Limits of Wordpress
There are limits of customization that come with any system built with WordPress CMS. If the WordPress-based project grows (more registered users, more operations per second, etc.), at some point there is no choice but to re-create it with a framework (such as Laravel) or to migrate the website to the Laravel framework.
We gathered some frequent cases:
Gizamo: «Asking a web developer to modify a CMS can significantly increase developmental costs. It may also create complications in core functionalities, such as updating, theming, etc. And, it can require a darn good programmer, depending on the platform (which will further increase the costs)».
Developer: «I have been developing with WordPress for a while now. I have been using WordPress outside of its element and been developing web application that aren't necessarily blogs. I loved all the functions they have, and the security it provides. But I'm starting to work with more complex applications, applications that are starting to not fit in the WordPress model. I need to find a framework that's similar to WordPress in the developmental aspect. I just need a powerful framework that is lightweight and well documented. So I need a framework that can handle user management, template engine, security updates, and has good documentation for development».
Ekaitzastiz: «I have done a lot of things with WordPress: custom themes, widgets, plugins... And for news web and blog web portfolio, it was enough. However, Laravel is a framework that can be used to do exactly what you want and how you want; you can do a custom backend, a REST API, a SPA app, an intranet, a CRM... Big effort is needed in WordPress to do big changes like that. WordPress is not as customizable as an app that you build from scratch with a custom design and focusing on your needs. It's not as flexible when changing anything. Moreover, very important, is the weakness of most plugins and widgets in WordPress: they aren't tested with PHPUnit, or aren't build applying TDD».
Masiorama: «After months developing and using WordPress-based solutions for my clients I noticed that the start of every single project was very fast (easy to install, lots of materials available for free or cheap) and satisfactory enough, but the hell arrived each time there were some more-than-little modifications (logic and design). Using a framework with a pattern like MVC (I use Yii) may be more difficult at the beginning, but to write, debug, and organize your code is far more fluid and satisfactory, on the long run. Even a module (CMS) can be easily extended or rewritten with lesser effort than packed CMS solutions like WordPress».
Steven Richardson: «I just built the whole thing in Laravel, including the blog. I got my app response time down to 35ms with a total page load time of 1.02s from the original 4.3s. I believe if you can build something that will perform faster, even on a mobile connection over a bloated CMS then build it. Your readers and users will thank you for it».
Milan Lesichkov: «I have moved several slow WordPress sites to Laravel. Speed improvement is about 700%. 10s (WordPress) - 1.5 s. (Laravel)».
Gravy: «I am moving my website from WordPress to Laravel as the website has moved away from being a blog and requires more enterprise and custom functionality. The website has outgrown WordPress».
Raffworks: «I decided to consider moving away from WordPress and into using a lightweight framework for building my sites and web apps. I went for CodeIgniter 2.1.3, but got a surprise insight into Laravel as I was doing so, and have decided to go for that instead».
Milan Lesichkov: «My experience starting with WP and moving it later to Laravel was a nightmare. I have moved many web sites away from WordPress to Laravel. The benefits are great security, speed improvements, full flexibility of what can be done, development speed, great model layer for working with databases, and many more. So my advice, stay away from WordPress. It was meant to be a simple blogging engine that is “hacked” to do much more. Everything in WordPress is a “hack” but most of all, the database. The “blog post” is a post, “image” is a post, “page” is a post and what-ever-you-think-of is a post. All additional data is added in metas, which have to be joined multiple times to get related data. Once your database grows even just a little bit, it gets slow as a turtle. Development speed. It takes me 5–10 times less time to do the same features with Laravel than WordPress. Every time you develop for WordPress you have to “hack” something to get it working. With Laravel it’s all modular and reusable. For instance, what if you want to have a blog on your website? Well it took me about 2 days to do a blogging module for Laravel—fully flexible, that can be added anywhere, reused many times after this».
THE BOTTOM LINE
Development with a framework is a bit expensive in the first investment and cheaper in the long run compared with WordPress development and customization. Maybe it does make sense to invest in proper custom architecture with Laravel or another suitable framework from the outset?
Articles you might be interested in:
- Microservices Architecture: Development with Lumen (Laravel) Microframework
- SaaS Website Design Inspiration: 20 Header and Footer Examples
- React vs Angular vs Vue
Rate this article
Do you have a software development project to implement? We have people to work on it.
We will be glad to answer all your questions as well as estimate any project of yours.
Use the form below to describe the project and we will get in touch with you within 1 business day.