エントリー本文
PageBute プラグインによるページ分割
スカイアークシステムが配布している PageBute プラグインによる、Movable Type 4 のページ分割方法を紹介します。

これまでは主に、Paginate プラグインによるページ分割方法を紹介してきましたが、PageBute プラグインを利用すれば、メインページやブログ記事リスト(月別アーカイブ/カテゴリーアーカイブなど)のページ分割を、PHP 化を行わずに実現することができます。
1.プラグインのダウンロード
下記のリンクからプラグインアーカイブ(2008年11月現在は PageBute3.01.zip)をダウンロードし、任意のフォルダに保存してください。
2.インストール
プラグインアーカイブを解凍し、中にある PageBute.pl を plugins ディレクトリにアップロードしてください。
ブログ管理画面より「システム」→「プラグイン」でプラグイン一覧を表示し、次のように表示されればOKです。

3.テンプレートのカスタマイズ
3.1 メインページ(デフォルトテンプレート)
「メインページ」インデックステンプレートに青色部分を追加します。赤色の数字が1ページに表示する件数です。
...前略...
<div id="content">
<div id="content-inner">
<div id="alpha">
<div id="alpha-inner">
<mt:pageContents count="5">
<mt:Entries>
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<mt:pageSeparator />
</mt:Entries>
</mt:pageContents>
<div class="content-nav">
<mt:ifPageBefore>
<span><$MTPageBefore delim="<"$></span>
</mt:ifPageBefore>
<mt:pageLists />
<mt:ifPageNext>
<span><mt:pageNext delim=">" /></span>
</mt:ifPageNext>
</div>
<div class="content-nav">
<a href="<$mt:Link template="archive_index"$>">アーカイブ</a>
</div>
</div>
</div>
...後略...
3.2 メインページ(配布テンプレート)
「メインページ」インデックステンプレートに青色部分を追加します。赤色の数字が1ページに表示する件数です。
...前略...
<div id="content">
<div class="blog">
<mt:pageContents count="5">
<mt:entries>
<mt:entryTrackbackData />
<mt:include module="ブログ記事の概要" />
<mt:pageSeparator />
</mt:entries>
</mt:pageContents>
<div class="content-nav">
<mt:ifPageBefore>
<span><$MTPageBefore delim="<"$></span>
</mt:ifPageBefore>
<mt:pageLists />
<mt:ifPageNext>
<span><mt:pageNext delim=">" /></span>
</mt:ifPageNext>
</div>
</div>
</div>
...後略...
3.3 アーカイブページ(デフォルトテンプレート:月別アーカイブ)
「月別ブログ記事リスト」アーカイブテンプレートに青色部分を追加します。赤色の数字が1ページに表示する件数です。MTEntries タグの limit="$limit" は削除してください。
...前略...
<div id="content">
<div id="content-inner">
<div id="alpha">
<div id="alpha-inner">
<h1 id="page-title" class="archive-title"><$mt:ArchiveTitle$>アーカイブ</h1>
<mt:Ignore><!-- Limit number of entries to the number set in Blog Entry Settings --></mt:Ignore>
<mt:Unless name="datebased_archive"><$mt:Var name="limit" value="auto"$></mt:Unless>
<mt:pageContents count="5">
<mt:Entries limit="$limit">
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<mt:pageSeparator />
</mt:Entries>
</mt:pageContents>
<div class="content-nav">
<mt:ifPageBefore>
<span><$MTPageBefore delim="<"$></span>
</mt:ifPageBefore>
<mt:pageLists />
<mt:ifPageNext>
<span><mt:pageNext delim=">" /></span>
</mt:ifPageNext>
</div>
<div class="content-nav">
<mt:ArchivePrevious><a href="<$mt:ArchiveLink$>">« <$mt:ArchiveTitle$></a> |</mt:ArchivePrevious>
<a href="<$mt:Link template="main_index"$>">メインページ</a> |
<a href="<$mt:Link template="archive_index"$>">アーカイブ</a>
<mt:ArchiveNext>| <a href="<$mt:ArchiveLink$>"><$mt:ArchiveTitle$> »</a></mt:ArchiveNext>
</div>
</div>
</div>
<$mt:Include module="サイドバー"$>
</div>
</div>
...後略...
3.4 アーカイブページ(デフォルトテンプレート:カテゴリアーカイブ)
「カテゴリ別ブログ記事リスト」アーカイブテンプレートに青色部分を追加します。赤色の数字が1ページに表示する件数です。MTEntries タグの limit="$limit" は削除してください。
...前略...
<div id="content">
<div id="content-inner">
<div id="alpha">
<div id="alpha-inner">
<mt:If name="datebased_archive">
<mt:Ignore><!-- Title for category-monthly entry listings --></mt:Ignore>
<h1 id="page-title" class="archive-title"><$mt:ArchiveTitle$>アーカイブ</h1>
<mt:Else>
<mt:Ignore><!-- Title for category entry listings --></mt:Ignore>
<h1 id="page-title" class="archive-title"><em><$mt:ArchiveTitle$></em>の最近のブログ記事</h1>
</mt:If>
<mt:Ignore><!-- Limit number of entries to the number set in Blog Entry Settings --></mt:Ignore>
<mt:Unless name="datebased_archive"><$mt:Var name="limit" value="auto"$></mt:Unless>
<mt:pageContents count="5">
<mt:Entries limit="$limit">
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<mt:pageSeparator />
</mt:Entries>
</mt:pageContents>
<div class="content-nav">
<mt:ifPageBefore>
<span><$MTPageBefore delim="<"$></span>
</mt:ifPageBefore>
<mt:pageLists />
<mt:ifPageNext>
<span><mt:pageNext delim=">" /></span>
</mt:ifPageNext>
</div>
<div class="content-nav">
<mt:ArchivePrevious><a href="<$mt:ArchiveLink$>">« <$mt:ArchiveTitle$></a> |</mt:ArchivePrevious>
<a href="<$mt:Link template="main_index"$>">メインページ</a> |
<a href="<$mt:Link template="archive_index"$>">アーカイブ</a>
<mt:ArchiveNext>| <a href="<$mt:ArchiveLink$>"><$mt:ArchiveTitle$> »</a></mt:ArchiveNext>
</div>
</div>
</div>
<$mt:Include module="サイドバー"$>
</div>
</div>
...後略...
3.5 アーカイブページ(配布テンプレート:月別アーカイブ/カテゴリアーカイブ)
「ブログ記事リスト」アーカイブテンプレートに青色部分を追加します。赤色の数字が1ページに表示する件数です。MTEntries タグの limit="auto" は削除してください。
...前略...
<div id="content">
<div class="blog">
<div class="content-nav">
<mt:archivePrevious>
<a href="<mt:ArchiveLink />">« <mt:archiveTitle /></a> |
</mt:archivePrevious>
<mt:archiveNext>
| <a href="<mt:ArchiveLink />"><mt:archiveTitle /> »</a>
</mt:archiveNext>
</div>
<mt:if name="datebased_archive">
<mt:pageContents count="5">
<mt:entries>
<mt:entryTrackbackData />
<mt:include module="ブログ記事の概要" />
<mt:pageSeparator />
</mt:entries>
</mt:pageContents>
<mt:else>
<mt:pageContents count="2">
<mt:entries limit="auto">
<mt:entryTrackbackData />
<mt:include module="ブログ記事の概要" />
<mt:pageSeparator />
</mt:entries>
</mt:pageContents>
</mt:if>
<div class="content-nav">
<mt:ifPageBefore>
<span><$MTPageBefore delim="<"$></span>
</mt:ifPageBefore>
<mt:pageLists />
<mt:ifPageNext>
<span><mt:pageNext delim=">" /></span>
</mt:ifPageNext>
</div>
</div>
</div>
...後略...
- Movable Type 4.1 / MTOS における配列とハッシュの利用方法
- Movable Type で再構築エラーになる場合の原因と対処
- ブログ簡単パワーアップ Movable Type スーパーカスタマイズテクニック
- Movable Type(MT)テンプレート
- Movable Type の PHP化(その2:.html のままPHPを有効にする)
- Movable Type で全エントリーを表示する方法
- .htaccess によるリダイレクト
- カテゴリーリストの中に月別カテゴリーリストを表示する
- カテゴリーリストで MTArchiveListHeader と MTArchiveListFooter が正常に動作しない問題
- Excel で同じ名前のファイルを同時に開く2つの方法
≫ ニュースやらアーカイブをいじる from naka-sta駅務日記
どうも、先週はBMメンバーで2日連続ボーリングにいって、2日とも最低スコアが10... [続きを読む]
≫ ページを分割するプラグイン「PageBute」 from k's note
なぜか、このMovableTypeには一般のブログにはついてて当たり前の「次のペ... [続きを読む]
≫ PageBute Movable type用ページ分割プラグインを導入(google sitemap対応) from BSDあれこれ
記事数が少し増えてきたのでMovable type用静的ページをページ分割するプ... [続きを読む]
≫ MTでページ送りナビゲーションをつける from hinoeuma1966
先日、このブログでもHelpを求めたページ送りのナビゲーションの設定。(Mova... [続きを読む]
≫ メインページのページ分割(その1) from 道化師ラッパンのぼやき
メインページにページ分割を表示させようと思う。何記事かに区切って表示させる方法・・・Googleで検索した時に出るアレである。↓ ... [続きを読む]
こんばんは。
Movable Type 4.2 テンプレートセット(フッタ付きリキッドレイアウト対応)でのカスタマイズ方法を教えてください。
宜しくお願いいたします。
>hi-lite&coffeeさん
こんにちは。
ご質問の件ですが、3.2項と3.5項の設定を行ってください。
それではよろしくお願い致します。
こんにちは。
3.2項と3.5項の設定を行いましたが、うまくできないようです。
何がいけないのか分からないので教えていただけませんか?
プラグインはきちんと表示されています。
>hi-lite&coffeeさん
こんにちは。
ご質問の件ですが、「うまくできない」というのは「ページ分割されない」ということでしょうか?
メインページは、ブログ管理画面の「設定」→「ブログ記事」で、ブログ記事数の表示数を変更してみてください。
ブログ記事数の多いカテゴリー(Diaryなど)では分割されているようなので、プラグインは正常に動作していると思います。
それではよろしくお願い致します。
詳しく書かなくて申し訳ありませんでした。
トップページの分割ができないことと、ブログ記事数の表示数を5にしているのに2つまでしか表示されません。
「赤色の数字が1ページに表示する件数です。」と書かれていますが、http://hi-lite.holy.jp/movie/のブログ記事数の多いカテゴリーAmerican Movieでお分かりのようにそれ以上に表示されてしまいます。
どのようにしたら良いのでしょうか?
お忙しいと思いますが宜しくお願い致します。
>hi-lite&coffeeさん
こんばんは。
申し訳ありませんが当方で開発したプラグインではないため、これ以上は不明です。
動作の不具合については下記でご質問いただけますでしょうか。
http://www.skyarc.co.jp/engineerblog/entry/2642.html
それではよろしくお願い致します。
お世話様です。
当該エントリーにてMT4用のカスタマイズが記載されておりますが、「MT3.34(古いですが)」でのカスタマイズ方法をご教授いただければと思っております。
MT4ではエントリーの本文表示に「<$MTEntryBody$>」は使わないのでしょうか?当方MT3.34のデフォルトテンプレートには本文表示に<$MTEntryBody$>が使われているのですが。。
<$MTPageExcerpt$>などで代用しているのでしょうか?
(だとしたらなぜでしょうか?本文に書かずに概要に本文相当の記事を書くのですか?)
現在、当方では以下のタグを用いてエントリー表示しております。(カテゴリーアーカイブ)
<$MTEntryTitle$>を用いてタイトル表示。
<MTDateHeader>を用いて<$MTEntryDate format="%x"$>にてエントリー日付表示。
<$MTEntryBody$>にて本文表示
後は、投稿者のハンドルネームやパーマリンクを表示させています。
>Ponさん
こんばんは。
ご質問の件ですが、MT4ではデフォルトテンプレートで、テンプレートの部品化を行なっているので、本文表示をするテンプレートとして「ブログ記事の概要」テンプレートモジュールを読み込んでいます。それが「<mt:include module="ブログ記事の概要" />」にあたります。この行で、いわゆるブログ記事の「概要」フィールドに該当する内容を表示しているわけではありません。
よって、ご質問の回答としては「MT4でもエントリーの本文表示には<$MTEntryBody$>」を使っています」となります。
また、MT3に対するページ分割については、MTEntriesタグの前後にページ分割用のテンプレートタグを加える作業はMT4と変わらないので、本エントリーの設定位置を参考にトライしてみてください(それでも不明な場合は再度ご連絡頂けますでしょうか)。
それではよろしくお願い致します。
