EC-CUBE2.11系でGoogle Analyticsのeコマーストラッキングを行う方法

by nakachi

3 Comments

あまり情報がなかったので、自分で試したのをメモ代わりに残しておきます。

classファイルの変更

/data/class/pages/shopping/LC_Page_Shopping_Complete.php

66行目にある

$this->arrInfo = SC_Helper_DB_Ex::sfGetBasisData();

の下に下記を設定します。

$objPurchase = new SC_Helper_Purchase();
// 注文者データの取得
$arrOrder = $objPurchase->getOrder($_SESSION['order_id']);
// 注文商品データの取得
$arrOrderDetail = $objPurchase->getOrderDetail($_SESSION['order_id']);

$this->arrGAOrder = $arrOrder; // Smartyに渡す
$this->arrGAOrderDetail = $arrOrderDetail; // Smartyに渡す

必ず、67行目にある

unset($_SESSION["order_id"]);

よりも前に挿入してください。

Smartyファイルの変更

/data/Smarty/templates/default/site_frame.tpl

</head>の前に下記を設定します。
注文完了した時にだけ、eコマースの処理を入れたいのでそれ以外の場合は通常のanalyticsタグが入るように設定します。
UAアカウントIDは自分のものに書き換えてください。

<!--{if $smarty.server.PHP_SELF == "`$smarty.const.ROOT_URLPATH`shopping/complete.php"}-->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-********-*']);
_gaq.push(['_trackPageview']);
_gaq.push(['_addTrans',
'<!--{$arrGAOrder.order_id}-->', // order ID - Required!!
'', // affiliation or store name
'<!--{$arrGAOrder.total}-->', // total - Required!!
'', // tax
'', // shipping
'<!--{$arrGAOrder.order_addr01}-->', // state or province
'<!--{$arrPref[$arrGAOrder.order_pref]}-->', // city
'', // country
]);

// add item might be called for every item in the shopping cart
// where your ecommerce engine loops through each item in the cart and
// prints out _addItem for each

<!--{section name=cnt loop=$arrGAOrderDetail}-->
_gaq.push(['_addItem',
'<!--{$arrGAOrder.order_id}-->', // order ID - Required!!
'<!--{$arrGAOrderDetail[cnt].product_id}-->', // SKU/code - Required!!
'<!--{$arrGAOrderDetail[cnt].product_name}-->', // product name
'<!--{$arrGAOrderDetail[cnt].classcategory_name1}-->', // category or variation
'<!--{$arrGAOrderDetail[cnt].price}-->', // unit price - Required!!
'<!--{$arrGAOrderDetail[cnt].quantity}-->' // quantity - Required!!
]);
<!--{/section}-->
_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>
<!--{else}-->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-********-*']);
_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';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!--{/if}-->

Analyticsの設定でeコマースサイトをオンにする

Google Analyticsのプロファイルから編集を選び、プロファイル設定へ行きます。
プロファイル設定のメインのプロファイル情報の編集から、
eコマースサイトの箇所で「はい、eコマースサイトです」を選択して設定を保存します。

以上で設定完了です。

2012.03.09追記

けたばを様からご指摘頂きまして、最初の条件分岐を修正しました。
けたばを様ありがとうございます!

MTのキャッシュディレクトリを変更する

by nakachi

No Comments

MTでアイテムをアップロードしてサムネイル画像を作成した場合、ブログ直下にassets_cというフォルダが自動的に作成され、そこにサムネイル画像が保存されます。

名前的にもあんまり意味が分からなかったりなので、下記がフォルダ名を変更する方法です。

mt-config.cgiを開き、下記の一行を追加します。

AssetCacheDir フォルダ名

これで、画像アップロード時のキャッシュディレクトリのフォルダ名が変更されます。

MTIncludeタグでテンプレートモジュールが読み込めないメモ。

by nakachi

No Comments

MovableTypeでテンプレートモジュールを読み込む際に、嵌ったのでメモ。

Module – これだとダメ。

<$mt:Include Module="hoge"$>

module – これだとOK。

<$mt:Include module="hoge"$>

通常のスタティックな形式だと両方大丈夫なのですが、ダイナミックパブリッシングを使用してる時は、大文字と小文字がきっちと判別されるみたいです。

Youtubeアカウントを削除してしまった場合の復元方法

by nakachi

No Comments

YouTube アカウントを削除すると、登録したプロフィール情報が YouTube から完全に削除されます。削除されたアカウントを再び使うことはできません。

Youtubeアカウントは削除する時に上記のようなメッセージが表示され、実際に削除してしまうと通常は復元することが出来ません。

だけど、実際にはYoutubeアカウントは削除しても復元できます。

Youtubeのヘルプページに行く。
YoutubeのヘルプはYoutubeのトップページの下の方にあります。

検索欄に「以前削除したアカウントを再開するには」と入力する

ヘルプページから探していくのは膨大で大変なので、「以前削除したアカウントを再開するには」と入力すると1番目か2番目にヒットするのでそのページにいく。

実際のページはこちら
以前削除したアカウントを再開するには – YouTube ヘルプ

アカウントを直接再開することはできません。アカウントの再開を依頼するには、こちらのページをご利用ください。

とあるのでこちらのページをクリックします。

アカウントの再開ページで必要な項目を入力する

最後に、アカウントの再開ページでYoutubeユーザー名とメールアドレスを入力して送信を押して、復元の申請は終わりです。

復元されるまで1、2日かかるのでメールを待つ

アカウント再開のメールは1、2日後に来ます。
すぐには復元されないので、注意してください。

1 / 712345...LAST »