It’s first important to recognise why we’ve been comparing these platforms. We’ve been using our own CMS platform for over 20 years and it’s been used successfully on hundreds of projects. It’s grown and evolved over time to make it do what we need it to do so it’s safe to say we’ve grown very attached to it.
- It’s super secure because the code’s not open source
- It’s very easy to use, especially for people who update the website part time
- We can easily customise it to what a client needs it to do
- We can apply whatever styling we want so each website is unique, on brand and serves specific user needs
- It’s easy to integrate with other systems
However… we’re under no illusion that our CMS fits every person, project and budget. There comes a time in life where you need to do a bit of self-reflection. During this pandemic, it’s given us time to reassess where we want to position ourselves and the types of projects we want to be involved in.
Whilst there is a strong need for us to continue building projects on our own CMS, we recognise that there’s also a need for a larger, more comprehensive platform that gives even greater flexibility for those that need it. The bigger fish need feeding, and we want to feed them.
Many of our projects and solutions are custom built and have very specific requirements that we build functions for. A lot of what we do depends on solid integrations to other platforms and we put a lot of time and consideration into the user journey to make sure it’s meeting user needs quickly and efficiently.
There are so many CMS platforms out there that it can be quite difficult to know which is the right one for the job. WordPress, Umbraco and Drupal are the ones we identified as being key competitors to what we offer at Arkom. We set out on a 4 weeklong journey to set websites up on all 3 platforms to see which would come out on top.
We were looking for a market leading CMS to add to our solution base with:
- Intuitive and powerful user functionality
- Comprehensive CMS user level management
- Easy to customise and integrate to other systems
- Reliable and robust
- High degree of maintainability with a well-defined maintenance model and strong development roadmap
WordPress
With almost two thirds of the market share for CMS systems, WordPress was an obvious choice on the shortlist. It’s known for being very flexible with lots of themes to choose from, so we tried setting up a basic website which included our core functionality.
Getting started & content editing on WordPress
Building a simple static site with a few posts was quick and easy, as the built-in Gutenberg editor is fantastic for creating content. It’s a really comprehensive page editor which gives you lots of flexibility when it comes to page layouts and image cropping etc.
Perhaps there’s too much flexibility when it comes to page layouts if you’re not particularly techy. Fair enough if you have website content management as a full-time job, background in UX or have previous experience editing page layouts online, but there’s a lot of margin for error. You’re at quite high risk of making a website look untidy and not very user-friendly.
Website Designing on WordPress
The default theme is sleek and, more importantly, responsive for the majority of internet users who are on mobile, providing a great example to build upon. You don’t have to use the default WordPress theme though; there are plenty to choose from so you can very quickly get your website looking half decent.
However, themes are an integral part of how a WordPress site works, which means that if you wanted to do something a little different or unique to you, it’s much harder to add in.
Technical flexibility of WordPress
There are plenty of plug-ins to choose from to add certain functionality on to your site. However, the danger is that these plug-ins can often go out of date or throw off other elements of your website.
You can add in your own custom plug-ins, but you have to understand the often-complex hook system, and wrestle with the confusing database abstractions; which sometimes does things that are not obvious nor compatible with your higher-level design choices. Doing things the WordPress way takes a long time to understand and implement!
Developing the WordPress platform to support multiple content types (think news articles with custom fields like a banner image or utm keywords) felt clunky and tacked-on. This makes sense considering its legacy as a basic blogging platform from 2003. Its legacy as a php-based system shows its wrinkles too – adding a single bad line of php in your plugin file can kill the whole site – not good for stability!
Final thoughts on WordPress
We found WordPress extremely flexible and easy to get started with, although its status as a CMS is only really as result of its wide market-adoption, and many more capable CMS systems exist in this space.
It didn’t really suit our needs of being a robust platform that would support custom integrations and UX decision making.
Drupal
Drupal is another big player in the CMS market. It’s known for being a robust and reliable contender for people who want more complex content systems, with a great UI for no-code database queries. It has a strong user base, and a dedicated following that keep popular (and usually necessary) plugins maintained.
Getting started & content editing on Drupal
The CMS itself is pretty fully featured. There’s a full media control system, although unfortunately not with image cropping out of the box. This must be included with a third-party plugin, like several other features too such as restricted content and URL generation. This heavy reliance on plugins could be a benefit or a disadvantage, depending on how you look at it. Some may celebrate the thousands of hours of developer time spent on free things or bemoan the countless hacked-together systems that result from clicking install plugin a few too many times.
However, the CMS content types are much more reliable than WordPress and creating a basic site with custom content fields is a breeze. No refresh pagination and filtering, with an almost limitless amount of filter options makes this system very flexible for non-programmers who still care about expertly crafting their users’ experiences.
Website Designing on Drupal
Drupal works similar to WordPress in that there are different themes you can use. You can add your own styling to each specific page using theme overrides. The Twig templating system might be a welcome change to the basic and verbose PHP echo-based templating of the early noughties. However, this can use complex logic, most notably in the default nav, to achieve a dynamic UI. Forcing your developers to learn another templating language, alongside the theming system, might be a turn-off if you don’t have enough time to throw at the issue!
Technical Flexibility of Drupal
Drupal is built on the same technologies as WordPress, utilising PHP’s major benefit of being an interpreted language. This allows any number of plugins to register their own functions to be called at any point in the boot process. As a result, Drupal’s extremely flexible, and it only takes a few lines of code to implement a simple SEO plugin. Although it still is rooted in this old philosophy of software engineering, having been open sourced in 2001. More modern frameworks that offer class-based abstractions and pre-generated code for form validation and common functionality make the developer’s life a lot easier.
Final thoughts on Drupal
After comparing Drupal to WordPress and Umbraco it did seem a bit clunky. Whilst there’s a lot of technical functionality out there and it’s a very robust system, its reliability on plugins raised a lot of questions for us with regards to scalability and security. We’d ultimately have to create our own plugins, or extensively review the more complex ones. This is to ensure we’re not inadvertently adding new vulnerabilities to a very public-facing and brand-critical system.
Umbraco
Built on entirely different technology to WordPress and Drupal, Umbraco’s .NET framework feels a lot more modern, even though it was first open sourced as early as 2004.
Getting started & content editing on Umbraco
Being built on .NET, setting up an Umbraco site is a breeze. Adding custom document types (I.e. news articles, basic pages and landing pages) is really easy, with the added time-saving feature of compositions. These are custom sets of fields that you can include in your pages. Saving lots of time and effort on duplicate work for pages that use the same fields. Also being built on Angular, a frontend JavaScript framework, you can modify the field editors in any way you like!
The CMS editing experience is smooth and responsive and has all the features you’d expect from a modern CMS. It’s easy to manage images and documents with its built-in media library manager and we found the interface the most intuitive out of the three.
Whilst the page editing capabilities aren’t as flexible as WordPress, you can add predefined templates, so content managers have page layout options. These can be defined during the discovery phase of a project and set by us so we can ensure the site is consistent and on brand. There are also nifty preview features which lets you view how a page will look across different devices before you publish to the live website.
Website Designing on Umbraco
With Umbraco, you have full control over how a website looks. It doesn’t have themes like Drupal or WordPress, which could be seen as a disadvantage depending on which way you look at it. We love the fact that no templates or themes are forced on you out of the box, leaving us to explore every possible design avenue without limits. All you do is apply your own style sheets so you can effectively make the website look however you want it to look, rather than being tied to a theme.
The design stages of a project are very important us. We put in a lot of work into user experience to make a website super user-friendly. This means that each of our website designs are built with your users in mind, as opposed to shoehorning it into a pre-existing template.
Technical Flexibility of Umbraco
Since the Backoffice is run on compiled .NET, no amount of bad code in the templates can ever kill the CMS editing page, also known as the ‘backoffice’. Meaning it should always be recoverable which is much better for site stability.
Umbraco also offers the full feature set of ASP.NET’s MVC system, allowing complex forms and data validation to be implemented easily, and in a modular way. This way of working is more suited to modern web development, and clearly encourages Separation of Concerns, a concept that improves the resulting system’s extensiblity and maintainablity. Meaning your website can be extended and modified with no worries of breaking currently used features.
Final thoughts on Umbraco
Overall we were very impressed with how user-friendly the CMS was and it had all the functionality we had in our CMS, and then some! Technically speaking, it again was very easy to manipulate and implement our own custom code.
So which is the best CMS for us?
By unanimous decision… (drum roll please) it’s UMBRACO!
It does everything we need a CMS to do and gives us lots of room for manoeuvre from both technical and design aspects. We can still deliver the same custom features and integrations we’re synonymous for.
Users will absolutely love the highly compatible and powerful open source CMS. Slick website editing is coupled with a wide range of well thought out management tools makes this CMS a pleasure to use.
The way we build websites, by focussing on the UI and user experience, won’t have to change a whole lot either, so we feel confident that it’ll be a success. We’re really excited at the doors this opens for us and can’t wait to get started on a live Umbraco project.
Get in touch to find out how we can use Umbraco on your next project.