Jekyllのブログで関連記事を表示する
Jekyllで関連記事を表示する方法はおおきく分けると、 Jekyllの変数site.related_posts
を利用する方法と、 categoryやtag付けから関連を導き出す方法の2つになるようです。
Jekyllの変数を利用する
Jekyllの翻訳ページで site.related_posts
変数は下記のように説明されています。
処理を行っているページがポストの場合、最大10件の関連するポストのリストが含まれます。デフォルトでは、最新の10件のポストです。計算結果が遅いですが高品質のためには、jekyllコマンド実行時に–lsi (latent semantic indexing)オプションを追加します。GitHub Pagesではサイト生成時のlsiオプションをサポートしていません。
なので、5件の関連ポストを表示するには下のようにすれば良いわけですが、
<ul>
{% for post in site.related_posts limit:5 %}
<li><a href="{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}
</ul>
jekyllのsite.related_postsはデフォルトで最新の記事を返す件 (2016/11/14) で言及されているように--lsi
オプションの使用が言わば必須のようです。
--lsi
オプション使用時の計算結果が遅い件については、 Jekyllの関連記事表示とGSLを使った処理時間の短縮 (2014/10/3) にあるようにGSLを使用することで改善されるようですが、ここXreaでは利用できませんでした。
categoryやtag付けを利用する
登録しているcategoryやtag付けから関連を導き出しています。
Liquidで完結しているため、--lsi
オプションがサポートされていない 環境でも利用可能です。
下記にて使用例が確認できます。
- Jekyll and liquid - Show related posts by amount of equal tags >= 2 (2014/8/17)
- Jekyllで関連ポストを表示する (2011/4/21)
- Making Jekyll related posts really related! (2016/7/21)
Tag cloud
android (2), bash (1), bitbucket (2), chromebook (2), cifs (1), css (1), docker (1), git (1), gitlab (1), info (1), javascript (3), jekyll (13), markdown (1), nfs (1), nodejs (2), php (2), plugins (5), powerline (1), ruby (1), ssh (1), themes (1), vim (1), windows (1), wordpress (1), wsl (1), xrea (7)