Google Analyticsを利用することで、購入された商品、数量、金額に加えて、購入者の国や購入の時間帯など様々な切り口から分析を行う事が可能になります。
本稿では、商品購入をコンバージョン(得点)として、Google Analyticsへデータを渡すサンプルスクリプトをご紹介します。
※本稿では、Google Analyticsのサービスに既にアカウントを保持していることを前提としています。
アカウント作成はこちらから行います
Google Analyticsのレポート形式を、Eコマースに適した形にするための設定を行います。
カスタマイズ>ビュー設定より、Eコマーストラッキングオプションを「オンにします。」
レポートのコンバージョンカテゴリに、Eコマースのグループが追加されたことを確認してください。
本稿の結果、以下のようなレポートをGoogle Analyticsより取得可能になります。
(レポートの内容については、Google Analyticsを参照ください)
注文完了のデザインテンプレートを変更する
注文完了時にGoogleAnalyticsへデータを送るため、テンプレートを変更します。
店舗管理メニュー>デザイン設定>テンプレート編集>注文完了を選択し、テンプレートを編集してください。
以下のサンプルをテンプレートの任意の位置に追加してください。
その際、「UA-XXXXX-X」にはGoogle Analyticsで発行されたトラッキングIDを設定してください。
<{if $conversion_tag_disp_flag == "1"}>
<!-- GA効果測定タグ -->
<{*assign関数を用いて、phpが持つ商品情報をテンプレート変数に登録します。*}>
<{assign var="order_id_str" value=$order_info.order_id}>
<{assign var="total_str" value=$order_info.order_komi_gokei}>
<{if $order_info.order_soryo_calc == "1" && $order_info.all_goods_none_delivery_flag != "1"}>
<{assign var="shipping_str" value=$order_info.order_soryo}>
<{else}>
<{assign var="shipping_str" value=""}>
<{/if}>
<{if $order_info.order_country_id == $cn_country_id_japan}>
<{assign var="city_str" value=$order_info.order_addr}>
<{assign var="state_str" value=$order_info.order_ken_name}>
<{else}>
<{assign var="city_str" value=$order_info.order_addr2}>
<{assign var="state_str" value=$order_info.order_addr}>
<{/if}>
<{assign var="country_str" value=$order_info.order_country_id}>
<script type="text/javascript">
<{*Google Analysticsへ注文情報を送信*}>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
_gaq.push(['_addTrans',
'<{$order_id_str}>', // order ID - required
'', // affiliation or store name
'<{$total_str}>', // total - required
'', // tax
'<{$shipping_str}>', // shipping
'<{$city_str}>', // city
'<{$state_str}>', // state or province
'<{$country_str}>' // country
]);
<{*Google Analysticsへ購入された商品情報を送信*}>
<{if count($order_detail_list) > 0}>
<{*assign関数を用いて、phpが持つ商品情報をテンプレート変数に登録します。*}>
<{section name=key loop=$order_detail_list}>
<{assign var="order_id_str" value=$order_info.order_id}>
<{assign var="sku_code_str" value=$order_detail_list[key].odsub_goods_num}>
<{assign var="product_name_str" value=$order_detail_list[key].odsub_goods_name}>
<{assign var="variation_str" value=$order_detail_list[key].odsub_goods_opt}>
<{assign var="unit_price_str" value=$order_detail_list[key].odsub_price}>
<{assign var="quantity_str" value=$order_detail_list[key].odsub_kosu}>
_gaq.push(['_addItem',
'<{$order_id_str}>', // order ID - required
'<{$sku_code_str}>', // SKU/code - required
'<{$product_name_str}>', // product name
'<{$variation_str}>', // category or variation
'<{$unit_price_str}>', // unit price - required
'<{$quantity_str}>' // quantity - required
]);
<{/section}>
<{/if}>
_gaq.push(['_trackTrans']); //submits transaction to the Analytics servers
(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';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!--// GA効果測定タグ -->
<{/if}>
管理画面>基本情報設定より、効果測定タグを表示するになっていることを確認してください。
表示しないの場合は、表示するに変更します。