In my last post I mentioned that I wanted to move this website to a more flexible platform. I suggested at the end of that post that I was probably going to use Mezzanine as a Django-based Content Management System (CMS). Mezzanine is a collection of pre-built Django applications that make building a new CMS website fairly quick (if you are familiar with Django in general).

I spent a couple of days setting up a Mezzanine project, and playing around with what the platform offers (and what the community provides). In the end, I was really frustrated as Mezzanine seemed much more locked-down than what I was looking for. I struggled to find ways to customize the website easily, to add my own styles, and to add pages that weren’t governed by the CMS. After realising these struggles, I decided to keep searching.

The solution actually came from a comment to my previous post on Reddit. A user by the name of /u/jollybobbyroger suggested I check out Wagtail and said that his experience with Wagtail had been very positive.

Wagtail is a Django-based CMS built by Torchbox that provides much less pre-built functionality than Mezzanine, but in return provides A LOT more flexibility. Using Wagtail I’ve managed to keep the look-and-feel of my site almost exactly the same as before, but improve the things I didn’t like about using a static Jekyll-based site.

I’ve replaced Disqus comments with a “native” system that stores comments in my own database - using Django Fluent Comments. I’ve added newsletters with Django-Newsletter, and I’m currently implementing custom functionality to allow commenters to easily sign-up to the newsletter as well as be notified of when someone replies to their comment.

I’ve also re-created my Professional Profile page so that all the content can be modified from Wagtail’s awesome admin interface.

I plan on creating several more blog posts about working with Wagtail that provide code-snippets on implementing a website built on Wagtail. As of posting this post, IsaacJordan.me is still using the Jekyll system, but in a week or two my new version will be feature complete enough to move it to production.


Check out my other blog posts! If you found this post interesting, feel free to let me know either on Twitter (@Isaac_M_Jordan), or in the comments section below.

Enjoyed my post? Sign up to the newsletter to receive a small email when I post. No spam, I promise.