ajax - 谷歌分析/标签管理器内部站点搜索 API
问题描述
我需要跟踪我在网站上放置的内部网站搜索的网站搜索查询词。
我的计划是在 Google Analytics 中启用站点搜索设置。
但是,我的站点搜索页面不使用站点搜索用来跟踪查询的标准查询字符串变量。相反,我的站点搜索页面是通过 AJAX 更新的。是否可以通过 API 调用将查询和类别发送到 Google Site Search 跟踪。
我还需要跟踪进行搜索的用户的用户名(这是在登录之后,所以所有用户都将登录)。有没有办法可以发送某种元数据来包含用户名?
如果我应该使用其他类型的工具(例如事件跟踪),请告诉我站点搜索跟踪是否不是解决此问题的正确方法。
我正在使用 ASP.NET MVC:请参阅下面的示例代码:
$.ajax({
url: '/Search/',
type: 'POST',
dataType: 'json',
data: { search_phrase:
search_phrase
},
success: function(data) {
解决方案
您可以成功发送“虚拟”综合浏览量回调组合合适的值,而不是实际的文档位置,如
success: function(data) {
ga('send', {
hitType: 'pageview',
page: location.origin + 'search?q=' + search_phrase
});
}
如果您使用 GTM,您可以将搜索词组推送到 dataLayer,然后为该自定义事件触发带有改写位置字段的 Google Analytics(分析)标签:
success: function(data) {
dataLayer.push({
event: 'internal search', // allows you to set up custom event
search_phrase: search_phrase
});
}
推荐阅读
- go - GO中如何通过reflect获取struct字段的地址
- ios - 当权限从设置更改时,RXSwift 应用程序崩溃
- android - 如果android应用程序崩溃或手动杀死,如何清理资源?
- android - 带有登录/注册/主页流程的导航组件
- python - 来自 AngularJS 的 Http Post 显示为空,我做错了吗?
- html - 即使设置为 position: absolute; 页脚也不会粘在底部
- node.js - 计划的 Cron 作业未在 Node.js BOT 中自动运行
- c - 仅当我将 Serial.println(" ") 行放入循环时,Arduino 串口才打印所有行
- javascript - 使用 javascript 的石头、剪纸和石头游戏
- javascript - 如何在 Java 代码中使用我的 chromedriver 执行 JS 命令?