Narwhal Microblog Plugin for WordPress: Quickly Posting Notes to your IndieWeb Site

This morning, after reading a brief, but interesting snippet in the IndieWeb WordPress chat from last night, David Shanske made me think about an old itch I had to have a quicker and more stripped down posting interface for notes on my website. I immediately thought of WordPress’s P2 and 02 themes/products which had a built-in simple posting interface reminiscent of Twitter’s UI. 

Screencapture of Twitter's simple posting interface

Not wanting to wait to see what David might come up with before the next couple of IndieWebCamps, I thought I’d at least do some research to see what was hiding in the good old WordPress repository. I found a few old plugins that were roughly the sort of idea I was looking for, but they were last maintained about 8-10 years ago. 

Then I came across the Narwhal Microblogging plugin from Billy Wilcosky, which is being actively developed/maintained and has almost exactly what I’m looking for!

Screencapture of the Narwhal microblogging plugin user interface

Apparently the plugin itself had an early simple start before the developer came across Jon Smajda’s plugin Posthaste which was apparently repurposed for the Prologue/P2 code that WordPress used for that product/theme. He’s since rewritten a large chunk of it based on Posthaste’s original code and added in some basic formatting options and the ability to add media, so one can post a quick note along with a photo.

Settings for the plugin are hiding in Settings << Writing admin interface (or at the path /wp-admin/options-writing.php on your website) which includes the ability to choose which pages to display the “widget” and allowing one to hide the title, tags, categories, draft seclector, one’s Gravatar, and the Greeting and Links. I’d personally pare my version down to just provide tags, categories, and the draft options to keep the interface as clean as possible.

Screencapture of the settings for the Narwhal plugin

Finally the developer notes that within the user interface “if you leave the ‘Category:’ box at its default setting it posts to your default category. However… If you have a category named ‘asides’, it will put posts with empty titles into the ‘asides’ category even if you do not explicitly specify the ‘asides’ category in the dropdown. You can then style them as asides.”

This is the view of the posting interface on my site after paring it down to my personal bare minimum.


I’ve already discussed some of the immediate benefits for easily and quickly posting directly from my own website. Just below I’ll add a few others.

Most importantly for me at the moment, the plugin works with the Classic Editor in WordPress. The interface also only shows up when one is logged into their website, so visitors won’t ever see it.

Titleless posts

The plugin automatically takes the first 40 characters of your note and posts that into the title field, so you don’t have to bother with it. Sadly, this means that feed readers and other services will take your status updates and give them a title. (Though in the wild, most feed readers do something like this anyway. I am hearing strong rumors that Inoreader is about to have better support for social media-like posts soon.) For those using the plugin for IndieWeb use and prefer to keep their notes/asides/status updates titleless, you can spelunk into the code pretty easily and make a quick change which the developer kindly documents in his support page:

But, if you want to modify the title character limit it is easy to do.

  1. Go to this plugin’s folder and open the narwhal-microblog.php file.
  2. In this file you will see a line for this max character limit and you will see the number 40. You could just increase it to something like 100, 3500, or 999999. Depending on how long you are willing to let your titles get.

In my case, I think I’ll just decrease the character limit to 0 and then rely on the Post Kinds plugin to add it’s customary pseudo-title to the admin interface on my back end so that I can distinguish my posts in the posts pages.

UI suggestions

The category chooser could be a little cleaner and provide a dropdown of all my pre-existing categories with the ability to select multiple ones. I suspect that somewhere in the WordPress universe there’s a way to do this even if it means swiping a snippet of code from core’s editor.

The basic text box for entering text could be a bit smaller on the page to accept 2-4 lines of text since it’s meant for short posts. As it stands now, it defaults to 10, but it also smartly already has a slider that appears when you type more than the available number of lines and it also has a handle in the corner to allow you to increase the boxes size.

I’ve mentioned doing natively titleless notes above, but to make things a bit more user friendly, it would be nice to have the ability in the settings page to enter a number for the text excerpt, so that users could configure it without needing code. I suspect that most in the IndieWeb space would set the title excerpt to zero so as to not have titles on their notes.

It will take me some time to dig into it, but it would be nice if the developer had some notes about the CSS classes used in the plugin so that one might more easily style the display of the output on one’s website. Fortunately the defaults to match one’s current theme seem relatively solid.

At present, there isn’t any UI for including syndication targets to external services like Twitter, Mastodon, etc. It would be nice if there was some tie into syndication services or functionality like that provided with Syndication Links plugin and publish or fed if those pieces are present.

The last dovetail that would be nice to have, particularly within an IndieWeb framing, would be to have better direct integration of this plugin with the Post Kinds plugin. This could extend to auto-setting the post kind to “note”, which should in turn allow the automatic setting of Post Formats to either “status” or “aside”.


In sum, this plugin is really fantastic for allowing a simple and lightweight means of posting quick status updates or notes to one’s WordPress website! It’s the next best thing to using any of the variety of Micropub clients, particularly when you already happen to be at your own site.

I suspect this plugin is the sort of thing that many within the IndieWeb and WordPress communities will love using–and at least one person in the chat has already said they think it’s a great find. There are currently less than 10 active installations of the plugin, but I think it deserves a magnitude or more. Let’s see what we can do about that!

