Webmentionを表示するようにした
雑記の個別ページに、Webmentionを表示するようにした。以前の記事の分はデータを取得してないので、最近の記事からだけど。
WebmentionについてはIndieWebの記事が詳しい。2017年にW3Cの勧告(非公式の和訳もある)になっている技術で、任意のURLに対して誰が(どのwebサイトが)「いいね」したか、コメントしたかなどを通知するためのプロトコル。ブログでトラックバックという機能があった(今でもあるがスパムが多くて廃れている)けれど、似たような感じのものだ。
その情報をサイトに表示すれば、独自のコメントフォームなどを用意しなくても、他のサイト(Twitterとか)で得た反応を表示することができて便利というわけ。そのためには自分で受信するプログラム(エントリーポイント)を用意しなければならないのだけど、いろいろライブラリが出ていたり(WordPressやKnownとの兼ね合いでPHPの実装が多い)、オープンソースで提供されているwebサービスがあったりもする。
今回は、エントリーポイントとしてWebmention.ioを、Twitterからのデータ取得にはBridgyを利用させてもらった(TwitterはWebmentionに対応していないので、代わりに送ってくれるサービスが必要)。
Bridgyが定期的にTwitterのデータを取得してくれるので、それをWebmention.io側で受信できるようにする(利用登録して、自分のサイトにlink要素を追加すればOK)とデータがたまるようになる。API経由でJavaScriptを用いて表示してもよいし、web hookが用意されているので、それをトリガーにサイトをビルドしたりすればよい。
このサイトでは、web hookで都度データベースに保存するようにしてみた。表示はそれをただ表示しているだけ。WordPressを使っているとしたら、プラグインがあるのでもっと簡単に導入できるはず。
自分の持ち物としてのwebサイトがあって、そこに対するいろいろなSNSでの反応を表示できるのは非常にIndieWeb的だなと思うし、好きな考え方なのでいろいろ試してみたい。