WordPress isn’t the most popular CMS on the market without reason. It’s modular, it’s easy to use, and it’s got a fantastic plugin ecosystem. But it’s easy to forget that it also isn’t your only option when it comes to building a website.
There are plenty of content management systems in the sea, after all. Today, we’re going to discuss one of the more formidable ones. It’s called CraftCMS.
What Is It, Exactly?
Created by ExpressionEngine plugin developer Pixel & Tonic, Craft is billed as a “content-first” CMS tool. It’s created to allow for far deeper control and greater performance than other content management offerings.
Written in PHP and run on the Yii platform, it takes the ‘content’ part of content management literally. Unlike WordPress, it does not include any tools for website creation. Anyone who uses Craft will need to either build their own stuff by hand or hire someone to do it.
It also doesn’t have any sort of official theme or plugin marketplace – so again, if there’s anything you want to do in terms of customization, you’ll need to handle it yourself.
That said, it does have a thriving (and fast-growing) developer community, so you won’t be completely on your own in that department.
“Craft is for folks who like to take their time and do things right, building out their HTML, CSS, and JS by hand,” reads the documentation. “This is not a site builder or some sort of design tool. There are no themes, and you won’t find any flashy UI tools full of sliders and other gadgets that will help you “design” your website in minutes.”
The trade-off is that Craft is both extremely scalable and exceptionally customizable. If you can code it, Craft can handle it. That’s a huge plus – though some people might be turned off a bit by the fact that it’s comparatively much more difficult to use than WordPress.
Why Use It?
The short answer is that Craft excels at managing sites with a large volume of interconnected and interrelated content. Although smaller sites can make excellent use of the content management tool, where it really shines is with massive, sprawling content bases.
Plenty of enterprises are already using the CMS, including Netflix, Emily Carr, Salesforce, Wildbit, and Oakley.
It’s important to note that although Craft takes a lot of legwork and development expertise to set up, it’s actually incredibly publisher-oriented. The backend is extremely easy to use, and provides a simple, streamlined administrative dashboard that makes content creation a breeze.
The most notable element of this backend is something called Sections and Entries. This is the primary means by which Craft organizes its content. An entry is a single piece of content like a blog post, and has an author, date, and optional timed expiration attached to it.
Sections arrange entries into categories, and can be standalone pages, related entries, or even full hierarchies. Related entries can be easily tied to one another using a built-in schema system, and
It’s actually quite sophisticated, and features like Matrix (which allow certain pieces of content to be grouped together and reused with ease), multiple authors, built-in search, automatic localization, and categories/tags makes the organization and customization of content even deeper.
This level of customization probably isn’t necessary if you’re just running a small blog with a few authors or a storefront for a small business. It’s also not meant for massive enterprises that need a laundry list of features or organizations that need to develop an SaaS applications.
If, however, you’ve a large base of contributors, a highly-trafficked site, or enough content that it would be difficult for you to keep track of it on your own, then Craft is a perfect option.
How Do I Use It?
The first thing you’ll want to do is navigate to the Craft website and download the codebase. Make sure you’ve got PHP 5.3x or above and MySQL 5.1 or above installed. You’ll also want to ensure your web host is capable of meeting Craft’s requirements (Hostdedi is, don’t worry).
Finally, you’ll also need an FTP client such as Transmit and a rich text editing tool.
Once you’ve downloaded Craft, unzip it somewhere on your computer. You’ll then be confronted with two folders, craft/ and public/. The former will need to be uploaded to your server in its entirety, above your web root. The public folder can be uploaded wherever you choose.
Next., you need to set Craft’s permissions. At minimum, you’ll need to ensure that craft/app/, craft/config/, and craft/storage/ have write permissions assigned to them. You can find recommended permission settings here.
Your third step will be to create your database, then you’ll need to ensure Craft is properly configured to connect to said database. Your host can help you with this step, and walk you through configuration. However, you may need to take care of ensuring Craft knows where that database is and how to connect to it.
With all that out of the way, all that’s left to do is run the installed and start building your website. Note that Craft uses HTML website templates constructed in Twig, so you’ll want to familiarize yourself with it. Plugins are
In a lot of ways, WordPress is designed to be a jack of all trades. It’s a content management system that can do just about anything you want it to. Craft isn’t like that. It’s made to do one thing, and one thing only.
But it does that extremely well. If you’re willing to look past the fact that you’ll need to design your own website and (probably) code your own plugins, Craft can excel at just about any content project you set it to. And if you need a great host to help you run things, why not give Hostdedi a try?