Best practises for creating an integration between Matomo and a CMS
This page is for developers who would like to create or improve an existing Matomo Integration Plugin for a CMS
You will find a basic specification for what your Plugin / Addon / Module, could do in order to integrate Matomo in a useful way for the user.
Design of a CMS plugin that integrates Matomo
If you are planning to contribute a new plugin for an existing CMS, please consider the following recommendations. Most Matomo Plugins listed above have three parts:
Feature 1) Automatically Insert Tracking Code
- Add in the footer of all pages, the javascript code to track Visits, Pageviews, optionally track interesting Custom Variables or Ecommerce interactions.
Feature 2) Admin Settings
- User can set the Matomo URL, token_auth, site id, choose default date & period to load the dashboard.
Feature 3) Display Matomo Reports in your admin panel
-
In the admin section of your CMS or software you are integrating with, we recommend to add a new menu to show the Web Analytics reports for the website.
-
Many plugins above will have a new entry in a menu, that loads the Matomo Dashboard in an iframe (click here to view an example of the dashboard you can embed). You can also embed individual widgets: in Matomo, click on the “Widgets” link in the top menu to view all examples (many useful ones to choose from).
Publishing your plugin to share with the community
- Please consider releasing under the GPL license, a simple step to ensure the freedom of your users.
- Consider publishing the source code on GitHub, so others can easily contribute.
- Write a short presentation page in a README, with the description of your Plugin/Module/Extension, some screenshots, instructions to download & install the plugin, and contact information if a bug is found.
- Once your plugin is published online, please contact us to get it listed here we will need the following information: Plugin author name, Software name (eg. WordPress), Software website URL (eg. wordpress.org), Software logo image (eg. WordPress logo), Plugin name (eg. WP-Matomo WordPress Plugin), Short plugin description, and URL to the plugin (eg. Github, etc.).
- If there is an official plugin repository for the platform you are writing (such as WordPress Plugin Repository for WordPress), please submit your Matomo (Piwik) plugin to this repository/marketplace to ensure it gets visibility.
Thank you for considering writing a new quality integration between Matomo and the other web product you use!