折影轻梦
文章60
标签46
分类8
Hexo 分类中上一篇、下一篇文章

Hexo 分类中上一篇、下一篇文章

在“还有书籍”主题中,我把分类当作一本书,分类中的文章则形成一本书的内容。

这时,不能简单的调用全站的文章来当作上一篇、下一篇的内容。

所以结合 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){ %> <!-- 在找到当前文章所在的 index -->
<% 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>

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=28l9ouqqg7vo4

本文作者:折影轻梦
本文链接:https://nexmoe.com/16GQKA4.html
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可
×