Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
0d0f020
add new tracking setting for tracking AI bots
diosmosis Nov 25, 2025
ec97364
add AIBotTracking service and script for tracking with advanced-cache…
diosmosis Nov 26, 2025
1450112
add tests for AIBotTracking class and get to pass
diosmosis Nov 29, 2025
1537bf8
add automated tests and get to pass
diosmosis Nov 30, 2025
b3cd8e8
do not do bot tracking if tracking in general is disabled
diosmosis Nov 30, 2025
2db2f32
update matomo core to 5.6.1
diosmosis Nov 30, 2025
b3f3ad0
Merge branch 'core-5.6.1' into mwp-935-ai-bot-tracking
diosmosis Nov 30, 2025
1e14664
when AI bot tracking is enabled make sure JS tracker uses the recMode…
diosmosis Dec 6, 2025
650e76a
get tracking when using wp advanced cache to work
diosmosis Dec 7, 2025
364ddfa
detect when advanced cache is used and present warning to user in tra…
diosmosis Dec 8, 2025
f46de27
create cookie in JS for AI bots and detect server side. if present du…
diosmosis Dec 9, 2025
87eedf3
display warning if .htaccess file is detected
diosmosis Dec 9, 2025
9da28cf
in advanced-cache.php tracking script, abort if advanced cache is not…
diosmosis Dec 9, 2025
291053b
allow local dev environment to run openlitespeed
diosmosis Dec 10, 2025
e0fb81b
adjust local dev environment to use litespeed enterprise and get AI b…
diosmosis Dec 10, 2025
4d0ef44
broaden check for .htaccess url rewriting to detect w3 total cache us…
diosmosis Dec 11, 2025
e2841ee
make sure server side tracking requests are non-blocking
diosmosis Dec 11, 2025
01efe76
add option to use ESI for AI bot tracking for CDNs that support it
diosmosis Dec 11, 2025
bae3d4d
add test for is_track_script_used_in_wp_config
diosmosis Dec 14, 2025
44b9a98
adjust + add tests, and make sure elapsed request time is correctly c…
diosmosis Dec 15, 2025
8f11067
document track_ai_bot.php and make sure we do not skip tracking in st…
diosmosis Dec 15, 2025
35ea25e
add documentation to ai-bot-tracking.js
diosmosis Dec 15, 2025
85ad267
fix phpcs warnings
diosmosis Dec 15, 2025
7b1a888
update core to 5.6.2
diosmosis Dec 15, 2025
ae4cfa7
update minimum tested against woocommerce version
diosmosis Dec 15, 2025
78ef9d2
debug e2e test failure
diosmosis Dec 15, 2025
b463b9a
fix strange build error when updating to 5.6.2 by force invalidating …
diosmosis Dec 17, 2025
2fc4a4b
update expected screenshots
diosmosis Dec 17, 2025
971ca29
increase comparison threshold
diosmosis Dec 17, 2025
c34f009
Merge branch 'update-5.6.2' into mwp-935-ai-bot-tracking
diosmosis Dec 18, 2025
5996b43
add new service in docker compose for litespeed webserver
diosmosis Dec 24, 2025
4eb3efb
add new warnings to settings for litespeed webserver
diosmosis Dec 24, 2025
6caf24f
allow using node 16 and 20 in local environment
diosmosis Dec 26, 2025
d1bd80f
in settings page if hash is set to id of an element, scroll to it aft…
diosmosis Dec 26, 2025
80da3d8
add ID to each row in settings table so the whole row can be referenc…
diosmosis Dec 26, 2025
1d61c23
show notification in AI bots reporting page when AI bot tracking is d…
diosmosis Dec 26, 2025
59c17c9
correct default value for user agent
diosmosis Dec 28, 2025
9774d13
add try catch around wp_remote_request to be extra safe
diosmosis Dec 28, 2025
7d2fa21
increase os limits for litespeed container
diosmosis Jan 9, 2026
8968978
in manual testing script wait for whole response before checking bot …
diosmosis Jan 9, 2026
c0c9d1f
fix condition in displaying warning
diosmosis Jan 9, 2026
e8a2c7d
fixes for ai bot tracking with litespeed + esi
diosmosis Jan 9, 2026
e8396c5
request time tracking will not work with ESI, remove attempt to track it
diosmosis Jan 16, 2026
13fc00c
minor code tweaks from self review
diosmosis Jan 16, 2026
2a6cd85
modify litespeed docker container to work with a paid subscription
diosmosis Jan 20, 2026
7e7fc7f
detect page url correctly in AI bot tracking
diosmosis Jan 21, 2026
1979a11
remove temp wp-matomo change
diosmosis Jan 21, 2026
301957c
update core to 5.7.0
diosmosis Jan 30, 2026
aebdcd5
fix unit test failure
diosmosis Jan 31, 2026
81904f1
update expected screenshots
diosmosis Jan 31, 2026
d57ed15
update expected screenshots
diosmosis Feb 1, 2026
985cfce
increase comparison threshold
diosmosis Feb 1, 2026
b540475
fix e2e test failures
diosmosis Feb 1, 2026
f1d6621
update expected screenshots
diosmosis Feb 1, 2026
eaa937e
update expected screenshot
diosmosis Feb 1, 2026
2e52cff
Merge branch 'update-core-5.7' into mwp-935-ai-bot-tracking
diosmosis Feb 1, 2026
c004caf
Merge branch 'develop' into mwp-935-ai-bot-tracking
diosmosis Feb 1, 2026
1c7ed84
add missing files
diosmosis Feb 3, 2026
fcaaede
undo file mode change
diosmosis Feb 3, 2026
15b4e32
add patch that updates the MatomoTracker.php file packaged with Matom…
diosmosis Feb 3, 2026
ba50341
remove typehints
diosmosis Feb 3, 2026
ac5b3f4
fixing some tests
diosmosis Feb 4, 2026
7e123b3
fix and apply patch
diosmosis Feb 4, 2026
4ef46ae
fixing more tests
diosmosis Feb 5, 2026
363f65c
update core to 5.7.1
diosmosis Feb 7, 2026
204797e
update expected screenshot
diosmosis Feb 7, 2026
9f08633
Merge branch 'update-core-5.7.1' into mwp-935-ai-bot-tracking
diosmosis Feb 7, 2026
7272b5c
fix and debug some unit tests
diosmosis Feb 7, 2026
f37405e
fix more unit tests
diosmosis Feb 8, 2026
9dc23d0
timer_float() does not exist in WordPress 5.*
diosmosis Feb 9, 2026
aa55ee6
update expected screenshots
diosmosis Feb 9, 2026
27f8e17
just do not use timer_float
diosmosis Feb 9, 2026
2629451
Merge branch 'develop' into mwp-935-ai-bot-tracking
diosmosis Feb 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .env.default
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
PHP_VERSION=8.1
DOCUMENT_ROOT=/var/www/html
WP_DB_HOST=mariadb
WP_ADMIN_USER=root
WP_ADMIN_EMAIL=nobody@nowhere.local
Expand Down
2 changes: 1 addition & 1 deletion .htaccess
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
</IfModule>
</IfModule>
</Files>
<Files ~ "^((index|piwik|matomo)\.php)$">
<Files ~ "^((index|piwik|matomo|track_ai_bot)\.php)$">
<IfModule mod_version.c>
<IfVersion < 2.4>
Order allow,deny
Expand Down
3 changes: 3 additions & 0 deletions .phpcs.xml.dist
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,9 @@
<exclude name="PHPCompatibility.InitialValue.NewConstantScalarExpressions.constFound"/>
<exclude name="Generic.CodeAnalysis.EmptyStatement.DetectedCatch"/>
<exclude name="WordPress.PHP.IniSet.Risky"/>
<exclude name="PHPCompatibility.FunctionDeclarations.NewReturnTypeDeclarations.stringFound"/>
<exclude name="PHPCompatibility.FunctionDeclarations.NewParamTypeDeclarations.boolFound"/>
<exclude name="PHPCompatibility.FunctionDeclarations.NewParamTypeDeclarations.stringFound"/>
</rule>
<rule ref="WordPress.NamingConventions.PrefixAllGlobals">
<properties>
Expand Down
3 changes: 2 additions & 1 deletion app/lang/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -6445,6 +6445,7 @@
"Example": "Example",
"SaveChanges": "Save Changes",
"MeasurableSettingsNoAccess": "In order to make changes to these settings, you need to be a Matomo administrator for the currently selected site.",
"NoMeasurableSettingsAvailable": "No website specific settings for this plugin are currently available. This usually means there are some global settings that must be set for the plugin in the %1$sMatomo Admin%2$s."
"NoMeasurableSettingsAvailable": "No website specific settings for this plugin are currently available. This usually means there are some global settings that must be set for the plugin in the %1$sMatomo Admin%2$s.",
"AIBotTrackingIsNotEnabled": "AI bot tracking is not currently enabled in Matomo for WordPress. %1$sIt must be enabled before you will see data in these reports.%2$s"
}
}
Loading
Loading