検索結果のページ分割

Movable Type4.2では検索結果のページ分割ができますが、検索結果が1ページだけの場合にもページ数が表示されてしまいます。

検索結果が1ページしかない時は、いりませんよね!

MTTotalPagesを利用して不要な"1"という数字を表示しないようにしてみた。

検索結果がない場合もページは生成されるのでページ数に0や負はあり得ない。そこでページ総数が1ページではない場合に表示すればよいので、<MTUnless name="foo" eq="1">を使います。

<MTSetVarBlock name="Seach_Count"><$MTTotalPages$></MTSetVarBlock>
<MTUnless name="Seach_Count" eq="1">
検索結果のページ分割部分
</MTUnless>

デフォルトテンプレートでは(MovableType 4.2 無料テンプレート 2Columnも全く同じ)以下のような記述です。

<MTSetVarBlock name="Seach_Count"><$MTTotalPages$></MTSetVarBlock>
<MTUnless name="Seach_Count" eq="1">
<div class="content-nav">
<mt:IfPreviousResults><a href="<$mt:PreviousLink$>" rel="prev" onclick="return swapContent(-1);">&lt; 前</a>&nbsp;&nbsp;</mt:IfPreviousResults><mt:PagerBlock><mt:IfCurrentPage><$mt:Var name="__value__"$><mt:Else><a href="<$mt:PagerLink$>"><$mt:Var name="__value__"$></a></mt:IfCurrentPage><mt:Unless name="__last__">&nbsp;</mt:Unless></mt:PagerBlock><mt:IfMoreResults>&nbsp;&nbsp;<a href="<$mt:NextLink$>" rel="next" onclick="return swapContent();">次 &gt;</a></mt:IfMoreResults>
</div>
</MTUnless>

お試しあれ

Posted