Have you tried it? What do you think of the idea?


Published by

Chris Aldrich

I'm a biomedical and electrical engineer with interests in information theory, complexity, evolution, genetics, signal processing, IndieWeb, theoretical mathematics, and big history. I'm also a talent manager-producer-publisher in the entertainment industry with expertise in representation, distribution, finance, production, content delivery, and new media.

17 thoughts on “Narwhal Microblog Plugin for WordPress: Quickly Posting Notes to your IndieWeb Site”

  1. Jeffrey Paul says:

    Did your research turn up anything in this line of plugins, but a stripped down Gutenberg-based quick posting editor?

    1. Chris Aldrich says:

      I wasn’t looking for anything Gutenberg-specific, but I also didn’t have that in the search terms either, so the fact that I didn’t see anything likely means that there’s nothing out there at the moment.

      Since yours may be the first time I’ve seen “stripped down” and Gutenberg in the same sentence ;), I’ll mention that I have been thinking/chatting with a few people about building a headless WordPress site with Gutenberg to support IndieAuth login that will allow access to the Gutenberg posting interface and have it act as a Micropub based client to allow using Gutenberg to post to any of the CMSes that support it. Of course that is far from simple or pared down in any sense of the word… I know that there was a Drupal project that was attempting to port Gutenberg, but this method may be much simpler and then have the benefit of working for a far larger class of CMSes.

      1. Jeffrey Paul says:

        That sounds super interesting, though I might push you a little further and suggest trying with the mobile Gutenberg version ( and start with a mobile app experience given that computer usage appears trending heavily in that direction for “quick post” sort of content.

  2. Chris, I do not understand the problem statement and/or how the solution resolves it.

    1. Chris Aldrich says:

      Khürt, here’s a tldr; then:
      When you go to Twitter, front and center, there’s a simple way to post a tweet. WordPress, Drupal, and most other platforms are lacking this. Instead they have heavy and complicated user interfaces for posting content. This plugin provides a simple way, right on the front page of your website, to post short notes. Type. Post. Done.

      Is that more helpful?

  3. Hi Chris,

    Billy here, maintainer of this plugin. Thank you for posting about it last year. I also want to let you know that it was updated yesterday. I fixed some PHP warnings that appeared since PHP version 7.2 came out. I also made the post box a little smaller. If you target #narwhalForm in your custom CSS you can make it even smaller.

    Happy New Year!
    Billy Wilcosky

    1. Chris Aldrich says:

      Billy, Thanks! Updates are always welcome, and the idea behind this is fantastic.

      I just installed it on an updated site with WP 5.6. Unfortunately the interface doesn’t appear as expected, and I get the following error:
      Warning: Use of undefined constant posthasteForm - assumed 'posthasteForm' (this will throw an Error in a future version of PHP) in /homepages/htdocs/wp-content/plugins/narwhal-microblog/narwhal-microblog.php on line 262

      Simple and beautiful UI for posting to WordPress seems to be the holy grail and this is about as useful a method as I’ve seen. Your interface reminds me a lot of some Micropub clients or the posting interface for With, I really appreciate things like writing a note/aside and then when reaching some pre-arranged character limit like 280 characters, it automatically adds the title field if one wants to (optionally) add a title and switch it from being an aside into an article.

      I notice that in your post about the update you mention character counters. If you’re looking for something you could integrate or co-opt for future updates, I might recommend Peter Molnar’s lightweight Character Count for Post Content & Excerpt which still works well despite its age.

      I’ll also ping a group of friends who I know would love this. Thanks again for your tool and all your work. This is awesome!

      1. Thanks for letting me know! I didn’t get any errors with a default Twenty Twenty-One theme so I’m glad someone with a different theme can point these things out. I just pushed an update. I’m hoping it is fixed now.

        I could add a character limit feature in the future.

        1. Chris Aldrich says:

          I tried out the revised version and the error has gone away.

          However, for some reason the posting interface doesn’t show up when used with the Twenty Fifteen theme. I’ve tried a half a dozen other popular themes and didn’t see or have any immediate problems. In looking at the source it doesn’t seem to be an issue with CSS hiding it. I’m not quite sure where to look to clear up the issue. Ideas?

          1. At some point I’ll install the Twenty Fifteen theme and try to figure it out. I believe it has something to do with the post loop and how that is coded. The form looks for the post loop. In fact, I noticed that the blog must have at least one post or the form will not show up. That’s something I may be able to fix in the future. But for now if anyone installs this on a brand new blog with zero posts, they have to do one post first from the backend, then they’re good to go. Of course, fresh WordPress installs come with one sample post already and so it may be somewhat rare for someone to experience this phenomenon.

        2. Chris Aldrich says:

          An odd edge case quirk I’ve noticed with Narwhal is that when others embed links of my site into theirs (with oEmbed), this plugin is called in the oEmbed code somehow.

          It only shows up for me since I’m logged into my own site, which means that I can apparently post to my own website from other’s websites! Honestly, I’m not sure if it’s a feature or a bug, but thought I’d mention it.

Leave a Reply

Your email address will not be published. Required fields are marked *