MovableType
静的ページ用ページ分割プラグイン「PageBute」でページネーションを作る方法
はじめに
PageButeは、Movable Typeが生成する静的ページを分割するプラグインです。
ページネーションごとに静的ページを生成しますので、そのまま別環境に同期させることもできる便利なプラグインです。
基本的なページネーションを表示するサンプルテンプレートを作成しました。
サンプルテンプレート
分割するコンテンツ範囲を設定する。
<mt:PageContents count="表示件数" navi_count="ページネーションの表示件数" abs2rel="1">
<mt:Entries>
処理内容
<mt:PageSeparator>
</mt:Entries>
</mt:PageContents>
ページネーション範囲を設定する。
テンプレートモジュールに登録して読み込ませれば、共通化することができます。
<mt:Pagination>
<mt:PaginationHeader>
<ul>
<mt:IfPaginationFirst>
<li><a href="<mt:PaginationFirst>">«最初へ</a></li>
</mt:IfPaginationFirst>
<mt:ifPaginationPrev>
<li><a href="<mt:PaginationPrev>"><前へ</a></li>
</mt:ifPaginationPrev>
</mt:PaginationHeader>
<mt:ifPaginationCurrent>
<li><mt:PaginationLink element="number"></li>
<mt:Else>
<li><a href="<mt:PaginationLink>"><mt:PaginationLink element="number"></a></li>
</mt:ifPaginationCurrent>
<mt:PaginationFooter>
<mt:ifPaginationNext>
<li><a href="<mt:PaginationNext>">次へ></a></li>
</mt:ifPaginationNext>
<mt:ifPaginationLast>
<li><a href="<mt:PaginationLast>">最後へ»</a></li>
</mt:ifPaginationLast>
</ul>
</mt:PaginationFooter>
</mt:Pagination>
テンプレートタグの解説
MTPageContents
分割する範囲を指定するブロックタグです。
- countで指定した件数ごとにページが分割されます。
- navi_countで指定した件数ごとにページーネーションが分割されます。
- abs2relでリンクを全て相対パスに変換し出力します。
MTPageSeparator
ページ分割する位置を指定します。
MTPagination
ページネーション範囲を指定するブロックタグです。
MTPaginationHeader
MTPaginationのヘッダーを指定するブロックタグです。
MTIfPaginationFirst
最初のページ以外の場合に有効となるブロックタグです。
MTifPaginationPrev
前ページが存在する場合に有効となるブロックタグです。
MTifPaginationCurrent
現在のページの場合に有効となるブロックタグです。
MTPaginationLink
分割したページへのURLを表示します。
element="number" を付与すると、ページ番号のみ出力されます。
MTPaginationFooter
MTPaginationのフッターを指定するブロックタグです。
MTPaginationLast
最後のページ以外の場合に有効となるブロックタグです。
MTifPaginationNext
次ページが存在する場合に有効となるブロックタグです。
最後に
PageButeは、Movable Typeが生成する静的ページを分割するプラグインです。
「株式会社スカイアーク」が提供しており、個人・法人を問わず無償で利用できます。
ダウンロードは提供元のサイトから可能です。Movable Type 7にも対応済みです。