Skip to content

Conversation

@diosmosis
Copy link
Member

@diosmosis diosmosis commented Dec 15, 2025

Description

Feature related changes:

  • Add two new settings: track AI bots and track AI bots using ESI (edge side includes).
  • Implement server side AI bot tracking when no caching plugin is used.
  • Implement server side AI bot tracking when a WordPress advanced cache is used.
  • Display warning when .htaccess is used to serve cached files, since server side tracking cannot be done when this is used.
  • Implement server side AI bot tracking that uses edge side includes to track AI bots when using a CDN or HTTP server that supports it (eg, Cloudflare or Litespeed web server).
  • When AI bot tracking is enabled, add client side JS that will set a cookie if the current browser supports JavaScript. This cookie is only set for known AI bot crawlers. When the cookie is detected server side, we avoid sending a server side tracking request. This avoids, but does not eliminate, duplicate requests when an AI bot executes JavaScripts.
  • When AI bot tracking is enabled, add recMode=2 to tracking URL client side so AI assistants that execute JS will automatically be detected by Matomo's tracking backend.
  • Add notification in AI bots reporting page if AI bot tracking is not enabled, linking to MWP settings.

Minor changes:

  • When calling wp_remote_request, catch exceptions just in case, and log without a fatal error, as is done with a WP_Error object.
  • Forward the current user agent in tracking requests.
  • Use non blocking server side tracking requests.
  • Add ability to specify patches to prefixed core files.

Local environment changes:

  • Add new service to docker compose that launches the Litespeed enterprise web server. Requires a serial number for a paid subscription saved to a file locally.

Checklist

  • [✔/✖/NA] I have understood, reviewed, and tested all AI outputs before use
  • [✔/✖/NA] All AI instructions respect security, IP, and privacy rules

Review

…cking settings if ai bot tracking is enabled and wp-config does not have the correct snippet
…ring server side tracking, we assume client side tracking was done and avoid tracking twice
… in use, and use require_once not require in tracking script
…ot tracking to work for it (expected not to work with openlitespeed)
…andalone script if esi is used but litespeed server is not
…week and month archives for today in addition to the day archive
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch from 63e89ab to 15b4e32 Compare February 3, 2026 18:58
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch 2 times, most recently from 9e0e17d to a200142 Compare February 4, 2026 23:09
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch from a200142 to 7e123b3 Compare February 5, 2026 01:59
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch from e9f792f to 0cc80c6 Compare February 8, 2026 20:03
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch from 0cc80c6 to 7272b5c Compare February 8, 2026 23:08
@diosmosis diosmosis force-pushed the mwp-935-ai-bot-tracking branch from 50c4e8b to f37405e Compare February 8, 2026 23:52
@diosmosis diosmosis requested a review from textagroup February 9, 2026 04:06
Copy link

@textagroup textagroup left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirmed branch ran locally as well as confirming new settings are available

Image

@diosmosis diosmosis merged commit e0e35c1 into develop Feb 10, 2026
10 of 12 checks passed
@diosmosis diosmosis deleted the mwp-935-ai-bot-tracking branch February 10, 2026 02:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants