2019.08.27
Movable Type 7:複数のコンテンツタイプをまとめて一覧表示する
Movable Type r.4502 以降は、
コンテンツタイプを複数指定できなくなってしまったので、
仕方なく <mt:Loop> で出力しました。
下記はトップページに5件、
イベントとセミナーをまとめて表示することを想定しています。
<mt:SetVar name="limit" value="5"$>
<mt:Contents content_type="イベント" limit="$limit">
<mt:SetVarBlock name="key"><mt:ContentDate format="%Y%m%d%H%M%S"><mt:ContentID pad="1"></mt:SetVarBlock>
<mt:SetVarBlock name="news" key="$key"><li><a href="<mt:ContentPermalink>"><mt:ContentLabel></li></mt:SetVarBlock>
</mt:Contents>
<mt:Contents content_type="セミナー" limit="$limit">
<mt:SetVarBlock name="key"><mt:ContentDate format="%Y%m%d%H%M%S"><mt:ContentID pad="1"></mt:SetVarBlock>
<mt:SetVarBlock name="news" key="$key"><li><a href="<mt:ContentPermalink>"><mt:ContentLabel></li></mt:SetVarBlock>
</mt:Contents>
<mt:SetVar name="count" value="0"$>
<mt:Loop name="news" sort_by="key numeric reverse">
<mt:If name="__first__"><ul></mt:If>
<mt:SetVar name="count" value="1" op="+">
<mt:If name="count" le="$limit"><mt:Var name="__value__"></mt:If>
<mt:If name="__last__"></ul></mt:If>
</mt:Loop>
表示されない5件が無駄ループなわけですが許容としてます。
全件表示したい場合は、limit関連とcount関連を削除してください。
あと、<li>~</li>はモジュール化した方が、修正は楽です。