« Movable Type管理画面の「壊れにくい」カスタマイズのために。 | メイン | CSS Nite shuffle - Web衰退時代とか。 »

MT Pagerプラグイン

MT4.2のダイナミックパブリッシングでのページ分割互換、静的ページ分割プラグイン。

MT4.2から「ダイナミックパブリッシングでのページ分割」が可能ということで、以前書いたPagerプラグインのテンプレートタグを下記のページのテンプレートタグ互換に改造しました。

テンプレートタグはエイリアスとしているので以前のページに書いてある書き方でもそのまま動きます。

但し、一点 MTEntriesについては「offset="0"」と書くようにしていましたが、これもダイナミックとあわせて「offset="auto"」と書くようにしました。

上記ページでも「この機能は、詳細なテストを行っていない実験的な機能ですので、サポート対象外です。」とあって、このプラグインも同じく詳細なテストは行えていません(MT4.1でしかテストしてないし)。不具合とかうまく動いたとかフィードバックいただければ嬉しく思います。

テンプレートの編集

次のテンプレートをコピーしてください。

<div class="content-nav">
  <MTIfPreviousResults><a href="<MTPreviousLink>" rel="prev">
           &laquo; Previous</a>&nbsp;&nbsp;</MTIfPreviousResults>
  <MTPagerBlock>
    <MTIfCurrentPage><MTVar name="__value__"><MTElse><a href="<MTPagerLink>"><MTVar name="__value__"></a></MTIfCurrentPage>
    <mt:unless name="__last__">&nbsp;</mt:unless>
  </MTPagerBlock>
 <MTIfMoreResults>&nbsp;&nbsp;<a href="<MTNextLink>" rel="next">
         Next &raquo;</a>
 </MTIfMoreResults>
</div>

ここではカテゴリ別ブログ記事リストテンプレートを編集します。既に、カテゴリ別ブログ記事リストテンプレートには class の値が content-nav の div 要素で囲まれたブロックがあるので、その部分をコピーしたテンプレートと置き換えます。

次にカテゴリ別ブログ記事リストテンプレートの中から MTEntries ブロックタグを探します。MTEntries ブロックタグに、値が auto の offset モディファイアを追加するか、既に offset モディファイアがあったら値を auto に変更します。また limit モディファイアで、1ページに表示する件数 (例えば 10) を設定します。

加えて対象とするテンプレートの以下のチェックボックスをオンにしてください。

テンプレート編集画面のチェックボックス

Download:

カテゴリー: MovableType, MovableTypeプラグイン

トラックバック

このエントリーのTBPingURL:
http://junnama.alfasado.net/mt/RRrt4444.mt/2411/mt42.html

コメント (5)

Mwave:

お世話になります。
静的ページの分割をしようと思い利用させていただいたのですが、
MT4.2で"このアーカイブを分割する"にチェックを入れるとカテゴリアーカイブページの再構築ができなくなります。
よってページ分割を利用できないのですが、何か注意する点がありますでしょうか。
よろしくお願いいたします。

Junnama:

すいません、こっちのエントリーに4.2対応版上げてます。

http://junnama.alfasado.net/online/2008/08/movable_type_developer_confere.html

テンプレートタグがちょっと変わっていますので、スライドのPDFを見てください。

Mwave:

Junnama様
レスありがとうございます。
ご教示いただい新しい方で試してみましたが、やはりうまくいきません。
50件の記事あった場合にindex_2.htmlにだけ10件の記事が表示され、
他のページは0件の表示になります。
他に注意しなければいけない点がありますでしょうか。
よろしくお願いいたします。

名無し:

インストール方法をおしえてください。
おねがいします。

Shin:

お世話になります。
上記、MT4.2対応版を利用しています。
Pagerプラグインの動作は問題ないようですが、標準の検索結果テンプレートにて検索結果がページ分割されたときに、ページ番号が表示されません。(MTPagerBlock ブロックタグ内)
mt:CurrentPage、mt:TotalPages、mt:NextLinkなどは表示しております。
このような症状は確認されていませんでしょうか。
よろしくお願いします。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)


トップページ | アーカイブ(このブログの全てのエントリーの一覧)

最近のエントリー

このブログのフィードを取得
[フィードとは]