PLAYNOTE MTでカテゴリーをソート&アーカイブファイル名を直感的に

2005年07月17日

MTでカテゴリーをソート&アーカイブファイル名を直感的に

[ネット・PC] 2005/07/17 02:13

Movable Type のカテゴリーをソートする際、カテゴリーのタイトルの頭に数字をつける…ってのはセオリーだけど、これだとカテゴリーアーカイブのファイル名が cat_02.html とか .../02/index.html となってしまい見栄えが悪い&直感的でない。pmHeadChangerプラグインを使って、ソート&日本語表示しつつ、カテゴリーアーカイブのファイル名に数字を出さず、 book.htmlaffiliate.html など直感的な名前をつける方法をやっと実現したのでメモ。

まずpmHeadChangerプラグインを入手し pm_headchanger_utf8.plmt/plugins/ にアップロード。

カテゴリーの設定画面での設定。「カテゴリーのタイトル」には 01) 書評 とか 02) アフィリエイト とか、「半角数字 + ) (半角かっこ) + 日本語カテゴリー名」を入力。「カテゴリーの説明」には、カテゴリアーカイブのファイル名にしたい文字列を半角英数字で入力。ここでは bookaffiliate と入力したことにして話を進める。

次に「ウェブログの設定→アーカイブの設定」を開き、「カテゴリー別」んとこに <$MTCategoryDescription$>.html と入力。これでカテゴリーアーカイブのファイル名が book.html とか affiliate.html とかになる。見た目わかりやすいし、カテゴリの設定をいくらいじっても「カテゴリーの設定」のところを変えなければ同じファイル名をキープできる。

あとは簡単。サイドメニューにはこうとでも書く。

<MTCategories>
<li><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel pmhc=""$></a></li>
</MTCategories>

これで、

<ul>
<li><a href="~/book.html">書評</a></li>
<li><a href="~/affiliate.html">アフィリエイト</a></li>
</ul>

と表示される。順番も意図通りだし、ファイル名が直感的でわかりやすい。

もちろん記事の編集画面でカテゴリーを選ぶときも順番通り。しかも日本語名で「02) 書評」とかリスト表示されるからわかりやすい。

今までカテゴリー周りの設定は随分いじったけど、俺的にはこれで決定版かな。ファイル名の設定のために「カテゴリーの説明」を潰しちゃってるのが唯一の弱点だけど。

追記

pmHeadChangerプラグインは「半角数字 と ) の組み合わせに反応」するけど、俺は個人的に 02) 書評 より 02-書評 の方が見やすいのでちょちょっと書き換えた。pm_headchanger_utf8.plをエディタで開き、

  if($arg){
    $str =~ s/^\d+\)/$arg/;
  }else{
    $str =~ s/^\d+\)//;
  }

  if($arg){
    $str =~ s/^\d+(\)|\-)/$arg/;
  }else{
    $str =~ s/^\d+(\)|\-)//;
  }

に変更。これで 02) 書評 でも 02-書評 でもpmHeadChangerプラグインが使えるようになる。