コレクション内の前/次のページに移動する左右矢印リンクを作成しようとしています。これは標準的なコレクションのために実装するのが簡単です:並べ替えられたJekyllコレクションをページ付けする方法は?
{% if page.previous %}
<a href="{{ page.previous.url }}>Left arrow</a>
{% endif %}
{% if page.next %}
<a href="{{ page.next.url }}>Right arrow</a>
{% endif %}
私が持っている問題は、ファイルの順序でコレクションを循環することです。フロントマター変数(position
)を使用してページの特定の順序を指定する必要があります。
私はこれまでに幅広く検索しましたが、並べ替えと関連するすべての情報はページネーションではなくサイトのナビゲーションに適用されるようです。ソートされたコレクションを変数に代入した後に、液体のforループを使用する必要があるようです。私はこのループ内でpage.previous
とpage.next
の変数を動作させるのに苦労しています。
私は分別収集及び出力のみ文書のURLが現在のページに一致するナビゲーション矢印でドキュメントをループにしようとしましたが、それは動作していないよう:
{% assign sorted_collection site.collection | sort: "position" %}
{% for document in sorted_collection %}
{% if document.url == page.url %}
{% if document.previous %}
<a href="{{ document.previous.url }}>Left arrow</a>
{% endif %}
{% if document.next %}
<a href="{{ document.next.url }}>Right arrow</a>
{% endif %}
{% endif %}
{% endfor %}
アムI私の液体シンタックスで何かを見逃しているのですか、ここで私の論理を使って間違ったルートを完全に辿っていますか
私の現在のハックの解決策は、ドキュメントのファイル名の先頭に数字を付けることです。デフォルトでは、正しい順序になっています。しかし、私はサイトを手渡しても機能しません。なぜなら、非技術的なコンテンツ制作者がファイル名を整理しておくことができないからです。