What the New Webmention and Annotation W3C Standards Mean for WordPress

Commenting on blog posts and other website articles is a divisive topic in web circles. WPMU DEV has as many articles about dispensing with comments altogether as it does with fostering conversation through WordPress!

I am firmly in the blogs-as-conversation camp, so I was excited to learn about two new standards seeking to enhance conversation and collaboration among people online.

It takes a long time for a proposed standard to make it through the recommendation process at the World Wide Web Consortium (W3C). This year began with two similar standards becoming recommended around the same time. If widely adopted, each could make the web a more convivial space, or at least a better place to organize one’s own knowledge. These standards are:

  • Webmentions – Allowing websites (or their owners) to communicate with each other, and spread the conversation through social media.
  • Web annotations – Allowing both websites and their users to place public or private notes and comments.

WordPress users can take advantage of these standards through a variety of plugins.

In this post, you’ll learn more about what these standards do for both site owners and their users. I’ll also explain how to set up support for each.

What Good is a Webmention?

Webmentions are a more secure way to implement trackbacks and pingbacks, which you can more about in XML-RPC and Why It’s Time to Remove it for WordPress Security.

Webmentions allow other bloggers to engage your site’s readers through comments from their site. If another blogger reads your post and wants to respond more deeply than a quick comment, webmentions allow the responder to include a link to their post on your site. You can learn more about that in Trackbacks vs Pingbacks vs Webmentions for WordPress.

Note: Implementing webmentions doesn’t automatically replace trackbacks and pingbacks on your WordPress site. If you want to do that, uncheck the “Allow link notifications from other blogs (pingbacks and trackbacks) on new articles” in the Discussion settings in your WordPress admin.

Implementing Webmentions in WordPress

Installing the webmention plugin is standard. Search for “webmention” in the WordPress Plugin Directory. When you activate the plugin, webmentions will be enabled for both posts and pages by default. You can turn off webmentions for pages in the settings. More on that shortly.

From this point on, if you or another site using webmentions links to a post, the link will appear in the comments section of that post.

You’ll find the webmention settings in the Settings > Discussion area in WordPress. There are four of these:

  • Disable self-pings on the same URL (on by default): If you link to a bookmark on the same post or page, the webmention won’t appear when this box is checked.
  • Disable self-pings on the same Domain (off by default): Linking to other related posts on a site can enhance a post’s comments section, as readers can see what else you’ve got about this topic. Check this box if you think such mentions just clutter up the comments.
  • Enable Webmention Support for Pages (on by default): This allows other sites to mention a page on your site, to provide additional information about the page’s topic, or perhaps a disagreement. Uncheck this box if you don’t want that type of interaction.
  • Show a Webmention form at the comment section, to enable manual pings (on by default): It’s early days for this web standard. Not every web platform automatically supports webmentions. Turning this on allows any commenter to point to their site.

Adding a WordPress Page for Generic Webmentions of Your Site

If someone wants to just generally recommend your site, they can use webmention to point to your home page. You might want to display those posts to enhance your social authority. Since the WordPress home page does not typically display the text of comments, the plugin by default won’t display them.

The simple solution is to create a new page, called “Webmentions,” “Recommendations,” or whatever. Once you’ve created the page, go to the webmention settings and choose the page from the “Set a page for mentions of the homepage to be sent to” menu.

Why Do I Want People to Annotate My Posts?

The World Wide Web was originally conceived as a research tool, where scientists and other academics could collaborate on documents from anywhere in the world. The first web browser had editing tools built in to promote that collaboration.

The W3C Web Annotation standard seeks to bring back that spirit and help the web become both a research and collaboration powerhouse.

For an excellent existing example of web annotation, have a look at Infinite Ulysses. You’ll read the annotated (and public domain) text of James Joyce’s notoriously difficult novel, Ulysses. The annotations come from scholars and students of the novel.

As a WordPress admin, you can implement annotations today through plugins.

Allowing Annotations on Your WordPress Site

Prior to the adoption of the web standard, there were several methods of annotating the web. The best known, Hypothesis and Genius, have plugins for WordPress sites. You can use either one to permit your users to highlight text and add comments to your posts without them having their respective browser extensions.

You can install either by searching for “annotation” in the WordPress Plugin Directory.


With Hypothesis installed and activated, go to Settings > Hypothesis. You’ll see this dialog:

Hypothesis plugin settings

Under Content Settings, check the appropriate boxes to allow Hypothesis annotations on the homepage, blog page, posts, or pages. You can also fine-tune the permissions by choosing specific post and page IDs to allow (or disallow).

After saving your settings, users will now see some curious icons on the right side of any area you have enabled.

The top arrow displays a complete sidebar, partially to orient the user to annotations, along with any existing annotations on the entire post. To highlight something on the post, just select the text to highlight; when you stop selecting, a brief menu appears where you can select Highlight or Annotate. The Annotate option gives you space to comment on the selected item. By default, the annotation is private (Shared with “only me.”). If you have an account with Hypothesis, and are logged in to it, you can share the annotation publicly.

