本文へジャンプ

「PowerCMS X」に
最新順に値を出力する「lastn」属性が追加された件。

PowerCMS X Ver.2.3から、MTでおなじみ「lastn」属性が追加されました。
対象は、ループ系のタグ全般です。

lastn属性とは

PowerCMS Xのタグリファレンスにはこう書いてあります。

lastn : 「published_on」カラムもしくは最初の日付型のカラムを基準にして最新N件のオブジェクトを取得する

ようするに、以下の2つは同じ結果が得られます。

<mt:Entreis lastn="1">
<mt:Entreis limit="1" sort_by="published_on" sort_order="descend">

Movable Typeとの違い。

ただ、MTと違う点が一つだけあって出力の際に気をつけないといけないのが、
出力の順番です。

sort_orderのデフォルト値

  • MT系は「descend(降順)」
  • PowerCMS Xは「ascend(昇順)」

なので、Movable Type系と同様の結果を得るためにはこうなります。

<mt:Entreis lastn="10" sort_order="descend">
<mt:Entreis limit="10" sort_by="published_on" sort_order="descend">

追記)

2021/3/22にPowerCMS X Ver.2.55がリリースされました。
その中に、「sort_orderのデフォルト値」を指定できる環境変数が実装されました。

環境変数「objectloop_order」を追加しました。
オブジェクト複数形のブロックタグ (mt:entries等)で「sort_by」属性指定があり、「sort_order」属性指定がない時のデフォルトのソート順を指定します。

lastn属性と、limit属性との使い分け

lastn属性は、「最新N件のオブジェクトを取得する」とあるので、シーンによって使い分けましょう。
例えば、1/1~1/10まで10件の記事が登録されているとします。

lastn="3" sort_order="descend"

→ 公開日が新しいものから3件抽出、新→旧の順で並びます。

<mt:Entreis lastn="3" sort_order="descend">
  • 2021.01.10
  • 2021.01.09
  • 2021.01.08

lastn="3" sort_order="ascend"

→ 公開日が新しいものから3件抽出、旧→新の順で並びます。

<mt:Entreis lastn="3" sort_order="ascend">
  • 2021.01.08
  • 2021.01.09
  • 2021.01.10

limit="3" sort_order="ascend"

→ 公開日が古いものから3件抽出、旧→新の順で並びます。

<mt:Entreis limit="3" sort_order="ascend">
  • 2021.01.01
  • 2021.01.02
  • 2021.01.03

limit="3" sort_order="descend"

→ 公開日が新しいものから3件抽出、新→旧の順で並びます。

<mt:Entreis limit="3" sort_order="ascend">
  • 2021.01.01
  • 2021.01.02
  • 2021.01.03

limit="3"だけ

→ IDが古いものから3件抽出、旧→新の順で並びます。

<mt:Entreis limit="3" sort_order="ascend">
  • 2021.01.01
  • 2021.01.02
  • 2021.01.03


「PowerCMS X」は、どんどんバージョンが上がっていって追加機能を把握するのも大変ですが、そのぶん使いやすくなっているので面白いCMSです。
オススメです。

MONSTER DIVEでは、おなじみMovable TypeからPowerCMS Xまで構築経験がありますので、ぜひご相談くださいませ。
Movable Type カスタマイズ構築サービス

Recent Entries
MD EVENT REPORT
What's Hot?