在上一篇文章《Webtrekk代码部署指南之初级篇》介绍了Webtrekk基本代码部署,部署完成之后只能看一些基本报表,实际上很多特殊的需求是无法实现的,尤其是通过自定义功能进行配置的报表无法查看,本篇来介绍一些Webtrekk中常用的自定义配置,包括Webtrekk自定义页面名称、自定义事件追踪、自定义产品信息跟踪、订单信息跟踪、自定义广告跟踪代码、自定义站内搜索、自定义表单跟踪、下载跟踪、自定义客户ID.
1. 自定义ContentId
ContentId可以理解为页面名称,在之前的文章中,我们介绍了两种ContentId的赋值方法,在标准Js中contentId值为空,在noscript中我们填入0,目的是通过系统参数自动填写。
比如一个URL为:http://www.website.com/product_abc.htm的网页,通过自动填写后的contentId为www_website_com.produkt_abc_htm
看出问题了吧,系统把/和.都进行了转换,这对于我们分析页面产生了阻碍;另一方面,页面contentId会关系到后期页面层级的设置问题(这是主要影响,具体原因会在后期系统配置文章中解析),因此大多数情况下我们需要通过传参的方法赋值。
赋值的方法很简单,只需要在JS中wt.contentId变量中传入相应值即可,如下是我的contentId设置
- wt.contentId = “网站地图 | 数据研究与商业应用”;
那么对于noscript的参数,其中的参数值需要进行UTF8转码后才能传入参数中,否则会出现乱码。比如
比如还是上面的我的页面名称,在noscript中代码应该如下:
- <img src=“http://track.wt-eu02.net/111111111111111,222222222222222/wt?p=325,
- 网站地图 | 数据研究与商业应用” …>
2. 自定义事件追踪
其实在上篇文章的基本部署已经可以实现全站所有事件追踪,但Webtrekk提供的事件追踪方法还包括很多参数可以调配,这些都适用于特定场景。
link还是standard的问题
在基本配置代码中,link和standard都可以选择,那么这两个的区别以及和应用是什么呢?
- linkTrack : “standard”
- link:如果选择这个值,那么页面所有的事件包括链接、js功能、页面滑动条滚动(如果启用这个plugins)都将被跟踪。
- standard:如果选择这个值,那么Webtrekk在事件跟踪中只跟踪页面中的链接点击,即属于link上的行为将被记录;除此之外的其他事件行为不被标记——除了页面link点击还包括JS功能、页面滑动条滚动等,这些都属于页面类的事件,在standard将不被跟踪。
针对特定事件的跟踪
上述代码最小的层级是针对一个页面启用,意味着启用后页面上的所有事件都将被跟踪,如果我们只想跟踪页面上某个事件呢?Webtrekk也提供了“手动”针对单一事件的跟踪方法:
- <a href=“contact.htm” onclick=“wt.sendinfo({linkId:’acttionname’);”>Link to
- contact page</a>
上述是一个典型示例,针对某个链接事件的跟踪 ,通过onclick触发。很多时候有些人会问,这种功能性的触发支持其他事件吗?比如onMouseDown、onMouseUp、onMouseOver、onKeyPress、onBlur、onFocus等?其实Webtrekk就是一个容器,它实现的是你按照你的需求把数据发给它,在事件触发过程中,它关心的不是什么时候触发(这是你关心的问题),你只需要按照上述代码格式,在你需要的时候把数据发送给它就好。因此事件都支持。
文章来源:数据研究与商业应用宋天龙(tony song),转载请注明。
3. 针对产品信息跟踪
产品信息跟踪是电子商务跟踪的基本模块,需要特定的代码进行跟踪处理,跟踪的信息包括产品名称、分类、数量、价格、状态等。
标准代码
- // products
- wt.product = “pullover;jeans”; // products
- wt.productCategory = {
- 1 : “tops;jeans”, // optional: 1 = category
- 2 : “noname;levis” // optional: 2 = brand
- };
- wt.productQuantity = “2;1″; // optional: quantity
- wt.productCost = “99.90;69.95″; // optional: costs
- wt.productStatus = “conf”; // optional: product status: (add|conf|view)
代码中的变量含义如下:
- wt.product:产品名称
- wt.productCategory:产品类别(注:该功能需要提前在Webtrekk中进行设置)
- wt.productQuantity:产品数量
- wt.productCost :产品总价格,(单价×数量)
- wt.productStatus:产品状态,view为产品终端页时启用,add为加入购物车页启用,conf为订单在线提交成功页启用。
4. 订单信息跟踪
在订单提交成功页面,除了上述代码以下,还需要添加全局性的订单信息,代码如下:
- wt.orderId = “M-12345″;
- wt.orderValue = “52.99″;
代码中的变量含义如下:
- wt.orderId:订单ID,与线下订单数据一致的订单编号
- wt.orderValue:订单价值,与产品总价格的不同之处在于订单价值会受折扣、优惠券、运费等影响,因此可能大于或小于产品总价格。
同时,在订单提交成功页,也可以加入自定义参数来丰富跟踪数据,如订单状态、产品尺寸、颜色等。关于自定义参数参数,是Webtrekk的重点,以后会单独开篇来讲,自定义功能的强大是在底层数据采集上与通过的分析工具如GA的重要区别之一。
5. 自定义广告跟踪
上篇文章中已经介绍了自定义光跟踪代码的配置,代码如下:
- wt.mediaCode = “mc”; // mediacode
通过这段代码,你可以任意定制现在用的跟踪代码,同时可以减少业务更换成本。同时,Webtrekk还提供了一系列特殊的变量,如:
- wt.mediaCodeCookie = “sid”; // 用来对广告在一次visit中多次进入进行排重,只计算第一次
- wt.campaignId = “mc%3DNewsletter_2010_08″; // campaign id 用来对广告进行分类
- wt.campaignAction = “view”; // 用来识别广告动作是基于浏览还是惦记,值仅为 view OR click
这些参数可以丰富对自定义广告的跟踪。
6. 自定义站内搜索
站内搜索有两种跟踪方式,这两种方式跟踪post和get进行区分。如果是以get方式进行响应的,只需要在webtrekk后台进行设置即可;如果是以post实现的,需要特定跟踪代码,代码如下:
- // internal search
- wt.internalSearch = “adidas shoes”;
注:区分get和post方式很简单,如果搜索后页面有引导关键字,那么就是get方式;如果没有就是post方式。
7. 自定义表单跟踪
在上文中我们已经提到了表单跟踪的设置,但还需要额外的代码配合进行数据采集——标记表单,表单被标记后,配合form : “1″才能完成数据采集。
- <input type=“hidden” name=“wt_form” value=“1″>
通过两段代码,就能收集到相应启用表单跟踪功能页面的表单数据。
当然,如果你只想跟踪特定页面上的特定表格,不需要用上述的表单标记代码,需要用到另外一套代码:
- Example of a complete configuration:
- var wt = new webtrekkV3();
- wt.contentId = “contact”;
- wt.formTrackInstall(document.forms[0]);
- wt.sendinfo();
上述代码标粗的部分的意思是只对相关启用的form进行跟踪,如上述代码启用的表单是forms[0] 。
8. 下载跟踪
下载跟踪的方法有两种,一种是在4.自定义事件跟踪 中的功能触发,另一种是全局性设置代码,代码格式如下:
- Example of a complete configuration:
- // action tracking
- var webtrekk = {
- linkTrack = “link”
- };
- var wt = new webtrekkV3(webtrekk);
- wt.linkTrackDownloads = “pdf;doc”;
如上代码中的下载格式,需要根据实际值修改。
12. 自定义客户ID
在很多时候我们会跟踪用户登录或注册ID,在webtrekk已经集成了这一方法,并且该方法可以直接与CRM系统数据集成应用。
自定义客户ID的收集方法很简单:
- // customer id
- wt.customerId = “372d1a04d003eebc09e17330d5d3117c”;
其中ID后面的值根据实际情况赋值即可,通常可以作为唯一标识的值包括用户ID、用户名、邮箱、身份证等,但建议如果是用户真实邮箱或身份证信息,需要进行编码以保护自身和用户信息安全。
Webtrekk是如何与CRM集成应用的?Webtrekk提供了直接变量收集相关CRM信息。通过变量“urmCategory”可以数据扩展和分析。代码示例如下:
- // URM categories
- wt.urmCategory = {
- 1 : “male”,
- 2 : “single”
- };
上述代码中的变量可自行添加。注:所有类别、自定义参数都需要提前在Webtrekk前台设置进行配置,然后才能完成数据正确采集和处理。