WordPress, while being a blogging platform at its core, has become a standard tool for building a wide variety of websites over the years. People are using it for just about everything you can imagine these days; business sites, online portfolio for a photographer, online stores, real estate database, online community, and so on. Many third-party vendors are selling all kinds of premium themes for all sorts of niches. Most often, premium themes include a drag & drop builder, which allows anyone to create a professional looking layouts without manually writing HTML and CSS code.
WordPress has a Long History
WordPress has played a significant role in making website creation far more accessible to the masses. It’s easy to get started with the base WordPress installation. Many shared hosting companies offer an automated tool that allows users to install a WordPress site with just a few clicks. Many interesting and useful websites emerged, and more people started selling a variety of products, both physical and digital in the past ten years, partly because WordPress offered an easy-to-use solution for non-technical people.
Engineering is often about trade-offs and WordPress is not without exception. Although WordPress revolutionalized online publishing in many ways, the trade-offs also became more apparent as people tried to use WordPress for everything, even for the type of sites that would be better off without WordPress on the backend. WordPress is a database-driven system, so it naturally takes longer to load than a lean, static HTML site due to database queries WordPress needs to make every time someone accesses it.
More and more sites became slow and troublesome when they didn’t need to be. Users added plug-ins for the type of features they could manually add with relative ease without resorting to plug-ins. Themes did the same thing, resulting in slow rendering speed. It is much like stuffing a light-weight small car with hundred kilos of solid rocks and a large-size trailer in the back. A reasonably quick car became a cumbersome and slow car.
This trend is not good, because Website load time matters. We should carefully consider various trade-offs when we build a site for business. It’s worth considering some alternatives to WordPress if they offer most of what you need for your business site without adding extra weight.
Static Site Generators to the Rescue
Fortunately, there are many alternatives to WordPress if you need a leaner website. One of the most popular options is a static site generator.
Static site generators are often open source and driven from the command-line. They can be quick to install and run, especially for those technically inclined. It doesn’t depend on admin privileges, databases, runtimes, and other technical dependencies. It can run just about anywhere; A generated site is just a bundle of static HTML files and resource files (JPEG, CSS, etc.). You can deploy it on Amazon S3, GitHub Pages, Dropbox or any web host out there. You do not need PHP and MySQL.
The lack of PHP and MySQL does not mean lack of database-like features. In fact, most site generators are blog-aware; they can host a blog, assign tags, and slugs. Their template system is flexible enough to accommodate any URL structure, content types and metadata.
Adding new static pages and blog posts is easy. Save a Markdown file (a plain text file with .md extension, written in Markdown syntax) in a right directory inside a site structure, and your site generator will convert it to an HTML page for you.
A static website can handle a huge number of people accessing the website at the same time, compared to WordPress or any other database driven website.
Here are a couple of static site generators to start off with:
Hugo is a lean and efficient static site generator written in Go. It is open source and completely free. Its template system is relatively easy to understand if you are already familiar with HTML and CSS. If not, you can always use one of their pre-designed themes. It can import a WordPress blog, so migration is smooth if you run a WordPress blog and want to migrate to a faster-loading website.
Jekyll is a popular choice written in Ruby and many well-known bloggers and developers use it for their website. It has excellent support for importing existing contents from a variety of platforms including WordPress, Joomla, Tumblr and many others. Jekyll is also what powers the github.io websites that you can use from your github account.
What about clients?
Not everyone is comfortable running a Terminal command and manually upload a generated site via FTP. Fortunately, Forestry.io is available for both Hugo and Jekyll sites. It can parse your Hugo or Jekyll project and automatically build a CMS on top of it. It’s a hosted service, so you still don’t need to worry about running a complex dynamic site system.