エンジニアブログ

エンジニアブログ
Movable Type プラグイン

ページ分割プラグインPagebuteがより柔軟にデザインカスタマイズ出来るようになりました。

edit_me_s.jpg はせがわ 2012年05月07日

こんにちは、はせがわです。

今回は、PageBute3.5.6を公開しましたので、お知らせいたします。

PageButeの利用方法とダウンロードはこちらを参照してください。

前回のリリースから現在の3.5.6までで追加された機能は主に以下の通りです。

  • PageButeで出力されるリンクを相対パスにすることが出来るようになった。
  • MTPageLinksタグの代わりに、従来では、ある程度固定的な出力となっていたナビゲーションリンクを、テンプレートを割り当てる事で、構造や出力を自由に指定し易く行えるタグを提供。

追加及び変更されたタグは以下の通りです。

(変更)

  • MTPageContents
    abs2relモディファイアを追加

(追加)

  • MTPagination
  • MTPaginationHeader
  • MTPaginationFooter
  • MTIfPaginationCurrent
  • MTIfPaginationFirst
  • MTIfPaginationLast
  • MTIfPaginationNext
  • MTIfPaginationPrev
  • MTPaginationLink
  • MTPaginationFirst
  • MTPaginationLast
  • MTPaginationNext
  • MTPaginationPrev

記事からのリンクを相対パスに変換する機能

  • MTPageContents
    abs2rel:PageButeが出力するリンクをすべて相対にします。(モディファイア)

<MTPageContents count="5" abs2rel="1">
<MTEntries lastn="999">
<MTPageContentsHeader><dl></MTPageContentsHeader>
    <dt><$MTEntryTitle$></dt>
    <dd><$MTEntryExcerpt$></dd>
    <MTPageContentsFooter></dl></MTPageContentsFooter>
    <$MTPageSeparator$>
</MTEntries>
</MTPageContents>
<MTPageEmpty><p>記事は未登録です</p></MTPageEmpty>
<div class="pagenate">
    <ul>
        <MTIfPageBefore>
        <$MTPageBefore delim="前の5件"$>
        </MTIfPageBefore>
        <$MTPageLists link_start="<li>" link_close="</li>"$>
        <MTIfPageNext>
        <$MTPageNext delim="次の5件"$>
        </MTIfPageNext>
    </ul>
</div>

上記のサンプルが出力する内容のうち、ページ送りリンクが相対パスになります。

PageLinksタグに代わる、構造や出力を自由に指定し易く行えるタグ

  • MTPagination:従来のナビゲーションリンクを出力していたMTPageListsの代わりとして機能します。これを使用する事で、ナビゲーションにテンプレートを割り当て、自由に編集できるようにしています。(ブロックタグ)
    以下は、MTPaginationタグ内で使用することの出来るタグです。
    • MTPaginationHeader:MTPaginationが出力する内容のヘッダーとして機能します。(ブロックタグ)
    • MTPaginationFooter:MTPaginationが出力する内容のヘッダーとして機能します。(ブロックタグ)
    • MTIfPaginationCurrent:現在のページを判定します。(コンディショナルタグ)
    • MTIfPaginationFirst:現在のページが最初のページ以外のときに有効となります。ただし最初のループのみ有効。(コンディショナルタグ)
    • MTIfPaginationLast:現在のページが最後のページ以外のときに有効となります。ただし最後のループのみ有効。(コンディショナルタグ)
    • MTIfPaginationNext:現在のページの次のページが存在する場合有効となります。ただし最後のループのみ有効。(コンディショナルタグ)
    • MTIfPaginationPrev:現在のページの前のページが存在する場合有効となります。ただし最初のループのみ有効。(コンディショナルタグ)
    • MTPaginationLink:プロトコルからページのファイル名までのURLを出力します。(ファンクションタグ)
    • MTPaginationFirst:最初のページへのURLを出力します。(ファンクションタグ)
    • MTPaginationLast:最後のページへのURLを出力します。(ファンクションタグ)
    • MTPaginationNext:次のページヘのURLを出力します。(ファンクションタグ)
    • MTPaginationPrev:前のページヘのURLを出力します。(ファンクションタグ)

<MTPageContents count="5">
    <MTEntries lastn="999" category=$current_category>
        <MTPageContentsHeader><dl></MTPageContentsHeader>
            <dt><$MTEntryTitle$></dt>
            <dd><$MTEntryExcerpt$></dd>
        <MTPageContentsFooter></dl></MTPageContentsFooter>
        <$MTPageSeparator$>
    </MTEntries>
</MTPageContents>

<MTPageEmpty><p>記事は未登録です</p></MTPageEmpty>

<MTPagination>
    <MTPaginationHeader>
        <div class="pagenate"><ul>
        <MTIfPaginationFirst>
            <li><a class="link_before" href="<$MTPaginationFirst$>">&lt;&lt;</a></li>
        </MTIfPaginationFirst>
        <MTIfPaginationPrev>
            <li><a class="link_before" href="<$MTPaginationPrev$>">前の5件</a></li>
        </MTIfPaginationPrev>
    </MTPaginationHeader>
    <MTIfPaginationCurrent>
        <mt:ignore>現在のページ</mt:ignore>
        <li><span><$MTPaginationLink element="number"$></span></li>
    <MTElse>
        <mt:ignore>それ以外(遷移用のリンクあり)</mt:ignore>
        <li><a href="<$MTPaginationLink$>"><$MTPaginationLink element="number"$></a></li>
    </MTIfPaginationCurrent>
    <MTPaginationFooter>
        <MTIfPaginationNext>
            <li><a class="link_next" href="<$MTPaginationNext$>">次の5件</a></li>
        </MTIfPaginationNext>
        <MTIfPaginationLast>
            <li><a class="link_next" href="<$MTPaginationLast$>">&gt;&gt;</a></li>
        </MTIfPaginationLast>
        </ul></div>
    </MTPaginationFooter>
</MTPagination>

これらのタグを使用することにより、ナビゲーションリンクのそれぞれのパーツを独立して使用することが出来、デザインなどを自由に変更しやすくなります。

注意事項

本プラグインをご利用される方は必ず「プラグインご利用の際の注意事項」をお読みください。