0

投稿の最後に、他の投稿へのリンクをいくつか (2-4) 追加したいと思います。最初は相関するべきだと思っていましたが、ランダムなものでもうまくいくと思います。

私は Jekyll を使用しており、ブログの下部に書いた他の (関連する) コンテンツをより自動化された方法で参照するためのプラグインまたは簡単な方法を探しています。アイデアはdiv、他のブログ記事のタイトルと抜粋を含む 2 ~ 4 の s を持つことです。タグをチェックするだけで関連性を判断できます。最初はランダムなものでも構いません。

Jekyllでこれを直接行う方法がわかりません(これらのアイテムを手動で追加する場合を除く)。feed.xml を取得して (または必要な情報を含むカスタム JSON ファイルを作成して)、それらのアイテムを表示するだけの JavaScript ソリューションを考えましたが、これを探しているのは私だけではないでしょうか?

このようなものはすでにありませんか?- たぶん、私の見方が間違っていたのかもしれません。

4

1 に答える 1

0

わかりました、私は間違っていました。これらの情報を含む jekyll の変数はsite.related_posts.

ただし、GitHub Pages で使用すると問題が発生するようで、ほとんど役に立たなくなります。多くの人は、時系列順に投稿のリストを取得します。

可能な解決策の概要を示す問題があります: https://github.com/johnotander/pixyll/issues/41

Wenli Zhang は、これについて非常に広範な投稿を書きました。Wenli Zhang の投稿のテンプレートは、GitHub Pages で機能するはずです。

{% 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 %}
于 2015-02-16T07:55:13.513 に答える