DivPagesプラグイン(MT7用β1)

Perl版ダイナミックパブリッシングプラグインなどと組み合わせてページ分割を行うプラグインとして、これまで「DivPages」を出していました。
このDivPagesプラグインのMovable Type 7対応版を公開します。
先日公開したMovable Type 7対応のPerl版ダイナミックパブリッシングプラグインと組み合わせれば、コンテンツタイプ系のページもページ分割することができます。

1.インストール

プラグインのZipファイルは以下からダウンロードします。

DivPages_2_00b2.zip

プラグインのZipファイルを解凍すると、「plugins」のフォルダができます。
このフォルダを、Movable Typeのインストール先ディレクトリにアップロードします。

2.記事関係のテンプレートのページ分割

記事を出力する場合のページ分割の方法は、従来のプラグインと同じです。
以下の各ページをご参照ください。

3.コンテンツタイプ関係のテンプレートのページ分割

コンテンツタイプ関係のテンプレートをページ分割する場合は、以下の手順を取ります。

3-1.Perl版ダイナミックパブリッシングを使う

まず、Perl版ダイナミックパブリッシングをインストールして、ページ分割対象のテンプレートを、ダイナミックパブリッシングするように設定します。

3-2.インデックステンプレートの場合

インデックステンプレートでは、コンテンツデータ一覧を出力する部分を、以下のように書きます。
「コンテンツタイプ名」には、出力するコンテンツタイプのユニークID/ID/名前のいずれかを指定します。
また、「1ページあたりの出力数」には、1ページあたりのコンテンツデータの出力数を指定します。

<mt:DivPagesContentsInit content_type="コンテンツタイプ名" per_page="1ページあたりの出力数">
<mt:ContentsDivPages content_type="コンテンツタイプ名">
  コンテンツデータを出力するテンプレートタグやHTML
</mt:ContentsDivPages>

この後に、3-4.に従って、分割後の個々のページへのリンクを出力する部分を入れます。

3-3.アーカイブテンプレートの場合

アーカイブテンプレートでは、コンテンツデータ一覧を出力する部分を以下のように書きます。
MTDivPagesContentsInitタグにはcontent_typeモディファイアを指定しません。

<mt:DivPagesContentsInit per_page="1ページあたりの出力数">
<mt:ContentsDivPages content_type="コンテンツタイプ名">
  コンテンツデータを出力するテンプレートタグやHTML
</mt:ContentsDivPages>

3-4.分割後の個々のページへのリンクを出力

次に、MTContentDivPagesタグのブロックの後に、分割後の個々のページへのリンクを出力する部分を入れます。
この部分の書き方は、記事のページ分割の場合と同じです。
例えば、以下のようにタグを組むと、各ページへのリンクをul/liのリストで出力することができます。

<mt:DivPagesIfMulti>
  <div class="pager">
    <ul>
      <mt:DivPagesLoop>
        <mt:DivPagesIfCurPage>
          <li><span><$mt:DivPagesNumber$></span></li>
        <mt:Else>
          <li><a href="<$mt:DivPagesLink$>"><$mt:DivPagesNumber$></a></li>
        </mt:DivPagesIfCurPage>
      </mt:DivPagesLoop>
    </ul>
  </div>
</mt:DivPagesIfMulti>

なお、テンプレートタグの詳細は、「ページ分割プラグイン(Perl版ダイナミック・パブリッシング専用)・その2」のページをご参照ください。