This is the matomo tag manager plugin for CKAN. It includes the necessary JavaScript file to apply matomo tracking via the tag manager.
- Matomo tracking with the flexibility from the tag manager.
This plugin is developed and tested on CKAN version 2.11
Compatibility with core CKAN versions:
CKAN version | Compatible? |
---|---|
2.11 | yes |
To install ckanext-matomo_js:
- Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
- Clone the source and install it on the virtualenv
cd /usr/lib/ckan/default/src
python3 -m pip install -e git+https://github.com/JiscSD/ckanext-matomo-js.git#egg=ckanext-matomo-js
then reset the permissions for the new ckanext-matomo-js directory to 'ckan'
-
Add
matomo_js
to theckan.plugins
setting in your CKAN config file (by default the config file is located at/etc/ckan/default/ckan.ini
). -
Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:
sudo service apache2 reload
or if the server is on AWS, called
sudo systemctl restart nginx
To update ckanext-matomo_js to a new version:
- Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
- pull the latest version then install it on the virtualenv
cd /usr/lib/ckan/default/src/ckanext-matomo-js
git pull
pip install -e .
then reset the permissions for the ckanext-matomo-js directory to 'ckan'
- Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:
sudo service apache2 reload
or if the server is on AWS, called
sudo reboot now
In order for the plugin to work, you need to set the url to the tag manager container in the javascript file.
Once the plugin has been installed, go to the matomo.js file and replace the url tag .src='<src url>'
with the url of the tag manager container.
To install ckanext-matomo_js for development, activate your CKAN virtualenv and do:
python3 -m pip install -e git+https://github.com/JiscSD/ckanext-matomo-js.git#egg=ckanext-matomo-js
cd ckanext-matomo-js
python3 setup.py develop
python3 -m pip install -r dev-requirements.txt
To run the tests, do:
pytest --ckan-ini=test.ini
If ckanext-matomo_js should be available on PyPI you can follow these steps to publish a new version:
-
Update the version number in the
setup.py
file. See PEP 440 for how to choose version numbers. -
Make sure you have the latest version of necessary packages:
pip install --upgrade setuptools wheel twine
-
Create a source and binary distributions of the new version:
python setup.py sdist bdist_wheel && twine check dist/*
Fix any errors you get.
-
Upload the source distribution to PyPI:
twine upload dist/*
-
Commit any outstanding changes:
git commit -a git push
-
Tag the new release of the project on GitHub with the version number from the
setup.py
file. For example if the version number insetup.py
is 0.0.1 then do:git tag 0.0.1 git push --tags