EC-CUBE2.11にEC-CUBEにGoogle Analytics Mobileを設置する方法(改訂版)で書いた方法を適用しても表示されない!とコメントをいただいたので改めて設置方法を探ってみたいと思います
1.トラッキング コードの取得
https://www.google.com/analytics/
ログインして一番下にある[プロファイルを追加»]
URLをいれて完了
[詳細]タブ>[携帯電話向けのサイト]>[保存して終了]
携帯電話向けのサイトで表示されたトラッキングコードを使用します
2.テンプレートにトラッキングコードを貼り付ける
正直あまりいい方法ではないのですが一番確実な方法なのでgoogleさんに言われたとおりの上に貼り付けます
/data/Smarty/templates/mobile/site_frame.tpl 24行目に挿入
~~~
// Copyright 2009 Google Inc. All Rights Reserved.
function googleAnalyticsGetImageUrl() {
global $GA_ACCOUNT, $GA_PIXEL;
$GA_ACCOUNT = “MO-XXXXXXXX-XX”;//自分のロラッキングコードに変更する
$GA_PIXEL = ROOT_URLPATH .”ga.php”;
$url = “”;
$url .= $GA_PIXEL . “?”;
$url .= “utmac=” . $GA_ACCOUNT;
$url .= “&utmn=” . rand(0, 0x7fffffff);
$referer = $_SERVER[“HTTP_REFERER”];
$query = $_SERVER[“QUERY_STRING”];
$path = $_SERVER[“REQUEST_URI”];
if (empty($referer)) {
$referer = “-“;
}
$url .= “&utmr=” . urlencode($referer);
if (!empty($path)) {
$url .= “&utmp=” . urlencode($path);
}
$url .= “&guid=ON”;
return str_replace(“&”, “&”, $url);
}
~~~
imgタグを貼り付ける
bodyタグのすぐ上に貼り付けます
幅と高さを指定しないと最近の携帯では表示されちゃうことがあるので指定します
/data/Smarty/templates/mobile/site_main.tpl 139行目付近に挿入
~~~
$googleAnalyticsImageUrl = googleAnalyticsGetImageUrl();
4.ga.phpダウンロードしをhtml直下に配置する
html/ga.php
5.SC_MobileImage.phpに1行追加する
~~~
// HTML中のIMGタグを変換後のファイルパスに置換する
foreach ($images[1] as $key => $path) {
if (preg_match(‘|/ga\.php|’, $path)) continue; // 追加
$realpath = html_entity_decode($path, ENT_QUOTES);
$realpath = preg_replace(‘|^’ . ROOT_URLPATH . ‘|’, HTML_REALDIR, $realpath);
$converted = $imageConverter>execute($realpath);
if (isset($converted[‘outputImageName’])) {
$buffer = str_replace($path, MOBILE_IMAGE_URLPATH . ‘/’ . $converted[‘outputImageName’], $buffer);
} else {
$buffer = str_replace($images[0][$key], ‘
コメント
[…] ■「Google Analytics 携帯用コードをEC-CUBEに埋め込む方法」 ほとんどのサイトが、この方法で動くと思います。 説明も順を追って解りやすいです。 […]
はじめまして。
この記事を見て、今更ながらモバイルサイトへのAnalytics導入に奮闘している次第です。
記事にあるとおり導入のための手順を踏み、該当サイトへアクセスした際に下記のようにエラーが出てimgタグの書き出しは行われていない様子です。
Fatal error: Call to undefined function googleAnalyticsGetImageUrl() in/var/www/html/www.e-noson.com/public_html/data/Smarty/templates_c/mobile/%%58^587^5876E692%%site_main.tpl.phpon line 171
Fatal error: Class ‘MDB2’ not found in /var/www/html/www.e-noson.com/public_html/data/class/SC_Query.phpon line 76
templates_cのキャッシュファイルは削除しましたが、同じエラーが出てしまいます。
当方の環境および情報は下記のとおりです。
サイト: http://www.e-noson.com/
EC-CUBEバージョン: 2.11.4
PHPバージョン: PHP 5.3.3
DBバージョン: PostgreSQL 9.1.9
何かしら改善のためのヒントを頂戴いたしたく、宜しくお願いします。
2.テンプレートにトラッキングコードを貼り付ける
の部分はちゃんと出来ていますでしょうか?