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 7のコンテンツデータ(コンテンツタイプアーカイブ)をページ分割する方法
- Movable Typeでブログ記事やウェブページをページ分割する方法
- Movable Typeの「最近のブログ記事」をページ分割する
- PageButeプラグインでページ分割がないときにナビゲーションや(X)HTMLマークアップを表示しない方法
- Movable Typeのダイナミックパブリッシングでのページ分割ナビゲーションの不具合を解消する
- Movable Type 5のダイナミックパブリッシングでのページ分割について
- Movable Type のページ分割でページ番号を title 要素に表示する
- Movable Type のページ分割によるナビゲーションの前後ページ表示を絞り込む(改)
- ダイナミックパブリッシングによるページ分割
- コメントのページ分割 for Movable Type 4
- Movable Type のページ分割によるナビゲーションの前後ページ表示を絞り込む
- アーカイブページのページ分割 for Movable Type 4.1
- メインページのページ分割 for Movable Type 4
- ページ分割の Ajax 化
- 検索結果のページ分割(3.3x 版)
≫ ニュースやらアーカイブをいじる 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で検索した時に出るアレである。↓ ... [続きを読む]
≫ PageBute備忘録 / PageBute비망록 from ちょあへよ札幌3
やっとページ分割に対応(´Д`)ハァ...小粋空間さんが一番わかりやすかったです。http://www.koikikukan.com/archives/2... [続きを読む]
こんばんは。
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と変わらないので、本エントリーの設定位置を参考にトライしてみてください(それでも不明な場合は再度ご連絡頂けますでしょうか)。
それではよろしくお願い致します。
いつも拝見させて頂き勉強させて頂いております。
Mt3時代に何度かメールでもご教授頂いたのですが、今回一気にMt5.1にバージョンアップしてみました。
小粋空間様のテンプレートを使用しているのですが、Pagebuteプラグインをアップロードしてもプラグイン一覧に表示されません?アップロード箇所は間違えていないはずなのですが・・・思い当たる事は御座いますでしょうか?
又、テンプレート内のカレンダーウイジャットを3カラムもサブサイドバーに設置したのですが表示されないのです。どこか手を加えたりするのでしょうか?
初歩的な質問で大変申し訳御座いません。
ご教授頂けると幸いです。
yujiro様
連続コメント申し訳ありません。
Pagebuteの件は私の勘違いでした…申し訳ありません。「システム」の方のプラグイン一覧を見ていませんでした。自己解決出来たのでご報告させて頂きます。
>umazouさん
こんにちは。
ご連絡ありがとうございます。
ご質問の件、自己解決されたようでよかったです。
カレンダーウィジェットを表示するには、日別アーカイブの追加が必要です。日別アーカイブが必要な理由は、カレンダーの日付のリンクが日別アーカイブにリンクしているためです。説明不足で申し訳ありません。
日別アーカイブを追加するには、管理画面の「デザイン」→「テンプレート」でアーカイブテンプレートの一覧にある「ブログ記事リスト」をクリックし(テーブルの中に表示されている「ブログ記事リスト」です)、編集画面下にある「テンプレートの設定」をクリックし、さらに「新しいアーカイブマッピングを作成」をクリックして、プルダウンメニューから「日別」を選択して「追加」をクリックしてください。
それではよろしくお願い致します。
yujiro様
お忙しい中ご教授頂けましてありがとうございました。無事カレンダーが表示されました。
今回mt5.1にアップグレードした際にバックアップに失敗してゼロからのスターになってしまいました。古いですが「Movable Type WEBデザインの新しいルール」片手に四苦八苦してます。
折りたたみや本文と概要の切り替えに挑戦したいのですが敷居が高そうです。
頑張ってみたいと思います。
ありがとうございました。
いつもお世話になっています。
カテゴリーのページ分割を試してみたのですが、別のurlにアクセスしてしまいます。
/mt_main/log/ にメインのブログが置いてあります。
/mt_main/archives/ には各カテゴリーのページがあります。
ブラウザでブログを閲覧し、特定のカテゴリーをクリックして表示されたページの最終記事の下にある数字をクリックすると本来は /mt_main/archives/ cat・・・・・ に飛んでほしいのですが、
/mt_main/log/cat・・・・ に飛んでしまいます。
どの部分をどのように書き換えたらよろしいでしょうか。
かなり時間をかけたのですが理解できず質問させていただきました。
↑ 自己解決しました。
すみません。。。
>takiさん
こんばんは。
ご質問の件、自己解決したようでよかったです。
ではでは!
小粋空間さんのテンプレート使いブログを構築させていただき、大変重宝しております。
メインページとブログ記事リスト(テンプレートアーカイブ)においてページ分割の表示が異なってします。但し、ページの分割自体は正常です。
本記事のソースのまま入れ込んでいるのですが、以下のような表示になってしまいます。
◇メインページ
「タイトル」
「タイトル」
◇ブログ記事リスト(アーカイブ)
「タイトル」
「タイトル」
ブログ記事リストの場合、改行が入ってしまいます。CSS及び生成されたソースコードで確認してみたのですが、改行やスペースに関する記述はみた限りみうけられませんでした。
これは、PageBute特有なのか、テンプレートを修正すればなおるものなのでしょうか。
MT5.2で2つのブログを動かしているのですが、2つとも同じ症状です。
よろしくお願いします。