_posts/
目录文章过多
不知不觉,博客已经有了大约 45 篇文章,生成的文章链接以 :year:month/
(如 202404/
) 开头,但 Markdown 源文件都放在了 _posts/
目录下,不便于管理。因此,我想在_posts/
目录里按年份创建子文件夹。
移动文章到年份文件夹
看了 参考资料,博主给出了一个实用命令 grep -r "date: '2015-" *.md -l | xargs mv -v -t 2015/
,用于批量移动文件,我借助 Poe Assistant 写出了对应的 PowerShell 脚本。
1 |
# 搜索匹配的文件 |
设置链接前缀
Hexo 会自动给文章链接带上子文件夹的名称,所以在 _config.yml
设置文章永久链接为仅 :title/
,就可以满足需求。如果不想要文件夹名,设置文章永久链接为 :name/
即可。
旧链接重定向
通过主题提供的自定义侧栏 Widget 能力,我为 404 页面引入了自定义脚本,用于重定向旧链接。
1 |
site_tree: |
1 |
notice_404: |
用正则表达式匹配、替换,就完成了重定向。
1 |
let newPath = location.pathname.match(/^(\/\d{4})\d{2}(\/.*)/) |
Over.