Movable Typeでsprintfモディファイアをつかって整数をとりだす
みなさん、こんにちは、まーしーです
本日より7/16まで夏休みを頂いて宮古島にきています。
MTでエントリー一覧を作る場合に、下記のようなソースを作りたい場合どうします?
<ul> <li class="group0">list01</li> <li class="group0">list02</li> <li class="group1">list03</li> <li class="group1">list04</li> </ul>
色々作り方はあるかもしれませんが、その例の1つとしてsprintfモディファイアを使う方法を紹介します。
sprintf | グローバル・モディファイアリファレンス
http://www.movabletype.jp/documentation/appendices/modifiers/sprintf.html
サンプルはこのようなMTテンプレートになるかと思います。
<mt:SetVar name="entcount" value="0" /> <ul> <mt:Entries> <li class="group<mt:GetVar name="entcount" op="/" value="2" sprintf="%d" />"><mt:EntryTitle /></li> <mt:SetVar name="entcount" op="++" /> </mt:Entries> </ul>
entcountという変数を設定して、初期値を0にしておきます。MTEntries内で各エントリーを表示する際にentcountを2で割った値を整数にして返します
sprintfのdは整数値(10進法)をかえします。他の型指定のサンプルはこちら。
フォーマット(書式整形)関数(sprintf) / 【超初心者のホームページ作成】
http://beginners.atompro.net/faqphp_sprintf.shtml
似たような例として偶数奇数は__odd__、__even__をつかえば問題ないかと思います。
場合によってどのように設定するのがちがうのでそのあたりはカスタマイズしながら使うことになるかと思いますが、何かの参考になれば幸いです。