本文へジャンプ

MTタグのみでサッカーのスコアをつくる!

MTタグのみでサッカーのスコアをつくる!

世間はFIFA ワールドカップ@ブラジルで大盛り上がりですが、それに関連してなにかMovableTypeでtipsを書けないかなーと。

ということで、今回はサッカーの試合のスコア表をMTタグのみで作ってみることにします。

仕様としては、各チームの前後半のスコアを入力制にして、合計点数をMT側で計算して出力。
できるかぎり、入力項目を減らすことでヒューマンエラーを減らしたいですね。

カスタムフィールドを用意

用意するカスタムフィールドは以下の4つ
ホーム/アウェイの前後半の得点になります。

  • mt:ScoreHome1 (ホームチームの前半の得点)
  • mt:ScoreHome2 (ホームチームの後半の得点)
  • mt:ScoreAway1 (アウェーチームの前半の得点)
  • mt:ScoreAway2 (アウェーチームの後半の得点)

変数にセット

次に、各カスタムフィールドの値を変数にセットします。

<$mt:ScoreHome1" setvar="sHome1"$>
<$mt:ScoreHome2" setvar="sHome2"$>
<$mt:ScoreAway1" setvar="sAway1"$>
<$mt:ScoreAway2" setvar="sAway2"$>

「op」モディファイアで四則演算

ホームとアウェイでそれぞれ、前半と後半の得点を「op」モディファイアで加算して合計点を出します。

HOME:<$mt:var name="sHome1" value="$sHome2" op="+"$>
AWAY:<$mt:var name="sAway1" value="$sAway2" op="+"$>

やり方としては、前半の得点の変数をベースとして、「value」に後半の得点をセットします。「value」に変数を使用するには頭に「$」をつけます。

このようにMTMLでも、ちょっとめんどくさいですが計算することができます(笑)

おまけ

おまけとして、総得点の変数(totalHome/Away)同士を比較すると勝敗結果も自動で出せます。

HOME:<$mt:var name="sHome1" value="$sHome2" op="+" setvar="totalHome"$>
AWAY:<$mt:var name="sAway1" value="$sAway2" op="+" setvar="totalAway"$>

<mt:If name="totalHome" eq="$totalAway">
引き分け
<mt:ElseIf gt="$totalAway">
HOMEの勝利
<mt:Else>
AWAYの勝利
</mt:Else>
</mt:If>

もっと項目を増やせば、野球のスコアを表現することも可能ですね。

それでは、ステキなMTライフを。

Recent Entries
MD EVENT REPORT
What's Hot?