posted: 2019/03/02
NetlifyCMSのディレクトリを無理やり年別に分ける
NetlifyCMSのディレクトリがどうにも太るので困ったなーと思っていたが、考えてみればNetlifyCMSのcollectionでゴリッと年別に分ければいいのでは?と思って実行した。
肝になるのは
config.yml
とnetlify.toml
だ。config.ymlの修正
config.ymlの方は
この記法はymlのパーサによっては使えない場合もあるのでいけるかな?と心配だったが大丈夫だった。
blog: &blog
という感じでブログコレクションの情報を共通化して使えるようにした。あとは年単位で利用するところで<<: *blog
という具合で使う。この記法はymlのパーサによっては使えない場合もあるのでいけるかな?と心配だったが大丈夫だった。
netlify.tomlの修正
そのままだとリンクが切れるのでリダイレクトをする必要がある。そこで
netlify.toml
だ。下記のような感じで愚直にリダイレクト処理を書いた。
[[redirects]]
from = "/blog/20180*"
to = "/blog/2018/20180:splat"
status = 301
force = true
*
で書いた部分が:splat
として取れるので非常に便利。Gatsbyでリダイレクトする方法もあったが、netlifyの方が圧倒的に便利だと感じる(片一方netlify依存度が上がる・・)