新着表示マークをMTタグのみで行う

新着エントリーに新着表示マークをつけるには、JavaScriptを使う方法がありますが、このサイトではメインページ以外のサイドバーの新着記事リストを「Ajax によるモジュール化」により行っているため、新着表示マークを表示させるためには再度JavaScriptを読み込ませなくてはいけません。

そこで、MTタグで自動で消える"New"マークを表示する | 石輪っぷり! | 有限会社 Willさんいんで紹介されている、MTタグのみで行う方法にしてみました。

実際のテンプレートは次の通りです。

<mt:SetVarBlock name="today"><$mt:Date format="%Y%j"%></mt:SetVarBlock>
<h2>ブログ最新</h2>
<div class="widget-content">
  <ul>
  <mt:Entries lastn="10">
    <li><a href="<$mt:EntryPermalink$>" title="<$mt:EntryTitle encode_html="1"$>に移動します"><$mt:EntryTitle encode_html="1"$></a> (<$mt:EntryDate format="%b月%e日"$>)
    <mt:SetVarBlock name="passed"><$mt:EntryDate format="%Y%j"%></mt:SetVarBlock>
    <mt:SetVar name="passed" value="$today" op="sub">
    <mt:If name="passed" ge="-5">
     <span class="newmark">New!</span>
    </mt:If>
    <mt:If name="passed" ge="-640">
      <mt:If name="passed" le="-635">
       <span class="newmark">New!</span>
      </mt:If>
    </mt:If>
    </li>
  </mt:Entries>
  </ul>
</div>
関連エントリー