昨日は「カスタマイズ」と書きながら、MTのダッシュボードとテンプレート画面で終わってしまったので今日はもう少し進めましょう。
テーマ「Rainier1.1」では標準でページネーションが準備されているのですが、そのまま使用して再構築すると「過去の記事」リンクが出てくるだけの素っ気無い状態です。
せめて5ページ分位は遡りたいんだよな。
この「過去の記事」リンクをクリックすると続いて出てくるのは「過去の記事」リンクに加えて「新しい記事」リンクです。
いやまぁページ分割ではあるのですがコレでは使えるページ分割と言えません。ちなみにオリジナルのページネーションテンプレートはこんなカンジです。
<mt:SetVarBlock name="pagination_navigation">
<mt:If name="search_results">
<mt:IfMoreResults>
<li class="page-navigation-list-item page-navigation-prev">
<a rel="prev" href="<$mt:NextLink encode_html="1"$>">過去の記事</a>
</li>
</mt:IfMoreResults>
<mt:IfPreviousResults>
<li class="page-navigation-list-item page-navigation-next">
<a rel="next" href="<$mt:PreviousLink encode_html="1"$>">新しい記事</a>
</li>
</mt:IfPreviousResults>
<mt:Else>
<mt:If name="archive_template">
<$mt:ArchiveCount setvar="total_entries"$>
<mt:Else>
<$mt:BlogEntryCount setvar="total_entries"$>
</mt:If>
<mt:If name="total_entries" gt="$entries_per_page">
<li class="page-navigation-list-item page-navigation-prev">
<a rel="prev" href="<$mt:Var name="search_link"$>2">過去の記事</a>
</li>
</mt:If>
</mt:If>
</mt:SetVarBlock><mt:If name="pagination_navigation">
<$mt:Var name="pagination_navigation" strip_linefeeds="1" trim="1" setvar="pagination_navigation"$>
<nav class="page-navigation entry-navigation pagination content-nav">
<ul class="pagination-list"><$mt:Var name="pagination_navigation"$></ul>
</nav>
</mt:If>
一部長い行には改行を入れてちょっと整形しています。
コレを読み解くのも大変なので、ググってみたらこんなページが出てきました。ふむ、使えますね。ちょっとパチらせて頂いた上に手を加えてこんなカンジにしてみました。
<mt:SetVarBlock name="pagination_navigation"> <$mt:Var name="pagenation_count" value="5"$><mt:If name="search_results">
<mt:PagerBlock>
<mt:IfCurrentPage>
<mt:Var name="__value__" setvar="page_next" value="$pagenation_count" op="+">
<mt:Var name="__value__" setvar="page_prev" value="$pagenation_count" op="-">
</mt:IfCurrentPage>
</mt:PagerBlock>
<mt:IfPreviousResults>
<a href="<$mt:PreviousLink$>" rel="prev" onclick="return swapContent(-1);">< 前</a>
</mt:IfPreviousResults>
<mt:PagerBlock>
<mt:IfCurrentPage>
<$mt:Var name="__value__"$>
<mt:Else>
<mt:If name="__value__" le="$page_next">
<mt:If name="__value__" ge="$page_prev">
<a href="<$mt:PagerLink$>"><$mt:Var name="__value__"$></a>
</mt:If>
</mt:If>
</mt:IfCurrentPage>
</mt:PagerBlock>
<mt:IfMoreResults>
<a href="<$mt:NextLink$>" rel="next" onclick="return swapContent();"> 次 ></a>
</mt:IfMoreResults>
<mt:Else>
<$mt:EntriesCount setvar="total_entries"$>
<mt:If name="total_entries" gt="$entries_per_page">
<$mt:Var name="local_entries_count" value="$entries_per_page"$>
<$mt:Var name="top_pagenation" value="$pagenation_count"$>
<$mt:setVar name="top_pagenation" value="1" op="+"$>
1
<mt:for var="local_loop" from="2" to="$top_pagenation">
<$mt:SetVar name="local_entries_count" value="$entries_per_page" op="+"$>
<mt:If name="local_entries_count" lt="$total_entries">
<a rel="prev" href="<$mt:Var name="search_link"$><$mt:Var name="local_loop"$>"><$mt:Var name="local_loop"$></a>
</mt:If>
</mt:for>
<a rel="prev" href="<$mt:Var name="search_link"$>2"> 次 ></a>
</mt:If>
</mt:If>
</mt:SetVarBlock><mt:If name="pagination_navigation">
<$mt:Var name="pagination_navigation" strip_linefeeds="1" trim="1" setvar="pagination_navigation"$>
<nav class="page-navigation entry-navigation pagination content-nav">
<ul class="pagination-list"><$mt:Var name="pagination_navigation"$></ul>
</nav>
</mt:If>
差し替えて再構築するとインデックスページでも....
2ページ以降の検索ページでもページインデックスが表示されてページ分割できているようです。
サラっと書いてますがココまで来るのに試行錯誤して結構苦労してます、ハイ。
テンプレート差替だけでは上手く動かないのですが長くなったので続きはまた後日。
「ブログ村鉄道模型」はコチラです。
コメントする
※ コメントは認証されるまで公開されません。ご了承くださいませ。