Twig extension to provide Piwik integration
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Piwik Twig integration

Build Status Coverage Status

This library integrates Piwik into Twig.


composer require "mnapoli/piwik-twig-extension"


You have 2 ways to give the Piwik host and site ID:

  • When creating the extension (recommended)
$twig->addExtension(new PiwikTwigExtension('', 123));

In the templates, you then just call {{ piwik() }}.

This solution is appropriate in most cases.

  • When calling the Twig function
$twig->addExtension(new PiwikTwigExtension());

In the templates, you have to provide the host and site id: {{ piwik('', 123) }}.

This solution is perfect if you want to be able to customize the site id or Piwik host in the template.

Don't forget to add the tracker script at the end of the HTML document, for example:

<!DOCTYPE html>

        {{ piwik() }}

Development environment

In some environments, you want to disable Piwik's tracking (for example on your local machine). That is easily possible by passing false for the $enabled parameter:

$twig->addExtension(new PiwikTwigExtension($host, $siteId, false));


This library is released under the MIT license.