11 Oct 2015
・ Updated on
12 Nov 2018
・ 5 min read
We Love Craft CMS
When potential clients enquire about a website, and require the ability to update their website (via a Content Management System - CMS) 90% of the time they ask “Do you work with WordPress?” or “I need a WordPress website, can you help?”. When we are asked this we happily say “No”, but then explain that we can offer a better system - In the form of Craft CMS.
It’s sometimes quite difficult to convince a potential client to use a less popular CMS, especially one that requires to be purchased, over a free - seemingly more popular product.
At Shape we’ve used commercial content management systems since Shape was born. We’ve done this because they feel more robust, the support is better, development time is reduced and the community create amazing add-ons that don’t feel amateur or buggy.
The latest commercial CMS we’ve been super impressed by is - Craft CMS. But why do we love it? What benefits does this have over other commercial CMS products? (Or even Open Source CMS) So we thought it would be good to outline some of the features and benefits of Craft CMS that we love!
Responsive Control Panel
Straight away - A CMS with a responsive control panel wins. For a client this is a major benefit because they can update their website on any device without any problems. The interface is super clean which also makes it really easy to use and work as a responsive control panel.
One of the major gripes when developing a website using a CMS is the ability to split content up and put it in multiple fields. The ability to do this either has been a plugin, or is built in to the core, but a nightmare to maintain and scale. Craft CMS makes splitting content up a breeze, mainly because you can also assign the same custom field to multiple sections!
There are also a wide range of fields available to use (Not to mention lots of amazing 3rd party plugins such as Super Table, Neo and LinkIt and ) which means you never have to find a *hacky* way to add your content, which in turn would compromise the simplicity of adding content and in turn confusing the user!
For me, the best custom field available is Matrix. You can create *blocks*, which in theory could be features or elements in your website and allow your client pick and choose which blocks they want on the page. With also the ability to reorder these blocks, so your website becomes 99.9% customisable via the client without causing any styling issues and the need for multiple templates.
One major benefit of Craft is that it comes with its own tempting engine - Twig. I’d never used Twig before, but the learning curve of this was really short and I picked it up really quick. It also impressed me as to how powerful Twig combined with Craft actually is!
For example - A recent job consisted of creating a filter menu, to filter entries by categories, limit per page, sorting by date order etc. Lots of functions! Normally - We’d run straight to “we need an add-on to do this”. But after doing a bit of reading I realised this could easily be done within Twig / Craft!
The speed, ability and how well this actually worked really impressed me and now I try to create everything in Twig before running off to find an add-on.
Twig also comes with the ability to do Math within the template (Really helpful!). You can also create variables within the template, and then manipulate these with filters. Personally, my favourite filter has to be Kebab!
As of Craft 3, you can now edit your images within Craft using the Image Editor. Uploaded at the wrong size? Or ratio? Need to crop that person out? No problem - You can do this direct in Craft. It also comes with a handy 'Focal Point' option, that allows you to set where the main focal point of the image should be. So making images work responsively is a breeze, by ensuring the most important part of the image is always in view.
Multi-site and Locales
Although not every client requires a website that needs to be multi-regional or multi-lingual, as well / or run multiple sites from the same CMS. But if they do, Craft CMS comes with this ability at it’s core, and it’s extremely powerful. You can create multiple entries, globals, assets, pages etc per location and either have these completely different or share pages across the different websites.
Another feature that clients ask for is to be able to live preview the page / entry they are editing before they commit this to the live website. This means they can view and tweak the entry before the public see it. As well, Craft CMS saves revisions of the entries so if there is a mistake, you can always roll back to a previous version of an entry.
Updating, Backup & Rolling Back
Updating a CMS (Or add-on) on other systems has sometimes been either a long complicated task or your so nervous to do it, because it might break your website. With Craft it comes with a one click update. When you do this is saves a backup of your database & files, runs the update and if there is an issue it will roll back to the backup version! Extremely clever and helpful.
A major worry when using a new platform is whether theres anyone else out there to help you out in times of coding-need. We've found the Craft CMS community to be the most helpful we've ever been involved in. If you have a problem, you can join the Craft CMS Slack and someone is sure to help you out, or even post on Craft CMS Stack Exchange.
There is also an annual conference that we attend called DotAll, as well as a meetup in Manchester that we attend regularly (+ Give talks)
To summarise, all these features not only speed up content management via your clients, but it also speeds up development time. In turn, keeping initial costs down for the client and also freeing up more time to work on other projects. This doesn’t mean it’s still a super easy job to do, but it certainly helps.
What I also love about Craft is the continuous updates and the communication from the developers of the product themselves. They seem really involved with the people using their product and taking on their advise.
So if you haven’t already, certainly give Craft CMS a try. Happy coding!