May 06, 2020 / Craft CMS

Why we chose Craft CMS

Craft CMS Development

How did we come to specialise in Craft CMS development?

As an agency, we had searched far and wide for a content management system that allowed developers to produce beautiful, functional sites that content managers also love to use. We had tried pretty much everything, WordPress (obviously), Expression Engine, Magento, Pyro and we even built our own.

We first started using Craft CMS in 2012. At the time it was still in private Beta. In fact, we first started following its development by Pixel & Tonic back when it was being called Blocks CMS. Right from the beta release, it was clear that Craft was what we had been looking for.

We no longer had to make decisions about which CMS to use based on what functionality was needed and possible. We no longer had to trade-off between requirements with Craft CMS the requirements of designers, developers and content managers were all possible.

Craft CMS makes everything possible

That does not mean that Craft CMS is right for every project. For some of our smaller clients who don't require the additional flexibility of Craft CMS we have used alternatives. But for the vast majority of our work, we believe that Craft and Craft Commerce is the right CMS, and our clients agree.

Almost gone are the support calls to help content managers who cannot make their page look exactly how they want it to. We no longer have to explain to our customers that something is either impossible or will be very expensive. It has made our and our clients' lives much better.

Why we like Craft CMS so much, and why we recommend it for most of our client projects can be split out into the benefits for different stakeholders; content managers, designers and developers.

Craft for content managers

Right from the start, even before the Beta was released, Craft CMS was built to elegantly handle multiple different content types but has no pre-built content model. Instead, it allows developers and content managers to define the best model for them. Content in Craft is built on blocks. Content blocks can be arranged as the content manager wants them. Each type of content has its own content block whether that is a block of text, a video, an image or an animated infographic. The content manager can drop them in, knowing that each block has been styled in the development process which keeps the designers and brand team happy as the design is applied consistently and the brand consistency is maintained.

Having individual blocks for each content type also means that you only have to build a content block once. If you use the same content on a content page and in a blog, no worries, re-use it. Spot a typo, just change it once and the change will reflect across every use of that block.

On a day to day basis, the main advantage of using Craft CMS for content managers is the ease of use of the CMS. The functionality that a content manager can access is defined by the developers, it is streamlined and limited to the functionality that a user needs. It does not have the bloated interface of some other CMSs.

The live preview functionality is also the best we have seen, allowing content managers to edit their content and see the live update of what it will look like at the same time.

Craft CMS for designers

Craft CMS was built with designers in mind. Unlike many CMSs, Craft websites are built on templates, often from scratch based on the design requirements of the project. This is quite a deviation from the idea of selecting a theme and editing/extending it which was made popular by WordPress. The creation of templates provides the ultimate level of flexibility whilst also allowing developers and designers to create sites that are consistent in design as well as user experience.

With Craft CMS the design process can also work alongside the development process. Information architects can work to define the content structure for a website or page, developers can then implement that and content managers can be adding and working on content in parallel to the designer working on how best to present that content.

Craft CMS for developers

The main appeal of Craft CMS for developers is that it allows developers to work how they want to, and should develop. There is no need to shoehorn a design into a pre-created theme, there is no need to find a plugin or more than one to create simple functionality on your site, simply build what you need. And reuse that code whenever you need to.

With all of this freedom, some might think that keeping things consistent and ensuring that all developers on a project work in a consistent way could be a problem. In fact, Craft CMS is built on a suite of open source tools, Yii (Yii2 for Craft 3) the PHP Framework, Twig for template markup, Doctrine for building queries and Composer for building dependencies.

Put all those together and you have a methodology for working that allows developers to keep consistency in their work. Craft aims to provide developers with the tool that they need out of the box, whilst also leaving them with the flexibility to build the things that need to be bespoke.

Core Functionality

Permissions

Craft CMS comes with an elegant user authentication solution that allows a site administrator to create custom user groups to set up permissions for teams or individuals. User’s content can even be automatically sent to a more senior member of the team for sign off if required.

Localisation

Although you might not notice it as a user, Craft CMS comes ready for your site to be replicated in different locales. This can be done on a site-wide, or section by section basis to allow you the flexibility to build out your international presence as you need it.

Asset storage

Whilst Craft CMS can cater for asset storage on the same local hosting as the rest of the site, it also caters for asset storage with Amazon S3, Rackspace Cloud Files, and Google Cloud Storage. Once set up the cloud-based sources appear alongside your local storage within the CMS and you can even drag and drop files and folders between locations on the screen.

Relations

Relations, or relationships, allow content managers to link different types of content to each other. If you have a blog post that mentions some of your services, products and another blog. No problem. Simply select the different services, products and blogs that you want to relate to your original blog post from the entries section within the CMS and you can display your related content.

"Build your own, don't customise someone else's."

Craft CMS has made the hours of trying to manipulate someone else’s plugin to make it show what you need a thing of the past. Simply create your own from scratch. This is all built on the idea that Craft CMS does not create your HTML. It is the back end, the content management system of your website, it is down to your developers to make sure that your site delivers the information that you want it to in the way that you want it to. That allows Craft CMS developers to build lightweight and elegant code to allow your website to look great and load faster than the same page on a CMS like WordPress.

Security

Security, or cybersecurity as it used to be known, is a huge issue for any company that has a website and uses email. Which is pretty much every company.

Craft CMS was designed to be secure out of the box and with all of the updates that you could need to ensure that it remains secure for as long as your website is live.

All of the things that we looked for when we were confirming how secure Craft was are included, things like, is it vulnerable from a Cross-site scripting (XSS) attack, does it prevent SQL injection attacks, how does it handle security updates, Crafts codebase is regularly audited by third-party security firms to ensure that its development is best practice and secure.

There is a good Q&A on the Craft CMS page on StackExchange that is worth a read if you are interested called How secure is Craft CMS and why is it secure?

Cost-effectiveness

It would be great if every project also came with a blank cheque and the free reign to do everything to make the perfect website with no price constraints, but life is not like that!

Cost-effectiveness is paramount for all businesses. If your business only needs a simple site and there is a template that accurately represents your brand you may not need a Craft CMS site. But it's worth considering how you'll need your website to expand as you grow and if the platform you have invested in will allow your website to grow with you.

SEO

Every CMS claims to be SEO ready, and some actually are. Craft CMS is one of the ones that not only claims it, it also delivers. Craft provides you with all of the tools that you need to be able to handle the basic elements of SEO, and also excels at the more involved elements of SEO - Scheme.org (JSON-LD and Microdata), OpenGraph and TwitterCards for Social and of course the standard HTML metadata. With the capability to do all of the technical SEO via Craft, performance really comes down to delivering great, engaging content that your site visitors engage with and keeping that content fresh.

So why Craft CMS?

For us, it offers us what we need to deliver great sites, that work hard for our clients and their customers. Want to find out how a Craft CMS website could help your business? Get in touch and we can arrange a coffee or call to discuss your requirements.