過去の記事の月別のアーカイブリストをサイドバーに表示したかったのでやってみた。

hexo gするときに月別のarchiveは生成されているのでおそらくデフォルトで入っているhexo-generator-archiveが生成してくれているっぽい。

$ hexo g
...
INFO Generated: archives/2016/02/index.html
INFO Generated: archives/2016/02/page/2/index.html
INFO Generated: archives/2016/03/index.html
INFO Generated: archives/2016/04/index.html
INFO Generated: archives/2016/05/index.html
INFO Generated: archives/2016/06/index.html
INFO Generated: archives/2016/07/index.html

hexoのドキュメントによるとlist-archivesというhelperがあるのでコレを使えば簡単に表示できそうだったので追加してみた。

設定

サイドバーに以下を追加。

.widget
.widget-title= __('archive')
!= list_archives({format: "YYYY/MM"})

見た目がおかしすぎるのでcssで調整した。

.archive-list-count {
padding-left: 5px;
}
.archive-list-count:before {
content: "(";
}

.archive-list-count:after {
content: ")";
}

出来上がり。

終わり。