📃
【Movable Type】記事一覧で連番を付与する
概要
記事を出力する際に、記事に降順の連番を付与するコード例です。
以下のイメージです。
※公開されている記事が全部で10件の場合
10: いちばんあたらしい記事
9: 2番目にあたらしい記事
8: 3番目にあたらしい記事
7: 4番目にあたらしい記事
6: 5番目にあたらしい記事
5: 6番目にあたらしい記事
.
.
.
コード例
以下の例では記事(MTEntries
)の一覧を出力しています。
<!-- MTML -->
<mt:Entries lastn="0">
<mt:EntriesCount setvar="entryCount">
<mt:EntriesHeader>
<ul>
</mt:EntriesHeader>
<mt:SetVar name="count" value="$entryCount" op="--">
<li><$mt:Var name="count"$>: <$mt:EntryDate format="%Y-%m-%d"$> <$mt:EntryTitle$></li>
<mt:EntriesFooter>
</ul>
</mt:EntriesFooter>
</mt:Entries>
<!-- 出力結果 -->
<ul>
<li>10: 2025-05-01 サンプル記事10</li>
<li>9: 2025-04-29 サンプル記事9</li>
<li>8: 2025-04-25 サンプル記事8</li>
<li>7: 2025-04-20 サンプル記事7</li>
<li>6: 2025-04-15 サンプル記事6</li>
<li>5: 2025-04-11 サンプル記事5</li>
<li>4: 2025-04-09 サンプル記事4</li>
<li>3: 2025-04-07 サンプル記事3</li>
<li>2: 2025-03-20 サンプル記事2</li>
<li>1: 2025-03-07 サンプル記事1</li>
</ul>
MTEntries
のループの中で、出力記事件数を表示するMTEntriesCount
の値を、setvar
モディファイアを付与して変数entryCount
に格納します。
<mt:EntriesCount setvar="entryCount">
さらにentryCount
を値として、変数count
に格納します。値にするentryCount
は、先頭に$
をつけます。この変数にはop
モディファイアを付与し、値を--
(またはdec
、デクリメント)とします。
こうすることで、entryCount
(今回の例では10
)からはじまる降順の連番を出力することが可能になります。
<mt:SetVar name="count" value="$entryCount" op="--">
連番の出力部分は<$mt:Var name="count"$>
です。
なお、op
モディファイアの値を-
としてしまうと、ループ処理のたびにentryCount
の数値分マイナスにした値が変数count
に格納されて出力されるので、10, 0, -10, -20, ...
という出力になってしまいます。
公式リファレンス
MT
- https://www.movabletype.jp/documentation/appendices/tags/entriescount.html
- https://www.movabletype.jp/documentation/mt6/design/templates/calculation.html
PowerCMS
- https://www.powercms.jp/products/document/template-tags/entriescount.html
- https://www.powercms.jp/products/document/design/templates/calculation.html
Discussion