{"id":16233487,"url":"https://github.com/karser/matomoclickheatplugin","last_synced_at":"2025-03-19T14:31:33.696Z","repository":{"id":148328811,"uuid":"226848281","full_name":"karser/MatomoClickHeatPlugin","owner":"karser","description":"ClickHeat 3 is a visual heatmap of clicks for Matomo / Piwik 3.x","archived":false,"fork":false,"pushed_at":"2020-06-07T21:36:28.000Z","size":304,"stargazers_count":12,"open_issues_count":2,"forks_count":9,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-17T08:13:50.467Z","etag":null,"topics":["clickheat","clickheat-plugin","heatmap","matomo","matomo-plugin","piwik","piwik-plugin"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/karser.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-09T10:46:52.000Z","updated_at":"2024-03-22T08:46:50.000Z","dependencies_parsed_at":"2023-04-10T16:17:25.127Z","dependency_job_id":null,"html_url":"https://github.com/karser/MatomoClickHeatPlugin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karser%2FMatomoClickHeatPlugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karser%2FMatomoClickHeatPlugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karser%2FMatomoClickHeatPlugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karser%2FMatomoClickHeatPlugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/karser","download_url":"https://codeload.github.com/karser/MatomoClickHeatPlugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244444692,"owners_count":20453777,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clickheat","clickheat-plugin","heatmap","matomo","matomo-plugin","piwik","piwik-plugin"],"created_at":"2024-10-10T13:12:50.477Z","updated_at":"2025-03-19T14:31:33.690Z","avatar_url":"https://github.com/karser.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Matomo / Piwik ClickHeat Plugin\n\n## Description\nClickHeat 3 is a visual heatmap of clicks on a HTML page for Matomo / Piwik 3.x.\nThis plugin based on [Dugwood's ClickHeat version 1.14](https://github.com/dugwood/clickheat)\nand forked from [Trung Tran's fork](https://github.com/trungtnm/plugin-clickheat)\nof [PiwikJapan ClickHeat plugin](https://github.com/piwikjapan/plugin-clickheat).\nIt is an OpenSource software, released under GPL licence, and free of charge. \n\n![image](https://user-images.githubusercontent.com/1675033/70543449-15412000-1b73-11ea-9f1a-3b6a4b9399fd.png)\n\n## Installation\n\n### Method 1: upload zip archive\nRun `make zip` and build the plugin file `MatomoClickHeatPlugin.zip`.\nThen open Matomo Settings / System / Plugins and upload the generated file. For some reason it is recognized as a theme.\n\n### Method 2: copy the plugin folder\nYou have to copy the source code of this plugin to your `piwik/plugins` folder.\nSince a weird issue, Piwik does not recognize this plugin, you have to manually add it to your Piwik `config.ini.php` as below:\n```\n...\nPlugins[] = ClickHeat\n```\nThen browse your Piwik `System \u003e Plugins`, this plugin will be automatically installed.\n\nThis plugin installer will make directories:\n* piwik/tmp/cache/clickheat/cache\n* piwik/tmp/cache/clickheat/logs.\n\nAnd these MySQL tables : `piwik_click_heat`, `piwik_click_heat_group`\n\nThe default logger is MysqlLogger. In case you want to use `Redis` as `Logger`,\nyou need to install `predis/predis` via Composer to make this plugin works properly.\n```\ncomposer require predis/predis\n```\n\nThis plugin uses a different tracker. Please click on the link \"JavaScript\" in `Visitors \u003e Click Heat` menu and put the special Javascript codes into your website. It is recommended to name your `Group` for easier management.\n## Logger and Adapter\n- Logger used to store logging data of users's clicks on webpages.\n- Adapter used to fetch logging data and showing in heat map report.\n\n    Each logger and adapter is associated with a different data storage system (see in following sections). You can combine logger and adapter together for matching your needs and better performance, such as: use `RedisLogger` for fast serving and use `MySqlAdapter` for better data storage.\n    \n    Available loggers: `Redis`, `MySQL`, `File system`\n    Available adapters: `MySQL`, `File system`\n    \n### Logger\nYou can use different loggers to track clicks on webpage, currently supported:\n- `Piwik\\Plugins\\ClickHeat\\Logger\\FileSystemLogger` - store logging data in text files.\n- `Piwik\\Plugins\\ClickHeat\\Logger\\MysqlLogger` - store logging data in MySQL databases, tables needed for this logger will be created when you installed the plugin.\n- `Piwik\\Plugins\\ClickHeat\\Logger\\RedisLogger` - store logging data in Redis server.\n\nCurrently `Redis` only used as a `Logger` and can not create heat map via it. So you need to run a command to import data to another `Adapter` like MySQL. \n```\n./console clickheat:redis_to_msql\n```\nWe recommend to put this command to a cron job so you don't need to run it manually.\n```\n# cron job that run every 5minutes\n*/5 * * * * /var/www/piwik/console clickheat:redis_to_msql\n```\n### Adapter\nAfter logging clicks of webpages, adapters  used to retrieve data from associated storing system and generate heat map report, currently supported `Adapter`:\n- `Piwik\\Plugins\\ClickHeat\\Adapter\\FileSystemAdapter`\n- `Piwik\\Plugins\\ClickHeat\\Adapter\\MySqlAdapter`\n\n## FAQs\n__And what functions are not included in this feature ?__\n\n* remove special addresses defined on the control panel.\n* remove special browsers defined on the control panel.\n* filters based on added segmentation\n\n__Where is the coordinate information from the browser ?__\n\nClickHeat plugin uses text files to record the coordinate data of each browser in directory: yourpiwik/tmp/cache/clickheat/logs.\n\n__Does it withstands high traffics ?__\n\nThis plugin uses minimal text to record data and file based logging. And when click.php is called from a special Javascript for cgi, just append text on end of the each file. And when you analyze the click data and make a heatmap, plugin will create cached heatmap as png image file. \n\nTherefore, we expect the plugin light works, but we don't know what load it has under Piwik 2.x. So we are very glad, when you inform us about your situation. \n\nPlease see the link [Performance and optimization](http://www.labsmedia.com/clickheat/156894.html) about system resources. If you want performance, you need to avoid to use a cgi, that is possible. It method is explained on the link. \n\n__New click data were added, but not updated heatmap. Why ?__\n\nPlugin places heatmap images in the cache directory: yourpiwik/tmp/cache/clickheat/cache. Therefore when you suddenly met with such probrem, you can delete cache files, but __do not delete cache directory__.\n\n__Showed a heatmap, but not overlay a heatmap to the target web page. Why ?__\n\nCheck that your website does not set the HTTP header __X-FRAME-OPTIONS__ to __SAMEORIGIN__ as this will prevent this plugin from iframing your website for the heatmap report. Please see [Page Overlay Troubleshooting](http://piwik.org/docs/page-overlay/#page-overlay-troubleshooting), that is same problem.\n\n## TODO\n\n - Refactor code.\n - Correct File System logger and adapter.\n - Implement Piwik 3 System settings.\n - Submit to Marketplace.\n\n## License\nGPL v3 or later","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarser%2Fmatomoclickheatplugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkarser%2Fmatomoclickheatplugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarser%2Fmatomoclickheatplugin/lists"}