The second “eye” icon is a toggle switch for the user to make other highlights visible or not. The third “document” icon displays all public annotations on the page as a whole.


For users, Genius annotations work pretty much the same as Hypothesis. Select text and Genius pops up an Annotate button. If you already have a Genius account, you can add text and images to your note. Save and you’re done! Genius offers a guide to good annotations.

Once a user posts an annotation, other users can share the annotation through Facebook and Twitter, or link it to another site. There’s also a reddit-style upvote/downvote system in place.

The Genius plugin offers much more limited functionality for site admins than Hypothesis. It’s best (perhaps only) feature is that you turn on Genius Annotations in the post and page editor. This will please those who want to test annotations on a few posts, but you cannot enable Genius Annotations through the All Posts admin page.

Most annoying is that it is up to the admin (or writer) to tell the reader that they can use annotations on a given post. If you use this plugin, I recommend a sticky post on the homepage, and/or a sidebar item to explain how annotations work.

Fighting Trolls and Other Nasties

Let’s face it. Comments aren’t always nice. Some folks seem to find energy dissing other people and their work, especially using the relative anonymity that the internet often affords.

The ability to post private annotations on someone else’s website is appropriately scary for folks who have been trolled and doxed and otherwise harassed and threatened online.

The first line of defense for webmentions is the standard WordPress comments settings. Make sure that moderation is enforced for new commenters (Comment author must have a previously approved comment). You can then review a comment or webmention before it appears on your site.

You can also use the “Comment Blacklist” to ban trolls altogether. Consider adding this blacklist file or just installing WPMU DEV’s Defender plugin. Check out 8 Must-Do Steps for Securing and Hardening Your WordPress Website to learn more about securing your site.

It’s a little more problematic on the Annotation side of this ledger. See this exchange between activist Audrey Watters and writer/developer Jon Udell (appropriately on each other’s websites).


Tremendous opportunities exist for expanding human knowledge and civil conversation online through the webmention and web annotation standards. Your site can help by adopting these practices and engaging with your readers through these technologies.

Michael McCallister
Do you think Webmentions and Annotations are useful technologies? What would you need to see before you implement them on your site? What experiences have you had with conversation gone awry? Let us know in the (traditional) Comments!

3 Responses

  • New Recruit

    Michael, good job bringing some attention to these two new specs!

    After having used Webmentions on my site for 2+ years, I think you (and the Trackbacks vs Pingbacks vs Webmentions for WordPress article) are heavily underselling their true value. Yes, in some sense they’re vaguely similar to pingbacks and trackbacks, but Webmentions have evolved them almost to the point that they’re now a different and far more useful beast.

    I prefer to think of Webmentions as universal @mentions in a similar way to how Twitter, Facebook, Google+, Instagram, Medium and others have implemented their @mentions. The difference is that they work across website boundaries and prevent siloed conversations. Someone could use, for example, their Drupal site (with Webmentions enabled) and write (and also thereby own) their own comment while still allowing their comment to appear on the target/receiving website.

    The nice part is that Webmentions go far beyond simple replies/comments. Webmentions can be used along with simple Microformats2 mark up to send other interactions from one site to another across the web. I can post likes, bookmarks, reads, watches, and even listens to my site and send those intents to the sites that I’m using them for. To a great extent, this allows you to use your own website just as you would any other social media silo (like Facebook or Twitter); the difference is that you’re no longer restrained to work within just one platform!

    Another powerful piece that you’re missing is pulling in comments and interactions from some of the social services using Brid.gy. Brid.gy bootstraps the APIs of Facebook, Twitter, Instagram, Google+, and Flicker so that they send webmentions. Thus, I can syndicate a post from my WordPress site to Twitter or Facebook and people commenting in those places will be automatically sending their commentary to my original post. This way I don’t really need to use Facebook natively to interact anymore. The added bonus is that if these social sites get shut down or disappear, I’ve got a copy of the full conversation from other places across the web archived in one central location on my personal site!

    To add some additional perspective to the value of Webmentions and what they can enable, imagine for a moment if both Facebook and Twitter supported Webmentions. If this were the case, then one could use their Facebook account to comment on a Tweet and similarly one could use their Twitter account to like a Facebook post or even retweet it! Webmentions literally break down the walls that are separating sites on the web.

    For the full value of the W3C Webmention spec within WordPress, in addition to the Webmention plugin, I’d also highly recommend Semantic Linkbacks (to make comments and mentions look better on your WordPress site), Syndication Links, and configure Brid.gy. A lot of the basics are documented on the Indieweb wiki.

    If it helps to make the entire story clearer and you’d like to try it out, here’s the link to my original reply to the article on my own site. I’ve syndicated that reply to Twitter and Facebook. Go to one of the syndicated copies and reply to it there within either Twitter/Facebook. Webmentions enable your replies to my Twitter/Facebook copies to come back to my original post as comments! And best of all these comments should look as if they were made directly on my site via the traditional comment box. Incidentally, they’ll also look like they should and absolutely nothing like the atrociousness of the old dinosaurs trackbacks and pingbacks.

    The original of this response with links was posted to

Comments are closed.