Semantic Linkbacks is a WordPress plugin that upgrades the presentation of linkback notifications (like Trackback, Pingback, or Webmention*) from the ugly default pingback presentation of "[…] random text excerpt […]" to a much more meaningful and user-friendly display as comments, reposts, likes, and favorites, detected using microformats2 markup from the source of the linkback.
For explicit in-reply-to interactions, the plugin also changes the WordPress comment type from "
webmention" to "
comment". Otherwise, it creates human readable whole sentences like "Alice liked this article on alice.example.com." with hyperlinks to the source author and permalink.
- Repository: https://github.com/pfefferle/wordpress-semantic-linkbacks
- WordPress plugin directory: https://wordpress.org/plugins/semantic-linkbacks/
Comment Type Indicator
For in-reply-to interactions, the plugin adds a "type" indicator in the comment metadata for the specific type of interaction:
- mention - Defaults to mention if another type cannot be determined, e.g. "Alice mentioned this article on alice.example.com."
This "type" indicator enables further interaction-specific presentation customization, such as showing likes/favorites and/or reposts as a facepile.
No configurable options at this time.
If you want to write your own parser for additional markup(such RDFa or Schema.org) you have to hook up the `semantic_linkbacks_commentdata` filter and update the array-fields.
The comment-array is a WordPress Comment with some extra-fields.
All fields beginning with _ like:
- `$commentdata['_canonical']` for the canonical source url
- `$commentdata['_type']` for the comment type. The plugin currently supports the following types: `mention`(default), `reply`, `repost`, `lik e`, `favorite`, 'tag', rsvp:yes, rsvp:no, rsvp:maybe, rsvp:invited, rsvp:tracking.
- `$commentdata['_avatar']` for the author avatar
...are saved as comment metadata.
Semantic Linkbacks has two functions which are wrappers for
get_comments you can use in your theme. Both
$post_id passed to the function.
<?php // Get the global `$wp_query` object. $id = get_the_ID(); // Get the semantic_linkbacks_type 'like'. $comments = get_linkbacks( 'like', $id ); ?>
Then you can just loop through
$comments however you want to markup your facepile.
A full comment template separating out likes and reposts from replies example.
*WordPress supports Pingback and Trackback by default; for Webmention support, you must install the separate Webmention Plugin which is very nicely complementary to the Semantic Linkbacks plugin.