pelican(python3)で日本語のカテゴリやタグごとのページのurlを変更する方法

  • 動作環境
    • Python 3.6.1
    • pelican 3.7.1

状況

pelicanでタグ毎にページを表示するurlはtag/(タグ名).htmlであるが、日本語のタグを付けたときにはurlの(タグ名)の部分がよく分からない文字列に自動変換される。 正確にはアルファベットと数字以外の文字列を使った場合であり、これはカテゴリでも同様である。

例えば、日記というタグが付けられている記事一覧のurlはtag/ri-ji.htmlと変換される。

対処

これを直すためには、公式ドキュメントによると、SLUG_SUBSTITUTIONSAUTHOR_SUBSTITUTIONSCATEGORY_SUBSTITUTIONSTAG_SUBSTITUTIONSなどの設定をpelicanconf.pyに追加すればよく、以下の例のように置き換え元と置き換え先の文字列の組を記述すれば良い。

TAG_SUBSTITUTIONS = (('C++', 'cpp'))

この場合、C++というタグが付けられている記事一覧は、tag/cpp.htmlとなる。

しかし日本語タグの場合 …

more ...