posted: 2018/04/04

netlifyCMSでslugを日本語向けにする

netlify-cmsでのファイル名は、原則下記のような感じで、タイトルなどから利用されるslugになる
collections:
  - name: blog
    slug: '{{year}}-{{month}}-{{day}}-{{slug}}'
もう少し詳細を追うと、slugは、titleまたはpathという属性を利用される。(参照箇所)
この時の問題として、下記二点があある
  • slugに日本語入れるとURLや生成されるmarkdownファイル的に微妙
  • 年月日をベースなので、1日に複数記事書けない
  • pathをtitleと別に用意しても良いが、少々煩雑
このような問題への解決として、Slug Typeの設定が用意されている
デフォルトではunicodeだが、これをasciiに変えてやると、英数字のみが抽出されたslugになる
slug:
  encoding: "ascii"
clean_accents: trueというオプションもあり、これを使うと分音符(ěščřžýみたいなの)を普通の文字にしてくれるが、日本語だと使う事はなさそう。(ただつけといて損があるものでもない)
Edit on Github