Movable Type サイドバーのアーカイブを年別で区切りたい

ブログを長く続けていると、月別アーカイブへのリンクが増え(リストが長くなり)サイドバーの占有率が高くなります。さらに月別アーカイブへのリンクは増え続け、減る事がないので困りモンです。

と言う事で、

2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12

上のようにアーカイブを年別で区切りたいと思い色々やってみました。

まず、Junkline – MT の過去ログリンク表示を nDiary (ごにょり済み)風に にあるリンクから

  • ArchiveDateHeader Plugin
  • ArchiveYear Plugin
  • ArchiveLoad Plugin

をダウンロードして、plugins フォルダにインストール。それから以下のコードを貼付ける。

<!-- Monthly Archives / -->
<dl>
  <dt>Monthly Archives</dt>
  <MTArchiveList archive_type="Monthly">
    <MTArchiveDateHeader>
      <dd><$MTArchiveDate format="%Y"$> :
        <MTArchiveYear order="ascend">
          <MTArchiveYearIfEntries>
            <MTArchiveLoad>
              <MTDateHeader>
                <a href="<$MTBlogArchiveURL$><$MTArchiveDate format="%Y-%m.html"$>"><$MTArchiveDate format="%m"$></a>
              </MTDateHeader>
            </MTArchiveLoad>
          </MTArchiveYearIfEntries>
        </MTArchiveYear>
      </dd>
    </MTArchiveDateHeader>
  </MTArchiveList>
</dl>
<!-- / Monthly Archives -->

次のコードは、同じ処理をリスト形式にした物

<!-- By Month / -->
<h2>By Month</h2>
<MTArchiveList archive_type="Monthly">
  <MTArchiveDateHeader>
    <h3><$MTArchiveDate format="%Y"$></h3>
      <ul>
        <MTArchiveYear order="descend">
          <MTArchiveYearIfEntries>
            <MTArchiveLoad>
              <MTDateHeader>
                <li><a href="<$MTBlogArchiveURL$><$MTArchiveDate format="%Y-%m.html"$>"><$MTArchiveDate format="%B" language="en"$></a> (<$MTArchiveCount$> posts)</li>
              </MTDateHeader>
            </MTArchiveLoad>
          </MTArchiveYearIfEntries>
        </MTArchiveYear>
      </ul>
  </MTArchiveDateHeader>
</MTArchiveList>
<!-- / By Month -->

※月別アーカイブへのリンクは、アーカイブ・マッピングに合わせて変更してください。

以上です。

コードを書くにあたり、hxxk.jp – Movable Type で年別アーカイブを作ったり、全記事一覧を年ごとに分けたりするテンプレート と言う記事も参考にさせてもらいました。ありがとうございます。

2 COMMENTS

みっく

はじめまして。
Junklineさんのトラバを辿って参りました。
月別アーカイブを年別区切りで表示するカスタマイズを行った際、
貴エントリーを参考にさせていただきました。
どうもありがとうございました。

Bowz

コメントありがとうございます。
お役に立てて幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です