「まだ本がある」というテーマでは、カテゴリを 1 冊の本として扱い、カテゴリ内の記事がその本の内容を形成します。
この場合、単純にサイト全体の記事を前後の記事として呼び出すことはできません。
したがって、Hexo 基于分类输出文章 - 折影轻梦 (nexmoe.com) を参考に、カテゴリに基づいて前後の記事を出力する方法を作成しました。
以下にコードを貼り付けます。コメントを見れば理解できるはずです。
<nav class="post-nav">
<% site.categories.map(function(category){ %>
<% page.categories.map(function(page_category){ %>
<% if(page_category.name == category.name){ %> <!-- 現在のカテゴリと同じ名前のカテゴリを見つける -->
<% let i = 0;%>
<% category.posts.sort('-date').map(function(post){ %>
<% i++; %>
<% if(post.title == page.title){ %> <!-- 現在の記事のインデックスを見つける -->
<% let ix = 0;%>
<% category.posts.sort('-date').map(function(post){ %>
<% ix++; %>
<% if(ix == i + 1 && post.title){ %> <!-- 前の記事 -->
<div class="old">
<span>前の章</span>
<a href="<%- url_for(post.path) %>"> <%= post.title %></a>
</div>
<% } %>
<% if(ix == i - 1 && post.title){ %> <!-- 次の記事 -->
<div class="new">
<span>次の章</span>
<a href="<%- url_for(post.path) %>"> <%= post.title %></a>
</div>
<% } %>
<% }) %>
<% } %>
<% }) %>
<% } %>
<% })%>
<% }) %>
</nav>