表单分析JavaScript跟踪API参考

本指南是JavaScript跟踪API参考形式分析

您可能还对表单分析感兴趣HTTP API报告参考

调用Form Analytics跟踪器方法

matomo.js跟踪器我们区分两种方法:

  • 调用一个跟踪器实例方法只影响特定的Matomo(以前是Piwik)跟踪器实例。在文档中,当方法名包含单个点(),例如FormAnalytics.disable
  • 调用一个静态方法影响所有创建的跟踪器实例。在文档中,当方法名包含时,可以识别静态方法::例如,FormAnalytics: scanForForms

在大多数情况下,只有一个Matomo跟踪器将被使用,所以唯一的区别是你如何调用该方法:

  • 跟踪器方法调用via_paq.push ([FormAnalytics。$ methodName ']);或者直接在跟踪器实例上。Matomo.getAsyncTracker () .FormAnalytics。$ methodName ()
  • 静态方法调用via_paq.push ([' FormAnalytics:: $ methodName ']);或者直接在Matomo。FormAnalytics对象,如。Matomo.FormAnalytics。$ methodName ()

如果您不想使用_paq.push方法,您可以定义window.matomoFormAnalyticsAsyncInit方法,该方法在表单跟踪器初始化后立即调用:

window.matomoFormAnalyticsAsyncInit= function () { Matomo.FormAnalytics.disableFormAnalytics(); };

静态方法

scanForForms (documentOrHTMLElementToScanForForms)

默认情况下,Matomo自动检测您网站上的所有表单。如果在页面加载后修改DOM(例如在单页web应用程序中),您可能需要调用此方法以确保Matomo找到您的所有表单。当您调用此方法时,Form Analytics跟踪器将在DOM中搜索新表单并开始跟踪这些表单。作为参数,您可以选择传递HTMLElement如果只搜索DOM的一部分以寻找新表单。这对于单页web应用程序特别有用。如果没有给出这样的参数,整个DOM将搜索新的表单元素。

例子:

_paq.push ([' FormAnalytics:: scanForForms ']);_paq.push(['FormAnalytics::scanForForms', document.getElementById('test')]); // or Matomo.FormAnalytics.scanForForms(); Matomo.FormAnalytics.scanForForms(document.getElementById('test'));

trackForm (formElement)

这个方法几乎和scanForForms.然而,scanForForms将只检测窗体,要么是形式元素,data-matomo-form属性,或data-piwik-form属性。如果其中一个表单都不是这两种情况,则可以使用此方法确保Matomo将跟踪该元素中所有表单字段的数据。建议设置data-matomo-name或者一个data-piwik-name属性来让Matomo知道您的表单的名称。

trackFormSubmit (formElement)

默认情况下,Matomo将自动监听表单提交事件。如果你没有使用形式元素,你可能需要通过调用这个方法让Matomo知道何时提交了表单:

提交< / >

trackFormConversion (nodeOrFormName formId)

Matomo区分了表单提交和表单转换。在转换表单之前,表单可能会被提交多次,因为访问者可能必须更正表单验证错误。要跟踪表单转换,您可以在Matomo管理中配置一个或多个页面,只要访问者查看这些配置的页面中的任何一个,转换就会被跟踪。如果在成功提交表单后没有将用户重定向到特定页面,则可以通过调用此方法手动触发表单转换。

提交< / >

disableFormAnalytics ()

允许您完全禁用任何形式的跟踪。这是有用的,如果你在你的Matomo管理多个网站,有一些网站,你不想跟踪任何形式。如果在跟踪代码的早期调用或通过matomoFormAnalyticsAsyncInit方法,它甚至不会搜索网页上的表单。

enableFormAnalytics ()

如果您已禁用通过窗体跟踪disableFormAnalytics (),您可以在稍后通过此方法启用它。建议拨打电话scanForForms ()在启用表单跟踪以确保它检测到您的网站或应用程序中的所有表单之后。

isFormAnalyticsEnabled ()

允许您检测表单跟踪当前是否启用。返回一个布尔值真正的

enableDebugMode ()

启用调试模式,将调试信息记录到浏览器的开发人员控制台。这应该在生产环境中启用。

setMatomoTrackers ()

允许您设置跟踪器在跟踪表单时应该使用的跟踪器实例。可以是单个跟踪器实例,也可以是Matomo跟踪器实例的数组。当您使用多个Matomo跟踪器实例时,这是有用的Matomo.getTracker而不是Matomo.addTracker

setTrackingTimer (delayInMilliSeconds)

默认情况下,跟踪器在用户与表单交互1.5秒后向您的Matomo发送跟踪请求。如果用户在这1.5秒内多次与表单交互,跟踪请求将再延迟1.5秒。这样,当用户与您的表单进行大量交互时,Matomo可以将多个表单跟踪请求分组为一个请求。如果希望更频繁或更少地发送此更新,可以使用此方法设置不同的延迟。通常不需要调用此方法,除非您想减少发送到服务器的请求数量。

追踪方法

禁用()

禁用对此Matomo实例的任何表单跟踪。如果你的网站上只有一个追踪器,这和打电话是一样的disableFormAnalytics ().如果你的网页上有多个Matomo跟踪器,你可以通过调用这个方法禁用特定Matomo实例的跟踪。

例子:

_paq.push ([' FormAnalytics.disable ']);//如果你正在使用多个Matomo跟踪器,并且只想为特定的跟踪器禁用它:var tracker = Matomo。getTracker (matomoUrl matomoSiteId);tracker.FormAnalytics.disable ();

使()

如果通过禁用了表单跟踪禁用(),可以通过此方法重新启用。

isEnabled ()

检测窗体跟踪当前是否为此跟踪器启用或禁用。返回一个布尔值真正的

你可能会感兴趣表单分析HTTP API参考

Baidu