我正在嘗試創建導航到集合中上一頁/下一頁的左/右箭頭鏈接。這是很容易實現的標準收取:如何分頁排序的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 %}
我的問題是,這只是通過文件的順序收集週期。我需要使用frontmatter變量(position
)爲頁面指定特定的順序。
我已經搜索了很多,但所有的信息與排序似乎適用於網站導航,而不是分頁。看起來我需要在將已排序的集合分配給一個變量後使用循環液體。我正努力使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 %}
上午我在我的液體語法中缺少一些東西,或者我在這裏完全按照我的邏輯走錯了路線?
我目前的黑客解決方案是用數字前綴文檔文件名,以確保默認情況下它們的順序是正確的。然而,當我將網站交給網站時,這是行不通的,因爲我無法相信非技術性內容創作者保持文件名的順序。