たまにはまじめなポスト。

movabletypeをcms的に使う際、一覧画面にエントリーが多くなることがあります。

でも動的なサイトにはしたくない。そんなときPageButeプラグインが便利です。

(動的ページにすると、mtifとかがなんかうまく動かなかったりするので、静的にしたい。俺だけか・・)

ページ数があまりに多くなりすぎると問題ですが、500とか1000とかいかなければ問題ないと思います。

で、覚え書き。

まずコンテンツ部分はこんな。

<MTPageContents count=”10″>
<MTEntries lastn=”100″>

<MTIf name=”__odd__”>
<div class=”voicelist_left clearfix”>
<$MTInclude module=”ブログ概要”$>
<div class=”bottom”><img src=”/img/second/back_voicelist_bottom.jpg” /></div>
</div>
</MTIf>

<MTIf name=”__even__”>
<div class=”voicelist_right clearfix”>
<$MTInclude module=”ブログ概要”$>
<div class=”bottom”><img src=”/img/second/back_voicelist_bottom.jpg” /></div>
</div>
<br style=”clear:both;” />
</MTIf>

<$MTPageSeparator$>
</MTEntries>
</MTPageContents>
<MTPageContents count=”10″>は10件ごとページ分割してねと言う意味。
<MTEntries lastn=”100″>はデフォルトだと一覧は10件しか表示しないので、なんも指定しないとページがあってもカウントされないので。
<$MTPageSeparator$>
</MTEntries>
</MTPageContents>
もうこれはお約束でワンセット。こまいかいことはわからんでもいい。そんなかんじ。
今回は、左右で異なるスタイルシートをあてたかったのでif分で分岐してます。
<MTIf name=”__odd__”>は奇数のエントリー
<MTIf name=”__even__”>は偶数のエントリーで処理されます。

次にナビゲーション部分はこんなかんじ。
<MTSetVarBlock name=”pagecount”><$MTBlogEntryCount$></MTSetVarBlock>
<MTIf name=”pagecount” gt=”10″>
<div class=”sub_navi”>
<MTIfPageBefore>
<p class=”btn_back”><$MTPageBefore delim=”<img src=”/img/share/btn_back.png” class=”png” />”$></p>
</MTIfPageBefore>
<MTIfPageNext>
<p class=”btn_next”><$MTPageNext delim=”<img src=”/img/share/btn_next.png” class=”png” />”$></p>
</MTIfPageNext>
</div>
</MTIf>
delimのところは、書き出したいボタン画像をまるっといれこみました。
<MTSetVarBlock name=”pagecount”><$MTBlogEntryCount$></MTSetVarBlock>
<MTIf name=”pagecount” gt=”10″>
上記はブログのエントリー数をカウントして、11件に満たない場合は、ナビゲーションは表示しないようにしました。

配布元サイトだとmtifと組み合わせても動かないと書いてあったけど問題なく動作してるみたいです。

以上おしまい。