Matomo核心——退出

本指南适用于Matomo核心开发人员。信息集成退出形式请查看退出跟踪指导

两种不同选择退出形式实现包含在Matomo,本指南解释了它们是如何工作的和背后的推理实现。

背景

直到Matomo 4.12版本包括一个退出表单生成器实现为一个iFrame将为JavaScript跟踪设置第三方同意饼干。与浏览器支持第三方饼干逐渐被淘汰,这个iFrame退出退出形式的解决方案可以取代担任网站方并设置cookies的一部分。

Matomo JavaScript跟踪包括退出功能_paq.push ([' optUserOut ']);_paq.push ([' forgetUserOptOut ']);提供一个简单的、标准化的方式来记录用户选择退出,然而加载第三方跟踪JavaScript可以用严格的安全设置和不可靠的用户可能不适合一些网站。

由于这种提供了两个选择退出形式实现,一个试图使用Matomo JavaScript追踪代码记录选择退出,一个实现是完全自包含的,没有服务器请求和使用远程资源。这允许网站管理员的灵活性选择方法最适合他们的环境。

退出使用Matomo JavaScript追踪

嵌入代码包括:

  • 一个< div >id将包含退出形式,也可以放置在页面的任何地方风格。
  • 一个<脚本>标签从CoreAdminHome加载JavaScriptoptOutJS控制器方法,通过配置URL参数。
< div id = " m-opt-out " > < / div > < script src = " / index . php ?模块= CoreAdminHome&action = optOutJS&language = auto&div = m-opt-out " > < /脚本>

optOutJS方法返回动态构建JavaScript创建退出形式基于提供的URL参数。文本翻译完成服务器端根据请求的或自动检测语言。

optOutJSJavaScript将保持活跃,直到DOMContentLoaded页面事件触发,此时将执行下列过程:

直接的饼干 使用JS追踪 设置 使用cookie 如果没有 跟踪器 启用? JS追踪 发现? 没有 超时 打吗? 从JS追踪获得退出状态 显示选择退出消息 使用 _paq.push 退出设置状态 是的 是的 没有 日志控制台错误 没有 选择退出 JS加载 是的 自定义 饼干 参数? 是的 得到的退出状态 定制的饼干 显示选择退出消息 直接写饼干使用 自定义参数 得到的退出状态 默认的饼干 显示选择退出消息 直接写饼干使用 默认参数 没有 完成 完成 完成

错误消息也会显示在内容< div >如果饼干被禁用或者连接是不安全的。如果指定的内容< div >没有找到页面上的那一个< div >将因此可以显示一个错误消息。

URL参数的描述,请参阅退出跟踪指导

退出使用独立的代码

独立的退出嵌入代码包括:

  • 一个内容< div >id将包含退出形式,也可以放置在页面的任何地方风格。
  • 一个<脚本>标签包含所需的所有JavaScript退出形式,所有设置都在内联对象。

文本翻译作为内联存储设置和生成的嵌入代码生成时选择的语言。

< div id = " matomo-opt-out " > < / div > <脚本>的var设置= {“showIntro”:真的,“divId”:“matomo-opt-out”、“cookiePath”:“”,“cookieDomain”:“”,“cookieSameSite”:“松懈”,“OptOutComplete”:“选择退出”、“剪”:“剪”};…其他JavaScript代码删除清晰……<脚本>

独立的退出代码将直到reamain无所作为DOMContentLoaded页面事件触发。然后,它将试图将退出表单上使用以下过程:

  • 试图找到内容div的id,如果没有发现新的div将被添加到页面以显示一个错误。
  • 检查饼干是否启用,如果不是那么一个错误将所示内容div。
  • 检查连接HTTPS如果安全使用cookie,如果不是那么一个错误将所示内容div。
  • 小内联JavaScriptMatomoConsenthasConsent方法用于读取同意饼干和确定退出状态。
  • 退出形式呈现在使用内联内容div设置。
  • 复选框选择退出形式连接到事件调用MatomoConsent.consentGiven ()Matomo.consentRevoked ();根据需要设置或删除同意饼干。

内联设置的描述,请参阅退出跟踪指导

Baidu