Customize Query String Caching
Query strings are not cached by default but we do make some automatic exceptions which are detailed here:
https://docs.wp-rocket.me/article/971-caching-query-strings
It's possible to further customize how query strings on your site are handled by using the following helper plugin.
📥 Download (.zip): WP Rocket | Ignore Query Strings
Developers: You can find the code for this plugin on GitHub.
The helper will enable you to:
1. Remove ignored parameters from the list that uses the standard cache file.
2. Add parameters to the list that uses the standard cache file.
To clarify - using the standard cache file means that each value of a parameter will use the same cache file - that of the base URL.
Remove parameters from the "ignored" list
To remove parameters from the "ignored" list:
- Uncomment this line: https://github.com/wp-media/wp-rocket-helpers/blob/68471ee6dad88582d49bc69f7086ecd761da7ccd/cache/wp-rocket-cache-ignore-query-strings/wp-rocket-cache-ignore-query-strings.php#L30
- Replace
utm_source
with your desired parameter.
This will prevent caching for that parameter. If you do want it cached, but with a separate cache file for each value, add your parameters to the Cache Query Strings field on the Advanced Rules tab.
Add parameters to the "ignored" list
If there are some query strings you want cached, but you want them to use the same cache file and NOT create a separate cache file for each value:
- Edit this line: https://github.com/wp-media/wp-rocket-helpers/blob/68471ee6dad88582d49bc69f7086ecd761da7ccd/cache/wp-rocket-cache-ignore-query-strings/wp-rocket-cache-ignore-query-strings.php#L29
- Replace
new_query_string
with the name of your desired parameter