イベント一覧を出し分ける

【Movable Type】カスタムフィールド「日付」と再構築日を比較して、記事一覧の表示を切り替える

※cronを使用して、毎日決まった時間に再構築を行う環境を想定しています。
※今回使用したMTはMovable Type Pro version 6.0.2 になります。

カスタムフィールド「日付」で
・イベント開始日
・イベント終了日
を入れているイベントお知らせ用のブログで、

今日(再構築日)よりも前の「イベント終了日」の記事は一覧から省く or 表示の仕方を変える。
これが今回やろうとしていることです。

※記事自体は残したいので、公開終了日の設定は使用しないものとします。

公開終了日の設定は今回使用していません。

公開終了日の設定は今回使用していません。

まずは、今日(再構築日)の情報を出します。

<mt:SetVarBlock name="entrydate"><$mt:Date format="%y%m%d"$></mt:SetVarBlock>
再構築:<mt:GetVar name="entrydate">
再構築日が出ます。

再構築日が出ます。

・イベント開始日
・イベント終了日
のカスタムフィールドを用意して、

カスタムフィールド「日付」イベント開始日と終了日

カスタムフィールド「日付」イベント開始日と終了日

今日(再構築日)と
・イベント開始日
・イベント終了日
を比べて、出し分けます。

<MTEntries>
<mt:SetVarBlock name="entrydateEnd"><mt:If tag="EntryDataEnd"><mt:EntryDataEnd format="%y%m%d"></mt:If></mt:SetVarBlock>

<mt:if name="entrydateEnd" gt="$entrydate">
再構築よりもイベント終了日(<mt:GetVar name="entrydateEnd">)の数字が大きい

<p><mt:If tag="EntryDataStart">
イベント開始日: <mt:EntryDataStart format="%y年%m月%d日(%a)">
</mt:If><br><mt:If tag="EntryDataEnd">
イベント終了日: <mt:EntryDataEnd format="%y年%m月%d日(%a)">
</mt:If></p>

<mt:Else>
再構築よりもイベント終了日(<mt:GetVar name="entrydateEnd">)の数字が小さい

</mt:If>
</MTEntries>

20160414_5
再構築よりもイベント終了日(150915)の数字が小さい
再構築よりもイベント終了日(160427)の数字が大きい
と、出し分けることが可能なので、今日(再構築日)よりも前の「イベント終了日」のイベント一覧から省いたり、表示のスタイルを変更することが可能になります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください