Kevin, I understand a lot of the complications for attempting to set up an IndieWeb site for a static site generator like Evan. A lot of IndieWeb tech is harder to do with SSG’s since a lot of the functionality is anything but static—yet it still works. Hopefully the small handful of plugins for WordPress are much easier, particularly for someone as adept as you. I’ll admit there’s a microformats issue for dovetailing WordPress themes properly, but that should only get better with time. We could definitely use some developers and designers to help lighten the load to make it easier for everyone. Some platforms like WithKnown have it all out of the box while Drupal and WordPress have either one or a several plugins. Evan’s set up is about as complicated as they could come.
Since you mention some of your problems, a few things you might appreciate for making your own personal use easier for WordPress are the large number of Micropub clients you could be using to post to your website. They’re way easier than dealing with the Classic editor, Gutenberg, or the mobile interface. I really enjoy using Quill and Omnibear (a browser extension) myself, but for food you might enjoy Teacup and for memes there’s Kapowski. If you want a crash-course on micropub for a non-developer, I did a WordCamp session on it a while back. Since most of them are open source, I’d imagine with your experience, if necessary, you could modify them to suit your specific needs without a lot of work.
If you want to go a step further, you could set up a social reader for subscribing to and reading other sites as well as using their built in micropub functionality to reply to posts directly from your reader.
You’re right that the ecosystem does seem overly-complicated on first view, but it’s taken almost a decade of work by hundreds and thousands of people to attempt to make a set of standards that are as simple as possible for building into almost any platform out there. Further work will only serve to make things even easier and more usable over time.
Of course if one wants an easier solution (especially for the completely non-technical person who is looking for a Twitter-like replacement), there are a few IndieWeb as a Service platforms out there. One of the best I’ve seen so far is micro.blog. You can’t beat its clean interface or ease-of-use as a service and it has pretty much everything built in out of the box. As time goes by it’ll be great to see other services like this that offer the interoperability without the heartache that Evan has seen.
If you’ve got ideas about how the WordPress parts could be improved, do pass them along.
A Metacrap Problem
It’s metacrap–I know, I know–but I’ve been thinking about easy ways to use Open Graph Protocol meta data to add contextual Twitter cards to some of my content when syndicating posts to Twitter. My goal is to leverage the speed and ease-of-use of Micropub clients while doing as little as possible manually, but achieving as much parity between posts on multiple sites.
I’m particularly keen to do this to syndicate/share more of the articles I read and post about on my site without adding additional manual work on my own part.
Outline of Some Resources
The Post Kinds plugin for WordPress parses URLs for me and pulls in data to create reply contexts for a variety of posts like bookmarks, reads, watches, listens, etc. Since Post Kinds doesn’t display featured images (yet), I’ve also been using the External Featured Image plugin to display the featured images from the original to add to the reply context of my posts as well.
In addition to all these I’ve been using the All in One SEO plugin to easily add an SEO layer to posts without having to do much thinking about it. AIOSEO recently upgraded their UI and features in the last year, and yesterday I upgraded to the newest v4.0+. One of the new features it’s got is the ability to add default fields or pull in pre-existing custom fields to output OGP meta data.
Start of a Solution
So I got the idea that since Post Kinds and External Featured Image plugins are pulling in and displaying the sort of data I’d like to show in Twitter cards, I figured why not use them? While metacrap is a DRY violation, the fact that it’s automated for me and is based on data I’m actually showing visually on my website makes it feel much less dirty. It also has the benefit that it helps make some of my syndicated content look and feel on Twitter, more like it does on my website. This is also a problem since Twitter hampers how much data I can syndicate in a single post.
I’ve still got some issues about how to deal with the Post Kinds data, but after a bit of digging around, I discovered the image URL for External Featured Image plugin is hiding in the
_dcms_eufi_img field. So I can make the default Twitter settings in AIOSEO pull the external image by setting
Default Post Image Source to
Image from Custom Field and set the
Post Custom Field Name to
Since a lot of my posts are reads, bookmarks, etc., this works well, but I can easily override the settings for articles or other custom posts which I make less frequently.
Hopefully I can figure out the settings for Post Kinds to get the rest of the default fields to map across. I’m happy to hear ideas on what field names I’d need to use to get the Post Kinds
Summary/Quote fields to map over for the
og:description respectively. Ideally I can manage to get it done without needing to get a subscription to the pro version of AIOSEO which also has support for custom taxonomies which is how Post Kinds works.
Since my theme has relatively solid microformats support, and I have plugin infrastructure to allow easy syndication from my website to Twitter through micropub clients, this last bit for creating Twitter reply contexts helps close some of the loop for me in my syndication workflow while keeping as much context across platforms.
Here’s a visual example of a native post on my site and the corresponding syndicated copy on Twitter. There are some differences, mostly because I don’t have as much control of the appearance on Twitter as I do on my own site, but they’re about as close as I can get them with minimal work.
Another option is Tom Critchlow and Toby Shorin’s Quotebacks which you might leverage though they won’t necessarily create new posts on your behalf.
If you’ve got some programming experience, you might be able to do something interesting with a set of bookmarklets I just made too.
I think I’ve also shared most of my documented workflow for using Hypothes.is for some of this too, though that may require some work on your behalf.
Another good option is to add Micropub functionality and use some clients like Quill, Omnibear, or others in conjunction with the Post Kinds plugin. I think Quill may also have some useful bookmarklets you can use with it as well.
In many cases, sites sending these notifications with the proper microformats mark up means that you can get some really beautiful replies to show up in your comments section (esp. in relation to how the old linkbacks/trackbacks looked). Webmention also has some structure as well as potential extensions to prevent the spam that the prior implementations encouraged.
If you reply to my syndicated copy of this post on Twitter, I’m also using the free service Brid.gy to have Twitter send these notifications to my personal website, so I’ll see your reply on my original post without actually needing to visit Twitter directly. This means that not only can I do threaded replies between my site and another WordPress site (or any other site that supports Webmention), but I can do threaded conversations between my site and Twitter.
Now if you want to take this the next few logical steps, add Micropub support to your website, and start using a social reader like Indigenous. That will let you write replies to content in your reader that will automatically post those repsonses/replies to your website, but then your site can ping the site you were responding to! The specifications allow a true social media experience between websites running different software on different URLs. Some documentation for the WordPress side of things: https://indieweb.org/Getting_Started_on_WordPress
The more sites that support these specifications, the richer the ecosystem becomes.
There isn’t any configuration beyond setting a default post status; you just download and activate. You may need to install the IndieAuth plugin to log in to them, but then you should be able to use any of the many Micropub clients to post to your website. I recommend starting with Quill.
More details and some examples discussed here: https://wordpress.tv/2019/06/26/chris-aldrich-micropub-and-wordpress-custom-posting-applications/
Similar to something like webhooks, these endpoints can be used to send a wealth of data from one place to another. Right now I can see a great use case for going from almost any target that’s currently supported to a variety of endpoints that are currently built for websites or blogging use cases.
Leveraging Micropub may also make it easier to target a simpler common “surface” instead of dovetailing with hundreds of individual CMS platforms and their APIs.
I’ve been able to use Micropub with Webhooks to get around the current IFTTT limitations, but there is a lot more you might be able to do with it as a company while making it easier for customers as well.
Enhancing my Micropub Server and autoconfiguring Micropub client with the support for `hints`.
Another interesting option is @KevinMarks’s noterlive.com which will compile your threaded tweets for cutting/pasting HTML to your site. Perhaps one day he’ll add Micropub functionality as well?
Nine: Micropub for collecting data
The Micropub plugin helps me by creating an endpoint on my site for quickly and easily capturing lots of data. IFTTT, Zapier, Integromat, n8n can all help to aggregate this data too.
Here are some more in-depth details about how I use some of these tools and recipes/walk-throughs so you can too: Using IFTTT to syndicate (PESOS) content from social services to WordPress using Micropub.
Micropub 2.2.3 for WordPress has been released. It fixes a variety of warning notices. Published, updated, name, and summary properties are no longer stored in post meta. When queried, they will be pulled from the equivalent WordPress properties. Content should be as well, however as content in th...