jekyll カテゴリをURLは英語のままに日本語化する方法
jekyllのカテゴリは不便なことにカテゴリ名がそのままURLになってしまう。
WordPressのようにURLとしてのカテゴリ名と表示名としてのカテゴリ名を分けることができない。
故に日本語でカテゴリを名づけたい時に困ったことになる。
Capistranoでデプロイを自動化しているのだが、手動でアップの時はいいのだがCapistranoを使ってSSHでアップしようとすると日本語のカテゴリが入ってるとうまく作動してくれない。
ということで、やはり日本語のカテゴリを使いたい場合でもURLは英語のままのほうが無難ということになる。
そこで根本的な解決ではないが以下のような方法を考えた。
フィルタで表示だけ日本語化してしまう対策。
# カテゴリを日本語にする module CustomFilter def toja(input) patternes = { "test" => "テスト", "dogs" => "犬のこと", "money" => "お金のこと", "cats" => "猫たち" } if patternes[input] != nil patternes[input] else input end end end Liquid::Template.register_filter(CustomFilter)
このようなファイルを作り適当な名前.rb
で_plugins
ディレクトリ以下に配置する。
そしてVIEW側で
<h2>{{page.category | toja}}</h2>
のようにすれば無事、URLは英語のままにカテゴリ名を日本語化することに成功した。
patternes
の対応表を増やして自分好みにアレンジしてくだされい。