bretrzaun / matomo-bundle
Symfony 扩展包,用于添加 Matomo 跟踪代码的 twig-function。
2.6.0
2020-03-06 08:56 UTC
Requires
- php: >=7.1
- ext-json: *
- symfony/config: ~3.0|~4.0
- symfony/dependency-injection: ~3.0|~4.0
- symfony/http-kernel: ~3.0|~4.0
- twig/twig: ^1.34|^2.0
Requires (Dev)
- phpunit/phpunit: ~7.0
- symfony/phpunit-bridge: @dev
README
一个帮助您在项目中使用 Matomo(前称 Piwik)开源分析平台的 Symfony 扩展包。
它包含一个可以插入网站跟踪代码的 Twig 函数。此外,您可以通过简单的配置开关关闭它,这样您就不会在开发环境中进行跟踪。
安装
composer require webfactory/piwik-bundle
在 app/AppKernel.php
中启用扩展包
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Webfactory\Bundle\PiwikBundle\WebfactoryPiwikBundle(), ); }
用法
在视图中的某个位置,在 </body>
标签关闭之前插入
{{ piwik_code() }}
这将添加适当的 Matomo 跟踪代码,如 API 参考中所述。
配置
您可以在 config.yml
中配置扩展包。完整示例
webfactory_piwik: # Required, no default. Must be set to the site id found in the Matomo control panel site_id: 1 # Required, has default. Usually, you only want to include the tracking code in a production environment disabled: '%kernel.debug%' # Required. no default. Hostname and path to the Matomo host. piwik_host: my.piwik.hostname # Required, has default. Path to the tracking script on the host. tracker_path: "/js/"
调用 JavaScript 跟踪 API
JavaScript 跟踪 API 提供了多种方法来设置页面名称、跟踪搜索结果、使用自定义变量等等。
通用的 piwik()
函数允许您控制 _paq
变量并向其中添加额外的 API 调用。例如,在您的 Twig 模板中,您可以编写
<!-- Somewhere in your HTML, not necessarily at the end --> {{ piwik("setDocumentTitle", document.title) }} {{ piwik("trackGoal", 1) }} <!-- Then, at the end: --> {{ piwik_code() }} </body>
请注意,当您调用 trackSiteSearch
时,这将自动禁用默认执行的 trackPageView
调用。这是推荐的行为。
致谢、版权和许可
此代码由德国波恩的 webfactory GmbH 编写。我们是一家专注于 PHP(主要使用 Symfony)的软件开发机构。如果您是寻找新挑战的开发者,我们很愿意听取您的意见!
版权 2012 – 2020 webfactory GmbH,波恩。代码在 MIT 许可证下发布。