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.

Hypothesis

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.

Genius

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).

Conclusion

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!