Jekyll で作られたブログの記事を JSON に変換する
なにこれ
少し前からブログを Jamstack なものに変えたいと考えていたんだけど、このブログは Jekyll で出来ていて、基本的に記事は Markdown のファイルベース。これでは記事はインポートとか取り回しが悪いので JSON に変換するスクリプトを書いてみた。
require 'jekyll'
site = Jekyll::Site.new(Jekyll.configuration)
articles = Dir.glob('./_posts/*').map {|post|
document = Jekyll::Document.new(post, site: site, collection: Jekyll::Collection.new(site, 'post'))
document.read
{
title: document.data['title'],
slug: document.data['slug'],
body: document.content,
created_at: document.date,
updated_at: document.date
}
}
File.open('articles.json', 'w') do |f|
f.write JSON.dump(articles)
end
最後に
ひとまず記事を変換できるようにはなったので次はどこで記事を管理するか考える