[MT備忘録]変数設定(SetVar, SetVarBlock系)をコンパクトに書くためのメモ

【setvarモディファイア】単独のブロックタグ内の内容を変数としてセットする場合は、これがコンパクト

<!-- set [this_content] -->
<mt:SetVarBlock name="this_content">
<mt:Pages tag="@home" lastn="1">
 <h1 id="page-title"><$mt:PageTitle$></h1>
 <$mt:PageBody$>
</mt:Pages>
</mt:SetVarBlock>

↓と書く替わりに、こう書く↓

<!-- set [this_content] -->
<mt:Pages tag="@home" lastn="1" setvar="this_content">
  <h1 id="page-title"><$mt:PageTitle$></h1>
  <$mt:PageBody$>
</mt:Pages>

→setvar
http://www.movabletype.jp/documentation/appendices/modifiers/setvar.html

【mt:SetVars】可読性よいvar_name=value形式で、変数を一括設定

<!-- set [body_id], [is_sidebar], [this_title], [site_id] -->
<$mt:SetVar name="body_id" value="home"$>
<$mt:SetVar name="is_sidebar" value="yes"$>
<$mt:SetVar name="this_title" value="HOME"$>
<mt:SetVarBlock name="site_id"><$mt:WebsiteID$></mt:SetVarBlock>

と書く替わりに、

<!-- set [body_id], [is_sidebar], [this_title], [site_id] -->
<mt:SetVars>
  body_id=home
  is_sidebar=yes
  this_title=HOME
  site_id=<$mt:WebsiteID$>
</mt:SetVars>

→複数の変数をまとめて設定できる MTSetVars タグ
http://www.movabletype.jp/blog/mtsetvars.html

→MTSetVars
http://www.movabletype.jp/documentation/appendices/tags/setvars.html&lt;!– set [body_id], [is_sidebar], [this_title], [site_id] –>

Google Analyticsの新しいトラッキングコード(非同期トラッキングコードスニペット)の設置方法メモ

12月7日付けのAnalytics日本語版公式ブログによれば、Google Analyticsの新しいトラッキング方法として、非同期トラッキングコードスニペットが提供されたらしい。

Google Analytics のトラッキングコードが新しくなりました
http://code.google.com/intl/ja/apis/analytics/docs/tracking/asyncTracking.html

新しい非同期トラッキングコードは、他のJavaScript コードの読み込みが完了しなくても正常にロードできるため、HTMLファイル内の head セクション内に記述することが可能です。

機能的には従来のga.js トラッキングコードと同等。違いはhead要素内に記述可能になったことで、このため、ページの読み込みに時間がかかったり、離脱したセッションを正確に計測できないという不都合が解消される。

コードは管理画面からではなく手動で取得するらしく、

Google Code の Asynchronous Tracking(英語)
http://code.google.com/intl/ja/apis/analytics/docs/tracking/asyncTracking.html

を参照とのことだったので、設置方法などをざっとメモしておく。

The Snippet設置方法


<script type="text/javascript">var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
})();</script>

  • まず、従来のトラッキングコードを削除する。【重要】従来のコードと、新しいコードを混在させてはいけない。
  • 上記コードをコピーしてUA-XXXXX-X 部分を自サイト用のIDに置き換えたものを、</head>の直前に記述する。
  • 非同期処理が、同じページ内の他のscriptに影響を及ぼすのを避けるには、それら他scriptを、<head>要素内のGAコードより前か、あるいは、</body>直前(GAコードや全コンテンツの後ろ)に置く。それが無理な場合は、GAコードの方を</body>直前に配置((function()より前の部分はhead内に残すこともできる)。
  • e コマース レポートや複数ドメイン用のカスタマイズ、イベント トラッキング等でオプションの関数を導入している場合などは、変更が必要なのでAPIのリファレンスを読め、と ^^:。