我看到大量的流量,每天约100次访问,来自images.google网域,但在Google Analytics中显示为推介流量而非有机流量。我有一些自定义代码可以将关键字拉出来,并为Google Image Search引荐者的几种变体设置一个有机来源,它适用于我可以从服务器日志中运行它的每个引荐来源。
var ref = document.referrer;
if (ref.search(/www.google/) != -1 && ref.search(/imgres/) != -1) {
var regex = new RegExp("www.google.([^\/]+).*");
var match = regex.exec(ref);
ref = 'http://images.google.' + match[1] + '?' + ref.split('?')[1];
_gaq.push(['_setReferrerOverride', ref]);
} else if (ref.search(/maps.google/) != -1 && ref.search(/q=/) == -1) {
var regex = new RegExp("maps.google.([^\/]+).*");
var match = regex.exec(ref);
ref = 'http://maps.google.' + match[1] + '?q=' + encodeURIComponent('(not provided)');
_gaq.push(['_setReferrerOverride', ref]);
}
function splitUrl(url) {
var vals = {};
var split = url.split('?');
vals.base = split[0];
if(split.length > 1) {
var vars = split[1].split('&');
vals.params = {};
for(var i = 0, len = vars.length; i < len; i++) {
var valSplit = vars[i].split('=', 2);
vals.params[valSplit[0]] = valSplit[1];
}
}
return vals;
}
function joinUrl(urlObj) {
var vars = [];
for(key in urlObj.params)
if(urlObj.params.hasOwnProperty(key))
vars.push(key + '=' + urlObj.params[key]);
return urlObj.base + '?' + vars.join('&');
}
//fix keyword for old google image search
if(ref.match(/^http:\/\/images\.google\./) || ref.match(/^http:\/\/images\.google$/)) {
var refUrl = splitUrl(ref);
if(refUrl.params.prev && !refUrl.params.q) {
var prev = decodeURIComponent(refUrl.params.prev);
if(prev.indexOf('?q=') !== -1 || prev.indexOf('&q=') !== -1) {
var prevUrl = splitUrl(prev);
refUrl.params.q = prevUrl.params.q;
if(!refUrl.params.q)
refUrl.params.q = encodeURIComponent('(not provided)');
delete prevUrl.params.q;
refUrl.params.prev = encodeURIComponent(joinUrl(prevUrl));
}
_gaq.push(['_setReferrerOverride', joinUrl(refUrl)]);
} else if(!refUrl.params.q) {
refUrl.params.q = encodeURIComponent('(not provided)');
_gaq.push(['_setReferrerOverride', joinUrl(refUrl)]);
}
}
_gaq.push(['_addOrganic', 'images.google', 'q']);
_gaq.push(['_addOrganic', 'maps.google', 'q', true]);
这会处理所有类似的引用: http://images.google.com/?q= 和 http://www.google.com/?imgres=
我不知道推荐流量来自哪里。有没有人见过这个?
答案 0 :(得分:0)
Google自然会将此域名识别为推介,因为GA默认只包含一定数量的域名作为搜索引擎。
要解决此问题,您可以使用“addOrganic()”方法将此类域包含为搜索引擎。
要使用此方法,您不仅必须指定搜索引擎的域,还必须指定用于搜索的查询字符串参数。对于images.google.com,它是“q”。
在您的GA跟踪代码中,添加以下行: _gaq.push(['_ addOrganic','images.google.com','q',true]);
您可以在Ga Help Site上获得更多信息。
希望此信息有所帮助,
Augusto Roselli 网络分析 - digitalcube @_digitalcube www.dp6.com.br
答案 1 :(得分:0)
如果有人点击了标准Google搜索中显示的图片,而不是images.google,则该网址可能会有所不同。你应该从那里尝试一些网址。但除此之外,如果用户登录Google帐户,普通Google上弹出的Google图片链接将不包含查询字符串。它发生在2011年10月这里有几个链接:
在普通有机谷歌链接上,Google Analytics会将这些访问显示为来自有机媒体的(not provided)
关键字。但是,如果您单击SERP上的图像,它将不会被识别为有机介质。它将被识别为推荐,这可能就是你所看到的。
因此,您需要做的是验证Google图片链接是否包含q
参数。如果它不是来自已记录的用户,则应报告为(not provided)
以与Google有机关键字保持一致。只需将&q=(not provided)
附加到您获得的_setReferrerOverride
网址即可。请记住在追加到网址之前对其进行网址编码。
我也在这里发布我使用的代码。它来自Google Forums。但它与您的非常相似,但尚未处理(not provided)
关键字问题。
请注意,它与您的非常相似,但有一些显着差异。
这是我目前使用的代码:
//handle google images referrer
var ref = document.referrer;
if ((ref.search(/google.*imgres/) != -1)) {
var regex = new RegExp("\.google\.([^\/]+)(.*)");
var match = regex.exec(ref);
_gaq.push(
['_setReferrerOverride', 'http://images.google.' + match[1] +
unescape(match[2])],
['_addOrganic', 'images.google', 'q', true]
);
}
我将更新我的代码以处理(not provided)
谷歌图片链接,并会在我发布后立即发布。