質問 > その他 > EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない |
その他
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
physics |
投稿日時: 2013/1/28 17:50
対応状況: −−−
|
新米 登録日: 2012/12/13 居住地: 投稿: 7 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない nanasess様
LC_Page_Shopping_Complete_Ex.phpの方に $objPurchase = new SC_Helper_Purchase(); $arrOrder = $objPurchase->getOrder($_SESSION['order_id']); $arrOrderDetail = $objPurchase->getOrderDetail($_SESSION['order_id']); $this->arrGAOrder = $arrOrder; $this->arrGAOrderDetail = $arrOrderDetail; を挿入したら表示されるようになりました!! 本当に助かりました!ありがとうございます! |
nanasess |
投稿日時: 2013/1/25 14:43
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2314 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない 引用:
これが原因ですね〜。 LC_Page_Shopping_Complete_Ex.php で LC_Page_Shopping_Complete.php の処理を上書きしているようです。 LC_Page_Shopping_Complete_Ex.php の 以下の処理の上に LC_Page_Shopping_Complete.php に記載した処理を書いてみてはいかがでしょうか。
|
physics |
投稿日時: 2013/1/25 13:46
対応状況: −−−
|
新米 登録日: 2012/12/13 居住地: 投稿: 7 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない nanasess様
ありがとうございます。 LC_Page_Shopping_Complete.phpの中にvar_dump($_SESSION['order_id']);を加えて試してみたところ、やはり以下のような形で何も取得できませんでした。 var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-****']); _gaq.push(['_trackPageview']); _gaq.push(['_addTrans', '', // order ID - Required!! '', // affiliation or store name '', // total - Required!! '', // tax '', // shipping '', // state or province '', // city '', // country ]); _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); })(); またLC_Page_Shopping_Complete_Ex.phpですが、 以下のようなコードが追加されておりました。 これがあると取得は厳しいでしょうか? /** * Page のアクション. * * @return void */ function action() { $this->arrInfo = SC_Helper_DB_Ex::sfGetBasisData(); unset($_SESSION["order_id"]); if(empty($_SESSION['card_info'])) { $this->tpl_mainpage = "shopping/complete.tpl"; }else{ $ptn_chk = $_SESSION['card_info']; unset($_SESSION['card_info']); if($ptn_chk == 0) { // 成功 $this->tpl_mainpage = "shopping/complete.tpl"; } elseif ($ptn_chk == 1) { // キャンセル $this->tpl_mainpage = "shopping/cancel_complete.tpl"; } else { // 失敗 $this->tpl_mainpage = "shopping/err_complete.tpl"; } } } |
nanasess |
投稿日時: 2013/1/25 13:15
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2314 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない var_dump($_SESSION['order_id']); の結果はいかがでしょうか?
また data/class_extends/page_extends/shopping/LC_Page_Shopping_Complete_Ex.php に、何らかの処理が実装されていませんか? |
physics |
投稿日時: 2013/1/25 11:50
対応状況: −−−
|
新米 登録日: 2012/12/13 居住地: 投稿: 7 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない dkazuto様
ありがとうございます。 まずLC_Page_Shopping_Complete.php内の記述ですが 問題なくunset($_SESSION['order_id']);より前に記述しておりました。 また同じファイル内の $this->arrGAOrder = $arrOrder; $this->arrGAOrderDetail = $arrOrderDetail; の下に var_dump($this->arrGAOrder); var_dump($this->arrGAOrderDetail); を指定してみたところやはり何も取得されませんでした。 多分僕の書き方や記述場所が間違ってると思うのですが、 どこに入れればいいかご教授いただけますか・・? |
dkazuto |
投稿日時: 2013/1/22 0:08
対応状況: −−−
|
一人前 登録日: 2012/5/10 居住地: 投稿: 95 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない physicsさん
こんにちは。 見る限りでは、Smartyテンプレートの方に値が引き継げていないように思えます。 まずは、どこで値が抜け落ちてしまっているかを調べる必要があるかと思います。 以下の点を確認してみてください。 ・SESSIONをunsetした後に参照していないか ⇒unset($_SESSION['order_id']);よりも後にデータを取得するコードが書かれてしまっている ・スペルミスがないか ⇒PHPで記述したものと違うものをSmartyのテンプレートに書いてしまっている また、この場合のデバッグの方法として
などを指定してこの処理で値が引き継げているかを確認してみてください。 var_dump()をすると変数の中の値を表示できるので便利です。 |
physics |
投稿日時: 2013/1/19 13:27
対応状況: −−−
|
新米 登録日: 2012/12/13 居住地: 投稿: 7 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない dkazuto様
ご連絡ありがとうございます。 Chromeの開発者ツールで確認したところ、 ssl.google-analytics.comと繋がっているようです。 あと何日かおいて確認してみたのですが、やはりダメでした。 購入完了ページのソースは以下みたいに出力されていますが、 取得は出来ないようです。 var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-個人のID']); _gaq.push(['_trackPageview']); _gaq.push(['_addTrans', '', // order ID - Required!! '', // affiliation or store name '', // total - Required!! '', // tax '', // shipping '', // state or province '', // city '', // country ]); _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); })(); |
dkazuto |
投稿日時: 2013/1/15 21:53
対応状況: −−−
|
一人前 登録日: 2012/5/10 居住地: 投稿: 95 |
Re: EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない physicsさん
こんにちは。 まず、Google Analyticsにデータが送信されていることを確認してみて下さい。 Chromeの開発者ツールややFirebugのネットワーク機能を利用すると、 ブラウザがどこのサーバに通信をしにいっているかが確認できます。 Google Analyticsを連携すると、http://www.google-analytics.com/・・・ というアドレスにデータを通信している部分があるかと思います。 そこで、Google Analyticsにデータを送信していますので、 その通信があることを確認してみて下さい。 また、Google Analyticsは結果が反映されるまでに24時間かかると公表しています。 実際には2〜3時間で反映されることが多いので、 もう少し時間をおいてから結果を確認してみて下さい。 |
physics |
投稿日時: 2013/1/15 19:54
対応状況: −−−
|
新米 登録日: 2012/12/13 居住地: 投稿: 7 |
EC-CUBE2.11.4 Google Analytics eコマースタグで注文情報の取得ができない お世話になります
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=8266&forum=10&post_id=40024#forumpost40024 http://blog.nakachi.me/2011/12/ec-cube2-11%E7%B3%BB%E3%81%A7google-analytics%E3%81%AEe%E3%82%B3%E3%83%9E%E3%83%BC%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%82%AD%E3%83%B3%E3%82%B0%E3%82%92%E8%A1%8C%E3%81%86%E6%96%B9%E6%B3%95/ 等を参考に注文情報の抽出を試みてるのですが上手くいきません。 設定した内容は以下のとおりです。 eccube-2.11.4\data\class\pages\shopping\LC_Page_Shopping_Complete.phpのactionに $objPurchase = new SC_Helper_Purchase(); $arrOrder = $objPurchase->getOrder($_SESSION['order_id']); $arrOrderDetail = $objPurchase->getOrderDetail($_SESSION['order_id']); $this->arrGAOrder = $arrOrder; $this->arrGAOrderDetail = $arrOrderDetail; \data\Smarty\templates\default\site_frameに <!--{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 ]); <!--{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コマースの設定もチェック済みですが上記の内容では抽出出来ませんでした ご教授頂ければと思います。 「UA-***」には個人のプロパティIDを入力してます。 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |