web development  / 

Why I chose a self-hosted comments plugin for my personal blog

The Commentions plugin for Kirby CMS

Throughout this long pandemic, I’ve spent far too much time building my new blog — much more than either writing it, or promoting it.

But, I’ve enjoyed taking the time to learn basic PHP code, and slowly evolving my blog’s simple design and structure.

And now, although my traffic is still very low, I want to add just one last feature, before I start using my blog ‘for real’ — readers’ comments.

Why a self-hosted plugin, instead of a hosted app?

  • I originally chose to use Kirby CMS for my blog because I liked the simplicity of its flat-file, text-based system. So it makes sense for me to want the same advantages for my commenting system. With a self-hosted plugin, all the files for my blog, including all the comments, are held on my own computer and server, in an easily-readable, highly-portable, text-only format. They are completely under my control, using an FTP app, like Transmit, and the macOS Finder.

  • The design I’ve evolved for my blog has prized simplicity above all else. I’ve added as little as possible to its blogging interface — no fancy icons, extra panels, background graphics, buttons, or animations — just plain typography, directly-related images, and a simple layout. So I wanted a commenting system that either has exactly the same design (unlikely), or which allows me to fully customise its styling and options.

  • I’m not sure what I’m aiming for in readers’ comments. I don’t expect it to become any kind of ‘live’ discussion forum. More likely — just a few occasional contributions that add to (or correct) my original posts. So, I’m hoping that I won’t need powerful moderation tools to manage its low volume feedback and conversations.

A choice of two plugins: Commentions or Komments

After learning and using Kirby for the last year, I’ve come to see it as a ‘perfect’ blogging platform — but with one missing feature: readers’ comments.

So huge thanks to these two developers who have put months of their own free time into creating the two currently available Kirby plugins:

I’ve only tried out Commentions so far — but I’m equally grateful that the Komments plugin exists as an excellent alternative.

How I’ve customised Commentions

“ One assumption this design operates on: the idea that no one has the right to publish whatever they want on your blog (in the form of a comment). So for example, when replies are eventually published to your blog, they’re in minimal form.”

“ … the off-the-shelf blog should be a place of peace and quiet. It should facilitate human connection, yes, but without succumbing to chaos and spam.”

  • When the comments styling closely matches the site design, it becomes important for the headings text to match the author’s ‘voice’ too. So I’ve followed Sebastian’s super-detailed instructions to personalise a few of the translation strings in the site config.php file.

  • I love the concept of Webmentions, but I’ve not yet got my brain around its underlying mechanisms. And in honesty, I don’t want to end up with a messy UI, and too much detail. So, for now, I’ve used Commentions’ toggle switch in the control panel to suppress all the webmentions options.

  • I’ve also hidden Commentions’ Markdown help dropdown, and replaced it with a link to a Comments help page. (I toyed with the notion of a ‘Comments policy’ page, like Dave Winer’s.)

Commentions in Kirby’s control panel

Listing, moderation, and even editing of readers’ comments are all closely integrated into the Kirby control panel, thanks to Fabian Michael’s coding:

New comments are queued, awaiting approval, on the Blog page in Kirby’s control panel
Approved comments are then displayed on each individual Post page, below Kirby’s main text entry field

  • I’ve just added a Medium-style ‘Zoom’ feature to this website — so you can now click on each of these screenshots, and they’ll enlarge to fill the available space.

Some comments about Commentions

  • It’s great to have comment moderation tools ‘live’ in Kirby’s control panel, instead of having to log on to a separate site with a completely different UI.

  • But it would be even nicer to be able to ‘bulk-select’ several comments in the control panel, to be approved or deleted as a group. This would be the first timesaver I’d look for if I had more comments traffic.

  • Live preview of Markdown text would be a tempting enhancement. However, its absence keeps my blog layout simple, and encourages readers to keep their comments minimalist too!

My new comments system

My very first comments panel is now ‘live’ below. Will my optimistic assumptions about comments prove to be naive? Do you like my minimalist design? Let me know what you think.

Readers’ comments

  • Brian Liddell

    14 May 2021

    This is a test comment, to show how these comments will look when readers use Markdown.

    • Italics, bold, blockquotes, lists, links, code, and code blocks are all supported…
    • but headings, images, and any other files are ignored!

    There’s a Markdown link above the comment field for more help, but I hope to change this to a dropdown sometime.

Add your comment…

Available formatting commands

Use Markdown commands or their HTML equivalents to add simple formatting to your comment:

Text markup
*italic*, **bold**, ~~strikethrough~~, `code` and <mark>marked text</mark>.
- Unordered item 1
- Unordered list item 2
1. Ordered list item 1
2. Ordered list item 2
> Quoted text
Code blocks
// A simple code block
// Some PHP code
[Link text](https://example.com)
Full URLs are automatically converted into links.