我想添加到我的帖子底部很少(2-4)链接到其他帖子。起初,我认为它们应该是相关的,但我想随机的也是有效的。
我正在使用Jekyll,并正在寻找一个插件或一种简单的方式,只引用其他(相关)内容,我已经写在博客底部的一种更自动化的方式。这个想法是有2-4的div和其他博客文章的标题和摘录。关联可以简单地通过检查标签就可以得出结论,随机的标签也可以用于开头。
我不知道如何在Jekyll中直接做到这一点(除了手动添加这些项)。我想到了一个JavaScript解决方案,在这里我可以获得feed.xml (或者创建一个包含必要信息的自定义JSON文件)并只显示这些项,但是我不能是第一个寻找这个的人,或者?
不是已经有这样的东西了吗?-也许我看错了。
发布于 2015-02-16 07:55:13
好的,我看错了,jekyll中包含这些信息的变量是site.related_posts。
但是,在GitHub页面中使用它时,似乎存在一些问题,这使得它几乎毫无用处。许多人只是按时间顺序得到了帖子的列表。
有一个问题总结了可能的解决方案:https://github.com/johnotander/pixyll/issues/41
张文丽为此写了一篇相当广泛的文章。,这个模板来自张文力的帖子,应该适用于GitHub页面:
{% assign hasSimilar = '' %}
{% for post in site.related_posts %}
{% assign postHasSimilar = false %}
{% for tag in post.tags %}
{% for thisTag in page.tags %}
{% if postHasSimilar == false and hasSimilar.size < 6 and post != page and tag == thisTag %}
{% if hasSimilar.size == 0 %}
<h4>Similar Posts</h4>
<ul>
{% endif %}
<li class="relatedPost">
<a href="{{ site.url }}{{ post.url }}">{{ post.title }}
{% if post.series %}
(Series: {{ post.series }})
{% endif %}
</a>
</li>
{% capture hasSimilar %}{{ hasSimilar }}*{% endcapture %}
{% assign postHasSimilar = true %}
{% endif %}
{% endfor %}
{% endfor %}
{% endfor %}
{% if hasSimilar.size > 0 %}
</ul>
{% endif %}https://stackoverflow.com/questions/28532427
复制相似问题