PluginProbe
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN / 1.3.4
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN v1.3.4
1.3.4 1.3.3 1.3.2 1.3.1 1.3.0 1.2.4 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 All 30 releases
← All changes | languages/xspeed.pot +296 -158 1.3.21.3.4 View file →
@@ -1,9 +1,9 @@
1 1 # Copyright (C) 2026 WPDeveloper
2 2 # This file is distributed under the GPLv2 or later.
3 3 msgid ""
4 4 msgstr ""
5 -"Project-Id-Version: xSpeed Cache 1.3.2\n"
5 +"Project-Id-Version: xSpeed Cache 1.3.4\n"
6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/xspeed\n"
7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8 8 "Language-Team: LANGUAGE <LL@li.org>\n"
9 9 "MIME-Version: 1.0\n"
@@ -8,9 +8,9 @@
8 8 "Language-Team: LANGUAGE <LL@li.org>\n"
9 9 "MIME-Version: 1.0\n"
10 10 "Content-Type: text/plain; charset=UTF-8\n"
11 11 "Content-Transfer-Encoding: 8bit\n"
12 -"POT-Creation-Date: 2026-09-15T12:19:23+00:00\n"
12 +"POT-Creation-Date: 2026-09-20T11:23:49+00:00\n"
13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14 14 "X-Generator: WP-CLI 2.12.0\n"
15 15 "X-Domain: xspeed\n"
16 16
@@ -15,9 +15,9 @@
15 15 "X-Domain: xspeed\n"
16 16
17 17 #. Plugin Name of the plugin
18 18 #: xspeed.php
19 -#: includes/class-cache.php:7953
19 +#: includes/class-cache.php:8726
20 20 #: includes/class-deactivation-feedback.php:189
21 21 msgid "xSpeed Cache"
22 22 msgstr ""
23 23
@@ -37,9 +37,9 @@
37 37 msgstr ""
38 38
39 39 #: includes/class-admin.php:153
40 40 #: includes/class-admin.php:243
41 -#: includes/class-cache.php:7967
41 +#: includes/class-cache.php:8740
42 42 #: assets/admin.js
43 43 msgid "Settings"
44 44 msgstr ""
45 45
@@ -129,185 +129,185 @@
129 129 msgid "Clears this post and the pages that list it — the homepage, its archive and the neighbouring posts. The rest of the site keeps its cache."
130 130 msgstr ""
131 131
132 132 #. translators: 1: cause of the purge, 2: URL or path, 3: number of files removed.
133 -#: includes/class-cache.php:3445
133 +#: includes/class-cache.php:4163
134 134 #, php-format
135 135 msgid "Purged one URL (%1$s) — %2$s, %3$d file(s) removed"
136 136 msgstr ""
137 137
138 -#: includes/class-cache.php:4398
138 +#: includes/class-cache.php:5116
139 139 msgid "Purge All"
140 140 msgstr ""
141 141
142 -#: includes/class-cache.php:4402
142 +#: includes/class-cache.php:5120
143 143 msgid "Purge Page / Static Cache"
144 144 msgstr ""
145 145
146 -#: includes/class-cache.php:4406
146 +#: includes/class-cache.php:5124
147 147 msgid "Purge CSS / JS Cache"
148 148 msgstr ""
149 149
150 -#: includes/class-cache.php:4410
150 +#: includes/class-cache.php:5128
151 151 msgid "Purge Object Cache"
152 152 msgstr ""
153 153
154 -#: includes/class-cache.php:4414
154 +#: includes/class-cache.php:5132
155 155 msgid "Purge REST Cache"
156 156 msgstr ""
157 157
158 158 #. translators: 1: what was purged, 2: cause of the purge.
159 -#: includes/class-cache.php:4661
159 +#: includes/class-cache.php:5379
160 160 #, php-format
161 161 msgid "Purged %1$s (%2$s)"
162 162 msgstr ""
163 163
164 164 #. translators: 1: what was purged, 2: cause of the purge, 3: number of files removed.
165 -#: includes/class-cache.php:4667
165 +#: includes/class-cache.php:5385
166 166 #, php-format
167 167 msgid "Purged %1$s (%2$s) — %3$d file(s) removed"
168 168 msgstr ""
169 169
170 -#: includes/class-cache.php:4888
170 +#: includes/class-cache.php:5606
171 171 msgid "advanced-cache.php cannot be read, so xSpeed cannot tell whose page cache is installed."
172 172 msgstr ""
173 173
174 174 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
175 -#: includes/class-cache.php:4895
175 +#: includes/class-cache.php:5613
176 176 #, php-format
177 177 msgid "%s is serving the page cache. Turn the xSpeed cache off and on again to take it over."
178 178 msgstr ""
179 179
180 -#: includes/class-cache.php:4898
180 +#: includes/class-cache.php:5616
181 181 msgid "Another plugin is serving the page cache. Turn the xSpeed cache off and on again to take it over."
182 182 msgstr ""
183 183
184 -#: includes/class-cache.php:4964
184 +#: includes/class-cache.php:5686
185 185 msgid "Could not lock page-cache ownership. Try again."
186 186 msgstr ""
187 187
188 -#: includes/class-cache.php:4970
188 +#: includes/class-cache.php:5692
189 189 msgid "Page-cache ownership changed while xSpeed was checking it. Nothing was changed; try again."
190 190 msgstr ""
191 191
192 192 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
193 -#: includes/class-cache.php:5044
193 +#: includes/class-cache.php:5766
194 194 #, php-format
195 195 msgid "%s owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
196 196 msgstr ""
197 197
198 -#: includes/class-cache.php:5047
198 +#: includes/class-cache.php:5769
199 199 msgid "Another plugin owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
200 200 msgstr ""
201 201
202 -#: includes/class-cache.php:5077
202 +#: includes/class-cache.php:5799
203 203 msgid "Could not write wp-content/advanced-cache.php. Check filesystem permissions."
204 204 msgstr ""
205 205
206 -#: includes/class-cache.php:5134
206 +#: includes/class-cache.php:5856
207 207 msgid "wp-config.php is not writable and already contains define( 'WP_CACHE', false ). Change that line to true — adding a second one would leave the cache off and block xSpeed from changing it again."
208 208 msgstr ""
209 209
210 -#: includes/class-cache.php:5135
210 +#: includes/class-cache.php:5857
211 211 msgid "xSpeed could not verify the complete page-cache write, and wp-config.php is not writable. Its changes were rolled back."
212 212 msgstr ""
213 213
214 -#: includes/class-cache.php:5137
214 +#: includes/class-cache.php:5859
215 215 msgid "xSpeed could not verify the complete page-cache write. Its changes were rolled back."
216 216 msgstr ""
217 217
218 -#: includes/class-cache.php:5152
218 +#: includes/class-cache.php:5874
219 219 msgid "xSpeed could not save the page-cache setting. Its file changes were rolled back."
220 220 msgstr ""
221 221
222 -#: includes/class-cache.php:5244
222 +#: includes/class-cache.php:5966
223 223 msgid "xSpeed could not safely remove its WP_CACHE setting. The cache remains enabled."
224 224 msgstr ""
225 225
226 -#: includes/class-cache.php:5259
226 +#: includes/class-cache.php:5981
227 227 msgid "xSpeed could not remove its page-cache drop-in. The cache remains enabled."
228 228 msgstr ""
229 229
230 -#: includes/class-cache.php:5260
230 +#: includes/class-cache.php:5982
231 231 msgid "xSpeed could not remove its page-cache drop-in, and could not put WP_CACHE back. The cache is not serving; check wp-config.php before changing the page cache again."
232 232 msgstr ""
233 233
234 -#: includes/class-cache.php:5277
234 +#: includes/class-cache.php:5999
235 235 msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. Remove the xSpeed block from .htaccess by hand before turning the page cache off."
236 236 msgstr ""
237 237
238 -#: includes/class-cache.php:5295
238 +#: includes/class-cache.php:6017
239 239 msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. The cache remains enabled."
240 240 msgstr ""
241 241
242 -#: includes/class-cache.php:5296
242 +#: includes/class-cache.php:6018
243 243 msgid "xSpeed could not remove its rewrite rules from .htaccess, and could not restore the drop-in it had just removed. The cache is not serving, and the site may still return stale cached pages until the xSpeed block is removed from .htaccess by hand."
244 244 msgstr ""
245 245
246 -#: includes/class-cache.php:5307
246 +#: includes/class-cache.php:6029
247 247 msgid "xSpeed could not save the disabled state."
248 248 msgstr ""
249 249
250 -#: includes/class-cache.php:5311
250 +#: includes/class-cache.php:6033
251 251 msgid "xSpeed could not save the disabled state. The page cache was restored."
252 252 msgstr ""
253 253
254 254 #. translators: 1: the refusal reason, 2: a page-caching plugin's name.
255 -#: includes/class-cache.php:7459
255 +#: includes/class-cache.php:8218
256 256 #, php-format
257 257 msgid "%1$s %2$s is also active on this site — deactivate its page cache before enabling xSpeed."
258 258 msgstr ""
259 259
260 260 #. translators: 1: the refusal reason, 2: comma-separated page-caching plugin names.
261 -#: includes/class-cache.php:7466
261 +#: includes/class-cache.php:8225
262 262 #, php-format
263 263 msgid "%1$s These page caches are also active on this site: %2$s. Deactivate them before enabling xSpeed."
264 264 msgstr ""
265 265
266 266 #. translators: %s: comma-separated list of page-caching plugin names.
267 -#: includes/class-cache.php:7521
267 +#: includes/class-cache.php:8280
268 268 #, php-format
269 269 msgid "More than one page cache is active on this site (%s). Turn off the other page caches before enabling xSpeed."
270 270 msgstr ""
271 271
272 -#: includes/class-cache.php:7528
272 +#: includes/class-cache.php:8287
273 273 #, php-format
274 274 msgid "%s is active or owns advanced-cache.php. Deactivate its page cache before enabling xSpeed."
275 275 msgstr ""
276 276
277 -#: includes/class-cache.php:7531
277 +#: includes/class-cache.php:8290
278 278 msgid "WP_CACHE is true but no page-cache drop-in owner can be proved. xSpeed will not claim it."
279 279 msgstr ""
280 280
281 -#: includes/class-cache.php:7532
281 +#: includes/class-cache.php:8291
282 282 msgid "wp-config.php defines WP_CACHE more than once. Remove the duplicate before enabling the cache."
283 283 msgstr ""
284 284
285 -#: includes/class-cache.php:7533
285 +#: includes/class-cache.php:8292
286 286 msgid "WP_CACHE is set from an expression in wp-config.php. xSpeed will not rewrite it."
287 287 msgstr ""
288 288
289 -#: includes/class-cache.php:7534
289 +#: includes/class-cache.php:8293
290 290 msgid "WP_CACHE is defined inside a conditional in wp-config.php, so xSpeed cannot tell what it will be. Move it to a plain define before enabling the cache."
291 291 msgstr ""
292 292
293 -#: includes/class-cache.php:7535
293 +#: includes/class-cache.php:8294
294 294 msgid "wp-config.php cannot be read, so xSpeed cannot safely change page-cache ownership."
295 295 msgstr ""
296 296
297 -#: includes/class-cache.php:7536
297 +#: includes/class-cache.php:8295
298 298 msgid "advanced-cache.php is occupied but its owner cannot be proved. xSpeed will not replace it."
299 299 msgstr ""
300 300
301 -#: includes/class-cache.php:7537
301 +#: includes/class-cache.php:8296
302 302 msgid "advanced-cache.php cannot be read, so xSpeed cannot prove its owner."
303 303 msgstr ""
304 304
305 -#: includes/class-cache.php:7539
305 +#: includes/class-cache.php:8298
306 306 msgid "The page-cache field is occupied or cannot be verified. xSpeed will not change it."
307 307 msgstr ""
308 308
309 -#: includes/class-cache.php:8036
309 +#: includes/class-cache.php:8809
310 310 #: includes/class-purge-ui.php:278
311 311 #: includes/class-purge-ui.php:675
312 312 msgid "Unauthorized."
313 313 msgstr ""
@@ -1092,9 +1092,9 @@
1092 1092 msgid "AI Privacy"
1093 1093 msgstr ""
1094 1094
1095 1095 #: includes/modules/AIPrivacy/AIPrivacyModule.php:51
1096 -msgid "Govern whether AI-powered features (Pro) may collect data from your visitors. The off-switch is here in Free because privacy is a fundamental right, not a paid feature."
1096 +msgid "Decide whether AI features may use your visitors' data, and what the consent banner says. Applies even before you install Pro."
1097 1097 msgstr ""
1098 1098
1099 1099 #: includes/modules/AIPrivacy/AIPrivacyModule.php:70
1100 1100 msgid "Require consent before AI data collection"
@@ -1100,9 +1100,9 @@
1100 1100 msgid "Require consent before AI data collection"
1101 1101 msgstr ""
1102 1102
1103 1103 #: includes/modules/AIPrivacy/AIPrivacyModule.php:71
1104 -msgid "When ON, AI-powered features only record data after a visitor accepts the consent banner. When OFF, they collect from every visitor — only legal in regions without GDPR-style consent rules. The setting applies even if Pro is not installed (so a later Pro upgrade respects whichever choice you made)."
1104 +msgid "When ON, AI-powered features only record data after a visitor accepts the consent banner. When OFF, they collect from every visitor — only legal in regions without GDPR-style consent rules. The setting applies even if Pro is not installed (so a later Pro upgrade respects whichever choice you made): privacy is a fundamental right, not a paid feature."
1105 1105 msgstr ""
1106 1106
1107 1107 #: includes/modules/AIPrivacy/AIPrivacyModule.php:76
1108 1108 msgid "Consent banner text"
@@ -1160,20 +1160,28 @@
1160 1160 msgid "Remove the jquery-migrate compatibility shim from non-admin pages. Saves ~10 KB; safe on modern themes / plugins."
1161 1161 msgstr ""
1162 1162
1163 1163 #: includes/modules/Bloat/BloatModule.php:79
1164 +msgid "Strip Block-Editor Styles on Frontend"
1165 +msgstr ""
1166 +
1167 +#: includes/modules/Bloat/BloatModule.php:80
1168 +msgid "Drop editor-only stylesheets (wp-editor, wp-components, and friends) from anonymous pages. A plugin that enqueues them on the frontend usually does so by accident — they can add hundreds of KB of render-blocking CSS. Frontend block styles (wp-block-library) are never touched."
1169 +msgstr ""
1170 +
1171 +#: includes/modules/Bloat/BloatModule.php:85
1164 1172 msgid "Restrict REST API to Logged-In Users"
1165 1173 msgstr ""
1166 1174
1167 -#: includes/modules/Bloat/BloatModule.php:80
1175 +#: includes/modules/Bloat/BloatModule.php:86
1168 1176 msgid "Block /wp-json/ for anonymous requests. WooCommerce checkout, contact-form submissions, and many block-editor previews need anonymous REST — keep this off unless you know your site does not depend on it."
1169 1177 msgstr ""
1170 1178
1171 -#: includes/modules/Bloat/BloatModule.php:180
1179 +#: includes/modules/Bloat/BloatModule.php:239
1172 1180 msgid "Feeds are disabled."
1173 1181 msgstr ""
1174 1182
1175 -#: includes/modules/Bloat/BloatModule.php:229
1183 +#: includes/modules/Bloat/BloatModule.php:288
1176 1184 msgid "Anonymous REST access is disabled on this site."
1177 1185 msgstr ""
1178 1186
1179 1187 #: includes/modules/BrowserCache/BrowserCacheModule.php:32
@@ -1238,56 +1246,88 @@
1238 1246 #: includes/modules/Cache/CacheModule.php:160
1239 1247 msgid "How long cached pages live before regenerating. 1 to 720 hours (30 days)."
1240 1248 msgstr ""
1241 1249
1242 -#: includes/modules/Cache/CacheModule.php:188
1250 +#: includes/modules/Cache/CacheModule.php:190
1243 1251 msgid "Excluded URLs"
1244 1252 msgstr ""
1245 1253
1246 -#: includes/modules/Cache/CacheModule.php:189
1254 +#: includes/modules/Cache/CacheModule.php:191
1247 1255 msgid "One pattern per line. Plain text matches anywhere in the URL (e.g. /cart). Use glob for anchored matches (/cart/* matches /cart/items but not /foo/cart/bar; *.pdf matches PDFs). Prefix with ~ for a raw regex (e.g. ~wp-.*\\.php)."
1248 1256 msgstr ""
1249 1257
1250 -#: includes/modules/Cache/CacheModule.php:198
1258 +#: includes/modules/Cache/CacheModule.php:200
1251 1259 msgid "Excluded Cookies"
1252 1260 msgstr ""
1253 1261
1254 -#: includes/modules/Cache/CacheModule.php:199
1262 +#: includes/modules/Cache/CacheModule.php:201
1255 1263 msgid "Skip cache for any visitor whose request carries a cookie whose NAME matches one of these patterns. Plain text = \"contains\"; glob (woocommerce_*) and ~regex (~wordpress_[a-f0-9]+) supported. One per line."
1256 1264 msgstr ""
1257 1265
1258 -#: includes/modules/Cache/CacheModule.php:205
1266 +#: includes/modules/Cache/CacheModule.php:207
1259 1267 msgid "Bypass User Agents"
1260 1268 msgstr ""
1261 1269
1262 -#: includes/modules/Cache/CacheModule.php:206
1270 +#: includes/modules/Cache/CacheModule.php:208
1263 1271 msgid "Substring match against the visitor User-Agent. Matched UAs bypass cache (useful for screenshot bots, internal previews, monitoring). Glob + ~regex supported. One per line."
1264 1272 msgstr ""
1265 1273
1266 -#: includes/modules/Cache/CacheModule.php:217
1274 +#: includes/modules/Cache/CacheModule.php:219
1267 1275 msgid "Ignored Query Parameters"
1268 1276 msgstr ""
1269 1277
1270 -#: includes/modules/Cache/CacheModule.php:218
1278 +#: includes/modules/Cache/CacheModule.php:220
1271 1279 msgid "Query keys removed from the URL before computing the cache key, so /post?utm_source=x and /post share a cache entry. Defaults cover the common analytics + ad + session params. Each entry matches a whole param name — plain text is an exact name, and glob (utm_*) or ~regex are anchored too, so \"ref\" does not also match \"preference\". One per line."
1272 1280 msgstr ""
1273 1281
1274 -#: includes/modules/Cache/CacheModule.php:223
1282 +#: includes/modules/Cache/CacheModule.php:225
1275 1283 msgid "Purge After Updates"
1276 1284 msgstr ""
1277 1285
1278 -#: includes/modules/Cache/CacheModule.php:224
1286 +#: includes/modules/Cache/CacheModule.php:226
1279 1287 msgid "Clear the page cache when a plugin, theme or WordPress core is updated. Cached HTML is produced by the code being replaced, so leaving it in place serves pre-update markup — and links to minified assets that no longer exist — until the cache expires. Translation updates are ignored, since a language pack changes no markup a cached page depends on. Updates to xSpeed itself always purge, regardless of this setting."
1280 1288 msgstr ""
1281 1289
1282 -#: includes/modules/Cache/CacheModule.php:229
1290 +#: includes/modules/Cache/CacheModule.php:231
1283 1291 msgid "Separate Mobile Cache"
1284 1292 msgstr ""
1285 1293
1286 -#: includes/modules/Cache/CacheModule.php:230
1294 +#: includes/modules/Cache/CacheModule.php:232
1287 1295 msgid "Keep mobile and desktop responses in separate cache buckets. Turn on for AMP, mobile-specific themes (WPtouch / Jetpack mobile theme), or any setup that serves different HTML by device."
1288 1296 msgstr ""
1289 1297
1298 +#: includes/modules/Cache/CacheModule.php:264
1299 +msgid "Cache In Front Of This Site"
1300 +msgstr ""
1301 +
1302 +#: includes/modules/Cache/CacheModule.php:265
1303 +msgid "Ask a CDN or proxy in front of your site not to store pages xSpeed refused to cache. Leave it on Detect automatically unless you know what is in front of you; the marked providers ignore origin headers until you configure them to respect it."
1304 +msgstr ""
1305 +
1306 +#: includes/modules/Cache/CacheModule.php:266
1307 +msgid "Cache in front of this site"
1308 +msgstr ""
1309 +
1310 +#: includes/modules/Cache/CacheModule.php:267
1311 +msgid "Naming your provider narrows the headers to the one it reads. Detect automatically works it out per request and otherwise sends a set every cache ignores unless it understands it, so it is safe not to know. Run \"wp xspeed cache edge\" to see what was detected and what gets sent."
1312 +msgstr ""
1313 +
1314 +#: includes/modules/Cache/CacheModule.php:273
1315 +msgid "Custom Edge Headers"
1316 +msgstr ""
1317 +
1318 +#: includes/modules/Cache/CacheModule.php:275
1319 +msgid "One header per line, as Name: value — for example \"Surrogate-Control: no-store\". Lines starting with # are ignored."
1320 +msgstr ""
1321 +
1322 +#: includes/modules/Cache/CacheModule.php:276
1323 +msgid "Custom edge headers"
1324 +msgstr ""
1325 +
1326 +#: includes/modules/Cache/CacheModule.php:277
1327 +msgid "These replace the headers xSpeed would have picked for your CDN. Two baselines are still added underneath: a Cache-Control, and \"X-Accel-Expires: 0\" for a page cache running in nginx on your own server. Name either one yourself and yours is used instead. Values containing $, % or a backslash are dropped — the same pairs go into nginx and Apache directives, where those cannot be escaped safely. Content-Length, Content-Encoding, Content-Type, Transfer-Encoding, Set-Cookie and Location are refused."
1328 +msgstr ""
1329 +
1290 1330 #: includes/modules/CacheCoverage/CacheCoverageModule.php:36
1291 1331 msgid "Advanced Cache"
1292 1332 msgstr ""
1293 1333
@@ -1330,120 +1370,149 @@
1330 1370 #: includes/modules/Cdn/CdnModule.php:62
1331 1371 msgid "Glob patterns matched against the URL path. Matching URLs stay on the origin. Examples: /wp-admin/*, *.pdf, /private/*"
1332 1372 msgstr ""
1333 1373
1334 -#: includes/modules/Cloudflare/CloudflareModule.php:40
1374 +#: includes/modules/Cloudflare/CloudflareModule.php:77
1335 1375 msgid "Cloudflare"
1336 1376 msgstr ""
1337 1377
1338 -#: includes/modules/Cloudflare/CloudflareModule.php:42
1378 +#: includes/modules/Cloudflare/CloudflareModule.php:79
1339 1379 msgid "Connect a Cloudflare zone for automatic edge purging when xSpeed clears its cache, plus a dev-mode toggle."
1340 1380 msgstr ""
1341 1381
1342 -#: includes/modules/Cloudflare/CloudflareModule.php:65
1382 +#: includes/modules/Cloudflare/CloudflareModule.php:102
1343 1383 msgid "Enable Cloudflare integration"
1344 1384 msgstr ""
1345 1385
1346 -#: includes/modules/Cloudflare/CloudflareModule.php:66
1386 +#: includes/modules/Cloudflare/CloudflareModule.php:103
1347 1387 msgid "Use the credentials below to verify your zone and run purges."
1348 1388 msgstr ""
1349 1389
1350 -#: includes/modules/Cloudflare/CloudflareModule.php:76
1390 +#: includes/modules/Cloudflare/CloudflareModule.php:113
1351 1391 msgid "Authentication"
1352 1392 msgstr ""
1353 1393
1354 -#: includes/modules/Cloudflare/CloudflareModule.php:77
1394 +#: includes/modules/Cloudflare/CloudflareModule.php:114
1355 1395 msgid "API Tokens (scoped, recommended) or the legacy Global API Key with your account email."
1356 1396 msgstr ""
1357 1397
1358 -#: includes/modules/Cloudflare/CloudflareModule.php:83
1398 +#: includes/modules/Cloudflare/CloudflareModule.php:120
1359 1399 msgid "API Token"
1360 1400 msgstr ""
1361 1401
1362 -#: includes/modules/Cloudflare/CloudflareModule.php:84
1402 +#: includes/modules/Cloudflare/CloudflareModule.php:121
1363 1403 msgid "Create a token at dash.cloudflare.com → My Profile → API Tokens. Needs \"Zone → Cache Purge\" + \"Zone Settings\" permissions."
1364 1404 msgstr ""
1365 1405
1366 -#: includes/modules/Cloudflare/CloudflareModule.php:92
1406 +#: includes/modules/Cloudflare/CloudflareModule.php:129
1367 1407 msgid "Account Email"
1368 1408 msgstr ""
1369 1409
1370 -#: includes/modules/Cloudflare/CloudflareModule.php:93
1410 +#: includes/modules/Cloudflare/CloudflareModule.php:130
1371 1411 msgid "Only used when Authentication is set to Global API Key."
1372 1412 msgstr ""
1373 1413
1374 -#: includes/modules/Cloudflare/CloudflareModule.php:99
1414 +#: includes/modules/Cloudflare/CloudflareModule.php:136
1375 1415 msgid "Global API Key"
1376 1416 msgstr ""
1377 1417
1378 -#: includes/modules/Cloudflare/CloudflareModule.php:100
1418 +#: includes/modules/Cloudflare/CloudflareModule.php:137
1379 1419 msgid "Found at dash.cloudflare.com → My Profile → API Tokens → Global API Key."
1380 1420 msgstr ""
1381 1421
1382 -#: includes/modules/Cloudflare/CloudflareModule.php:106
1422 +#: includes/modules/Cloudflare/CloudflareModule.php:143
1383 1423 msgid "Zone ID"
1384 1424 msgstr ""
1385 1425
1386 -#: includes/modules/Cloudflare/CloudflareModule.php:107
1426 +#: includes/modules/Cloudflare/CloudflareModule.php:144
1387 1427 msgid "The 32-character hex Zone ID from your domain overview page."
1388 1428 msgstr ""
1389 1429
1390 -#: includes/modules/Cloudflare/CloudflareModule.php:113
1430 +#: includes/modules/Cloudflare/CloudflareModule.php:150
1391 1431 msgid "Auto-purge Cloudflare on xSpeed purge"
1392 1432 msgstr ""
1393 1433
1394 -#: includes/modules/Cloudflare/CloudflareModule.php:114
1434 +#: includes/modules/Cloudflare/CloudflareModule.php:151
1395 1435 msgid "When xSpeed clears its own cache (post save, settings change, manual purge), trigger a Cloudflare purge too."
1396 1436 msgstr ""
1397 1437
1398 -#: includes/modules/Cloudflare/CloudflareModule.php:238
1438 +#. translators: %d: number of URLs that changed at once.
1439 +#: includes/modules/Cloudflare/CloudflareModule.php:480
1440 +#, php-format
1441 +msgid "Purging the whole Cloudflare zone: %d URLs changed at once, too many to purge individually"
1442 +msgstr ""
1443 +
1444 +#. translators: %d: number of URLs.
1445 +#: includes/modules/Cloudflare/CloudflareModule.php:541
1446 +#, php-format
1447 +msgid "Skipped a queued Cloudflare purge of %d URL: the connection is no longer available"
1448 +msgid_plural "Skipped a queued Cloudflare purge of %d URLs: the connection is no longer available"
1449 +msgstr[0] ""
1450 +msgstr[1] ""
1451 +
1452 +#. translators: %d: number of URLs purged.
1453 +#: includes/modules/Cloudflare/CloudflareModule.php:572
1454 +#, php-format
1455 +msgid "Purged %d URL from the Cloudflare edge cache"
1456 +msgid_plural "Purged %d URLs from the Cloudflare edge cache"
1457 +msgstr[0] ""
1458 +msgstr[1] ""
1459 +
1460 +#. translators: 1: number of URLs, 2: failure reason.
1461 +#: includes/modules/Cloudflare/CloudflareModule.php:588
1462 +#, php-format
1463 +msgid "Cloudflare URL purge failed (%1$d URL(s)): %2$s"
1464 +msgstr ""
1465 +
1466 +#: includes/modules/Cloudflare/CloudflareModule.php:590
1467 +#: includes/modules/Cloudflare/CloudflareModule.php:657
1468 +msgid "unknown error"
1469 +msgstr ""
1470 +
1471 +#: includes/modules/Cloudflare/CloudflareModule.php:606
1399 1472 msgid "the Cloudflare integration is switched off"
1400 1473 msgstr ""
1401 1474
1402 -#: includes/modules/Cloudflare/CloudflareModule.php:241
1475 +#: includes/modules/Cloudflare/CloudflareModule.php:609
1403 1476 msgid "no zone ID or API credentials are configured"
1404 1477 msgstr ""
1405 1478
1406 1479 #. translators: %s: what asked for the purge.
1407 -#: includes/modules/Cloudflare/CloudflareModule.php:277
1480 +#: includes/modules/Cloudflare/CloudflareModule.php:645
1408 1481 #, php-format
1409 1482 msgid "Purged the Cloudflare edge cache (%s)"
1410 1483 msgstr ""
1411 1484
1412 1485 #. translators: 1: what asked for the purge, 2: failure reason.
1413 -#: includes/modules/Cloudflare/CloudflareModule.php:287
1486 +#: includes/modules/Cloudflare/CloudflareModule.php:655
1414 1487 #, php-format
1415 1488 msgid "Cloudflare purge failed (%1$s): %2$s"
1416 1489 msgstr ""
1417 1490
1418 -#: includes/modules/Cloudflare/CloudflareModule.php:289
1419 -msgid "unknown error"
1420 -msgstr ""
1421 -
1422 -#: includes/modules/Cloudflare/CloudflareModule.php:359
1491 +#: includes/modules/Cloudflare/CloudflareModule.php:727
1423 1492 msgid "Cloudflare is not fully configured."
1424 1493 msgstr ""
1425 1494
1426 -#: includes/modules/Cloudflare/CloudflareModule.php:360
1495 +#: includes/modules/Cloudflare/CloudflareModule.php:728
1427 1496 msgid "Add your API token (or Global API Key + account email) and the Zone ID, then press Verify. Until then auto-purge does nothing."
1428 1497 msgstr ""
1429 1498
1430 -#: includes/modules/Cloudflare/CloudflareModule.php:373
1499 +#: includes/modules/Cloudflare/CloudflareModule.php:741
1431 1500 msgid "Cloudflare purge is failing."
1432 1501 msgstr ""
1433 1502
1434 1503 #. translators: %s: the Cloudflare API error message, or empty.
1435 -#: includes/modules/Cloudflare/CloudflareModule.php:376
1504 +#: includes/modules/Cloudflare/CloudflareModule.php:744
1436 1505 #, php-format
1437 1506 msgid "The last edge purge was rejected by Cloudflare%s. Confirm the API token includes the \"Zone → Cache Purge\" permission for this zone — a token that can read the zone can still lack purge rights."
1438 1507 msgstr ""
1439 1508
1440 -#: includes/modules/Cloudflare/CloudflareModule.php:385
1509 +#: includes/modules/Cloudflare/CloudflareModule.php:753
1441 1510 msgid "Cloudflare credentials were rejected."
1442 1511 msgstr ""
1443 1512
1444 1513 #. translators: %s: the Cloudflare API error message, or empty.
1445 -#: includes/modules/Cloudflare/CloudflareModule.php:388
1514 +#: includes/modules/Cloudflare/CloudflareModule.php:756
1446 1515 #, php-format
1447 1516 msgid "The saved credentials could not verify this zone%s. Auto-purge will not work until this is fixed."
1448 1517 msgstr ""
1449 1518
@@ -1746,88 +1815,92 @@
1746 1815 #, php-format
1747 1816 msgid "Unknown command: %s. Call list_commands to see what is available."
1748 1817 msgstr ""
1749 1818
1750 -#: includes/modules/Mcp/McpModule.php:111
1819 +#: includes/modules/Mcp/McpModule.php:149
1751 1820 #: assets/admin.js
1752 1821 msgid "MCP Server"
1753 1822 msgstr ""
1754 1823
1755 -#: includes/modules/Mcp/McpModule.php:113
1756 -msgid "Control this site's cache from Claude and other AI agents."
1824 +#: includes/modules/Mcp/McpModule.php:151
1825 +msgid "Let Claude or another AI agent run this site — purge, check stats, change settings. This is the only thing you connect an AI to, and it is free with no API key."
1757 1826 msgstr ""
1758 1827
1759 -#: includes/modules/Mcp/McpModule.php:979
1828 +#: includes/modules/Mcp/McpModule.php:440
1829 +msgid "Another plugin now claims the site-wide OAuth discovery address, so xSpeed handed it over. Its own is /.well-known/oauth-protected-resource/xspeed/mcp — AI assistants already connected may ask for approval once more."
1830 +msgstr ""
1831 +
1832 +#: includes/modules/Mcp/McpModule.php:1307
1760 1833 msgid "Invalid or expired attach request."
1761 1834 msgstr ""
1762 1835
1763 -#: includes/modules/Mcp/McpModule.php:1093
1836 +#: includes/modules/Mcp/McpModule.php:1423
1764 1837 msgid "You must be an administrator to authorize an AI agent to control this site."
1765 1838 msgstr ""
1766 1839
1767 -#: includes/modules/Mcp/McpModule.php:1100
1840 +#: includes/modules/Mcp/McpModule.php:1430
1768 1841 msgid "Security check failed. Please try connecting again."
1769 1842 msgstr ""
1770 1843
1771 -#: includes/modules/Mcp/McpModule.php:1227
1844 +#: includes/modules/Mcp/McpModule.php:1557
1772 1845 msgid "Read-only — inspect cache status and settings."
1773 1846 msgstr ""
1774 1847
1775 -#: includes/modules/Mcp/McpModule.php:1228
1848 +#: includes/modules/Mcp/McpModule.php:1558
1776 1849 msgid "Read & write — purge caches, toggle caching, and change settings."
1777 1850 msgstr ""
1778 1851
1779 -#: includes/modules/Mcp/McpModule.php:1229
1852 +#: includes/modules/Mcp/McpModule.php:1559
1780 1853 msgid "An AI agent"
1781 1854 msgstr ""
1782 1855
1783 -#: includes/modules/Mcp/McpModule.php:1248
1856 +#: includes/modules/Mcp/McpModule.php:1578
1784 1857 msgid "Authorize AI access"
1785 1858 msgstr ""
1786 1859
1787 -#: includes/modules/Mcp/McpModule.php:1259
1860 +#: includes/modules/Mcp/McpModule.php:1589
1788 1861 msgid "Connect to xSpeed"
1789 1862 msgstr ""
1790 1863
1791 1864 #. translators: %s: AI client name.
1792 -#: includes/modules/Mcp/McpModule.php:1261
1865 +#: includes/modules/Mcp/McpModule.php:1591
1793 1866 #, php-format
1794 1867 msgid "%s wants to manage the cache on this site."
1795 1868 msgstr ""
1796 1869
1797 -#: includes/modules/Mcp/McpModule.php:1262
1870 +#: includes/modules/Mcp/McpModule.php:1592
1798 1871 msgid "Site"
1799 1872 msgstr ""
1800 1873
1801 -#: includes/modules/Mcp/McpModule.php:1263
1874 +#: includes/modules/Mcp/McpModule.php:1593
1802 1875 msgid "Signed in as"
1803 1876 msgstr ""
1804 1877
1805 -#: includes/modules/Mcp/McpModule.php:1264
1878 +#: includes/modules/Mcp/McpModule.php:1594
1806 1879 msgid "Access"
1807 1880 msgstr ""
1808 1881
1809 -#: includes/modules/Mcp/McpModule.php:1269
1882 +#: includes/modules/Mcp/McpModule.php:1599
1810 1883 msgid "Deny"
1811 1884 msgstr ""
1812 1885
1813 -#: includes/modules/Mcp/McpModule.php:1270
1886 +#: includes/modules/Mcp/McpModule.php:1600
1814 1887 msgid "Approve"
1815 1888 msgstr ""
1816 1889
1817 -#: includes/modules/Mcp/McpModule.php:1280
1890 +#: includes/modules/Mcp/McpModule.php:1610
1818 1891 msgid "Authorization error"
1819 1892 msgstr ""
1820 1893
1821 -#: includes/modules/Mcp/McpModule.php:1283
1894 +#: includes/modules/Mcp/McpModule.php:1613
1822 1895 msgid "Could not authorize"
1823 1896 msgstr ""
1824 1897
1825 -#: includes/modules/Mcp/McpModule.php:1513
1898 +#: includes/modules/Mcp/McpModule.php:1843
1826 1899 msgid "An AI assistant is connected to this site. This module counts as on whenever a connection token exists, rather than having its own on/off setting."
1827 1900 msgstr ""
1828 1901
1829 -#: includes/modules/Mcp/McpModule.php:1514
1902 +#: includes/modules/Mcp/McpModule.php:1844
1830 1903 msgid "No AI assistant is connected. This module counts as on once you connect one."
1831 1904 msgstr ""
1832 1905
1833 1906 #: includes/modules/Mcp/Mcp_Auth.php:57
@@ -1846,47 +1919,47 @@
1846 1919 #: assets/admin.js
1847 1920 msgid "The test could not be started."
1848 1921 msgstr ""
1849 1922
1850 -#: includes/modules/Mcp/Mcp_OAuth.php:213
1923 +#: includes/modules/Mcp/Mcp_OAuth.php:261
1851 1924 msgid "Too many client registrations. Try again later."
1852 1925 msgstr ""
1853 1926
1854 1927 #. translators: %d: maximum number of redirect URIs.
1855 -#: includes/modules/Mcp/Mcp_OAuth.php:229
1928 +#: includes/modules/Mcp/Mcp_OAuth.php:277
1856 1929 #, php-format
1857 1930 msgid "At most %d redirect_uris are allowed."
1858 1931 msgstr ""
1859 1932
1860 -#: includes/modules/Mcp/Mcp_OAuth.php:241
1933 +#: includes/modules/Mcp/Mcp_OAuth.php:289
1861 1934 msgid "At least one valid redirect_uri is required."
1862 1935 msgstr ""
1863 1936
1864 -#: includes/modules/Mcp/Mcp_OAuth.php:278
1937 +#: includes/modules/Mcp/Mcp_OAuth.php:326
1865 1938 msgid "Client registration limit reached."
1866 1939 msgstr ""
1867 1940
1868 -#: includes/modules/Mcp/Mcp_OAuth.php:297
1941 +#: includes/modules/Mcp/Mcp_OAuth.php:345
1869 1942 msgid "The client registration could not be stored."
1870 1943 msgstr ""
1871 1944
1872 -#: includes/modules/Mcp/Mcp_OAuth.php:336
1945 +#: includes/modules/Mcp/Mcp_OAuth.php:384
1873 1946 msgid "Unknown client_id."
1874 1947 msgstr ""
1875 1948
1876 -#: includes/modules/Mcp/Mcp_OAuth.php:340
1949 +#: includes/modules/Mcp/Mcp_OAuth.php:388
1877 1950 msgid "redirect_uri does not match a registered value."
1878 1951 msgstr ""
1879 1952
1880 -#: includes/modules/Mcp/Mcp_OAuth.php:343
1953 +#: includes/modules/Mcp/Mcp_OAuth.php:391
1881 1954 msgid "Only response_type=code is supported."
1882 1955 msgstr ""
1883 1956
1884 -#: includes/modules/Mcp/Mcp_OAuth.php:347
1957 +#: includes/modules/Mcp/Mcp_OAuth.php:395
1885 1958 msgid "PKCE with code_challenge_method=S256 is required."
1886 1959 msgstr ""
1887 1960
1888 -#: includes/modules/Mcp/Mcp_Pairing.php:408
1961 +#: includes/modules/Mcp/Mcp_Pairing.php:451
1889 1962 msgid "No active MCP connection to change. Connect first."
1890 1963 msgstr ""
1891 1964
1892 1965 #. translators: %s: tool name.
@@ -2473,8 +2546,56 @@
2473 2546 #: includes/modules/Preloader/PreloaderModule.php:268
2474 2547 msgid "Enable the preloader before starting a crawl."
2475 2548 msgstr ""
2476 2549
2550 +#: includes/modules/Privacy/PrivacyModule.php:47
2551 +msgid "Privacy & usage data"
2552 +msgstr ""
2553 +
2554 +#: includes/modules/Privacy/PrivacyModule.php:49
2555 +msgid "Control the anonymous usage analytics you were asked about in the setup wizard."
2556 +msgstr ""
2557 +
2558 +#: includes/modules/Privacy/PrivacyModule.php:58
2559 +msgid "Share anonymous usage data"
2560 +msgstr ""
2561 +
2562 +#: includes/modules/Privacy/PrivacyModule.php:59
2563 +msgid "Share anonymous basics — WordPress & PHP version, active theme & plugins, server type, and which features you enable. Never personal data or page content. Turning this off stops all collection and clears the scheduled send."
2564 +msgstr ""
2565 +
2566 +#: includes/modules/RenderSkip/RenderSkipModule.php:71
2567 +msgid "Render Skip"
2568 +msgstr ""
2569 +
2570 +#: includes/modules/RenderSkip/RenderSkipModule.php:73
2571 +msgid "Skip the browser's style & layout work for below-fold sections until the visitor scrolls near them — cuts main-thread blocking time on long builder pages without changing the content."
2572 +msgstr ""
2573 +
2574 +#: includes/modules/RenderSkip/RenderSkipModule.php:82
2575 +msgid "Skip below-fold rendering"
2576 +msgstr ""
2577 +
2578 +#: includes/modules/RenderSkip/RenderSkipModule.php:83
2579 +msgid "Stamp below-fold sections with content-visibility: auto so the browser defers their style and layout work until scroll approaches. Above-fold sections are never touched."
2580 +msgstr ""
2581 +
2582 +#: includes/modules/RenderSkip/RenderSkipModule.php:90
2583 +msgid "Above-fold sections"
2584 +msgstr ""
2585 +
2586 +#: includes/modules/RenderSkip/RenderSkipModule.php:91
2587 +msgid "How many top-level sections from the top of the page are treated as above the fold and left untouched. Raise this if a section near the top appears late."
2588 +msgstr ""
2589 +
2590 +#: includes/modules/RenderSkip/RenderSkipModule.php:96
2591 +msgid "Section classes"
2592 +msgstr ""
2593 +
2594 +#: includes/modules/RenderSkip/RenderSkipModule.php:97
2595 +msgid "Class names that identify a top-level page section. Defaults cover Elementor sections and flexbox containers; add your theme's section class for non-Elementor pages."
2596 +msgstr ""
2597 +
2477 2598 #: includes/modules/ResourceHints/ResourceHintsModule.php:60
2478 2599 msgid "Resource Hints"
2479 2600 msgstr ""
2480 2601
@@ -2843,14 +2964,14 @@
2843 2964 #: assets/admin.js
2844 2965 msgid "Benchmark failed"
2845 2966 msgstr ""
2846 2967
2847 -#. Source: src/components/cache/TrendCharts.tsx:258
2968 +#. Source: src/components/cache/TrendCharts.tsx:263
2848 2969 #: assets/admin.js
2849 2970 msgid "Benchmark trend"
2850 2971 msgstr ""
2851 2972
2852 -#. Source: src/components/cache/TrendCharts.tsx:134
2973 +#. Source: src/components/cache/TrendCharts.tsx:139
2853 2974 #: assets/admin.js
2854 2975 msgid "Benchmark: cached vs uncached (ms)"
2855 2976 msgstr ""
2856 2977
@@ -2878,9 +2999,9 @@
2878 2999 #: assets/admin.js
2879 3000 msgid "Browse all"
2880 3001 msgstr ""
2881 3002
2882 -#. Source: src/components/sidebarGroups.ts:69
3003 +#. Source: src/components/sidebarGroups.ts:79
2883 3004 #: assets/admin.js
2884 3005 msgid "Cache"
2885 3006 msgstr ""
2886 3007
@@ -2983,9 +3104,9 @@
2983 3104 #: assets/admin.js
2984 3105 msgid "Cache, compression & more"
2985 3106 msgstr ""
2986 3107
2987 -#. Source: src/components/cache/TrendCharts.tsx:270
3108 +#. Source: src/components/cache/TrendCharts.tsx:275
2988 3109 #: assets/admin.js
2989 3110 msgid "cached"
2990 3111 msgstr ""
2991 3112
@@ -3016,9 +3137,9 @@
3016 3137 #: assets/admin.js
3017 3138 msgid "Cancel"
3018 3139 msgstr ""
3019 3140
3020 -#. Source: src/components/sidebarGroups.ts:85
3141 +#. Source: src/components/sidebarGroups.ts:95
3021 3142 #: assets/admin.js
3022 3143 msgid "CDN and Cloudflare edge delivery."
3023 3144 msgstr ""
3024 3145
@@ -3113,8 +3234,13 @@
3113 3234 #: assets/admin.js
3114 3235 msgid "Connect"
3115 3236 msgstr ""
3116 3237
3238 +#. Source: src/components/sidebarGroups.ts:120
3239 +#: assets/admin.js
3240 +msgid "Connect an AI agent to this site, and control what AI features may use."
3241 +msgstr ""
3242 +
3117 3243 #. Source: src/components/TopBar.tsx:138
3118 3244 #: assets/admin.js
3119 3245 msgid "Connect Hub"
3120 3246 msgstr ""
@@ -3229,9 +3355,9 @@
3229 3355 #: assets/admin.js
3230 3356 msgid "Could not check the test status."
3231 3357 msgstr ""
3232 3358
3233 -#. Source: src/components/sidebarGroups.ts:99
3359 +#. Source: src/components/sidebarGroups.ts:109
3234 3360 #: assets/admin.js
3235 3361 msgid "Database cleanup, migration and logs."
3236 3362 msgstr ""
3237 3363
@@ -3368,9 +3494,9 @@
3368 3494 #: assets/admin.js
3369 3495 msgid "Go to Dashboard"
3370 3496 msgstr ""
3371 3497
3372 -#. Source: src/onboarding/OnboardingApp.tsx:161
3498 +#. Source: src/onboarding/OnboardingApp.tsx:168
3373 3499 #: assets/admin.js
3374 3500 msgid "Go to the dashboard"
3375 3501 msgstr ""
3376 3502
@@ -3389,9 +3515,9 @@
3389 3515 #: assets/admin.js
3390 3516 msgid "GTmetrix test"
3391 3517 msgstr ""
3392 3518
3393 -#. Source: src/components/sidebarGroups.ts:90
3519 +#. Source: src/components/sidebarGroups.ts:100
3394 3520 #: assets/admin.js
3395 3521 msgid "Health & insights"
3396 3522 msgstr ""
3397 3523
@@ -3414,9 +3540,9 @@
3414 3540 #: assets/admin.js
3415 3541 msgid "Hide"
3416 3542 msgstr ""
3417 3543
3418 -#. Source: src/components/cache/TrendCharts.tsx:120
3544 +#. Source: src/components/cache/TrendCharts.tsx:125
3419 3545 #. Source: src/components/health/HealthHero.tsx:37
3420 3546 #. Source: src/components/overview/MetricGrid.tsx:44
3421 3547 #: assets/admin.js
3422 3548 msgid "Hit ratio"
@@ -3436,9 +3562,9 @@
3436 3562 #: assets/admin.js
3437 3563 msgid "Hit ratio and benchmark history, with your settings changes marked."
3438 3564 msgstr ""
3439 3565
3440 -#. Source: src/components/cache/TrendCharts.tsx:222
3566 +#. Source: src/components/cache/TrendCharts.tsx:227
3441 3567 #: assets/admin.js
3442 3568 msgid "Hit ratio trend"
3443 3569 msgstr ""
3444 3570
@@ -3461,13 +3587,8 @@
3461 3587 #: assets/admin.js
3462 3588 msgid "Hub connected"
3463 3589 msgstr ""
3464 3590
3465 -#. Source: src/components/sidebarGroups.ts:106
3466 -#: assets/admin.js
3467 -msgid "Hub, MCP access, AI provider and privacy."
3468 -msgstr ""
3469 -
3470 3591 #. Source: src/onboarding/steps/Connect.tsx:132
3471 3592 #: assets/admin.js
3472 3593 msgid "I'll connect later"
3473 3594 msgstr ""
@@ -3526,9 +3647,9 @@
3526 3647 #: assets/admin.js
3527 3648 msgid "Last purged"
3528 3649 msgstr ""
3529 3650
3530 -#. Source: src/components/cache/TrendCharts.tsx:236
3651 +#. Source: src/components/cache/TrendCharts.tsx:241
3531 3652 #: assets/admin.js
3532 3653 msgid "Latest"
3533 3654 msgstr ""
3534 3655
@@ -3542,9 +3663,9 @@
3542 3663 #: assets/admin.js
3543 3664 msgid "License"
3544 3665 msgstr ""
3545 3666
3546 -#. Source: src/components/sidebarGroups.ts:113
3667 +#. Source: src/components/sidebarGroups.ts:128
3547 3668 #: assets/admin.js
3548 3669 msgid "License, branding, multisite and support."
3549 3670 msgstr ""
3550 3671
@@ -3557,9 +3678,9 @@
3557 3678 #: assets/admin.js
3558 3679 msgid "Lighthouse performance, out of 100"
3559 3680 msgstr ""
3560 3681
3561 -#. Source: src/App.tsx:420
3682 +#. Source: src/App.tsx:456
3562 3683 #. Source: src/components/GroupLanding.tsx:67
3563 3684 #. Source: src/components/LogsView.tsx:35
3564 3685 #: assets/admin.js
3565 3686 msgid "Logs"
@@ -3626,9 +3747,9 @@
3626 3747 #: assets/admin.js
3627 3748 msgid "min"
3628 3749 msgstr ""
3629 3750
3630 -#. Source: src/components/sidebarGroups.ts:78
3751 +#. Source: src/components/sidebarGroups.ts:88
3631 3752 #: assets/admin.js
3632 3753 msgid "Minify, compress, lazy-load, fonts and hints."
3633 3754 msgstr ""
3634 3755
@@ -3670,9 +3791,9 @@
3670 3791 #: assets/admin.js
3671 3792 msgid "Negligible difference — page is cheap to render or cache is cold."
3672 3793 msgstr ""
3673 3794
3674 -#. Source: src/components/sidebarGroups.ts:83
3795 +#. Source: src/components/sidebarGroups.ts:93
3675 3796 #: assets/admin.js
3676 3797 msgid "Network"
3677 3798 msgstr ""
3678 3799
@@ -3856,9 +3977,9 @@
3856 3977 #: assets/admin.js
3857 3978 msgid "on your xSpeed Hub account."
3858 3979 msgstr ""
3859 3980
3860 -#. Source: src/onboarding/OnboardingApp.tsx:152
3981 +#. Source: src/onboarding/OnboardingApp.tsx:159
3861 3982 #: assets/admin.js
3862 3983 msgid "Onboarding data unavailable"
3863 3984 msgstr ""
3864 3985
@@ -3886,9 +4007,9 @@
3886 4007 #: assets/admin.js
3887 4008 msgid "Open the full report"
3888 4009 msgstr ""
3889 4010
3890 -#. Source: src/components/sidebarGroups.ts:76
4011 +#. Source: src/components/sidebarGroups.ts:86
3891 4012 #: assets/admin.js
3892 4013 msgid "Optimization"
3893 4014 msgstr ""
3894 4015
@@ -3917,9 +4038,9 @@
3917 4038 #: assets/admin.js
3918 4039 msgid "Page"
3919 4040 msgstr ""
3920 4041
3921 -#. Source: src/components/sidebarGroups.ts:71
4042 +#. Source: src/components/sidebarGroups.ts:81
3922 4043 #: assets/admin.js
3923 4044 msgid "Page, object and browser caching, plus preload."
3924 4045 msgstr ""
3925 4046
@@ -4000,18 +4121,35 @@
4000 4121 #: assets/admin.js
4001 4122 msgid "Preload"
4002 4123 msgstr ""
4003 4124
4004 -#. Source: src/App.tsx:390
4125 +#. Source: src/App.tsx:423
4005 4126 #: assets/admin.js
4006 4127 msgid "Preload could not start"
4007 4128 msgstr ""
4008 4129
4009 -#. Source: src/App.tsx:388
4130 +#. Source: src/App.tsx:422
4010 4131 #: assets/admin.js
4011 -msgid "Preload started"
4132 +msgid "Preload could not start: %s"
4012 4133 msgstr ""
4013 4134
4135 +#. Source: src/App.tsx:410
4136 +#: assets/admin.js
4137 +msgid "Preload found no pages to warm"
4138 +msgstr ""
4139 +
4140 +#. Source: src/App.tsx:409
4141 +#: assets/admin.js
4142 +msgid "Preload found no pages to warm: %s"
4143 +msgstr ""
4144 +
4145 +#. Source: src/App.tsx:399
4146 +#: assets/admin.js
4147 +msgid "Preloading %d page"
4148 +msgid_plural "Preloading %d pages"
4149 +msgstr[0] ""
4150 +msgstr[1] ""
4151 +
4014 4152 #. Source: src/upsell/ProDemo.tsx:118
4015 4153 #: assets/admin.js
4016 4154 msgid "Preview"
4017 4155 msgstr ""
@@ -4151,9 +4289,9 @@
4151 4289 #: assets/admin.js
4152 4290 msgid "Recent cache and settings activity."
4153 4291 msgstr ""
4154 4292
4155 -#. Source: src/components/cache/TrendCharts.tsx:148
4293 +#. Source: src/components/cache/TrendCharts.tsx:153
4156 4294 #: assets/admin.js
4157 4295 msgid "Recent changes"
4158 4296 msgstr ""
4159 4297
@@ -4177,9 +4315,9 @@
4177 4315 #: assets/admin.js
4178 4316 msgid "Refresh activity log"
4179 4317 msgstr ""
4180 4318
4181 -#. Source: src/components/cache/TrendCharts.tsx:108
4319 +#. Source: src/components/cache/TrendCharts.tsx:113
4182 4320 #: assets/admin.js
4183 4321 msgid "Refresh trends"
4184 4322 msgstr ""
4185 4323
@@ -4263,9 +4401,9 @@
4263 4401 #: assets/admin.js
4264 4402 msgid "Run test"
4265 4403 msgstr ""
4266 4404
4267 -#. Source: src/components/cache/TrendCharts.tsx:139
4405 +#. Source: src/components/cache/TrendCharts.tsx:144
4268 4406 #: assets/admin.js
4269 4407 msgid "Run the benchmark at least twice to see a trend."
4270 4408 msgstr ""
4271 4409
@@ -4431,9 +4569,9 @@
4431 4569 #: assets/admin.js
4432 4570 msgid "Size"
4433 4571 msgstr ""
4434 4572
4435 -#. Source: src/components/sidebarGroups.ts:92
4573 +#. Source: src/components/sidebarGroups.ts:102
4436 4574 #: assets/admin.js
4437 4575 msgid "Speed score, diagnostics and analytics."
4438 4576 msgstr ""
4439 4577
@@ -4476,9 +4614,9 @@
4476 4614 #: assets/admin.js
4477 4615 msgid "Take over the page cache from %s?"
4478 4616 msgstr ""
4479 4617
4480 -#. Source: src/components/cache/TrendCharts.tsx:240
4618 +#. Source: src/components/cache/TrendCharts.tsx:245
4481 4619 #: assets/admin.js
4482 4620 msgid "target ≥80%"
4483 4621 msgstr ""
4484 4622
@@ -4548,9 +4686,9 @@
4548 4686 msgid "Token"
4549 4687 msgstr ""
4550 4688
4551 4689 #. Source: src/components/LogsView.tsx:34
4552 -#. Source: src/components/sidebarGroups.ts:97
4690 +#. Source: src/components/sidebarGroups.ts:107
4553 4691 #: assets/admin.js
4554 4692 msgid "Tools"
4555 4693 msgstr ""
4556 4694
@@ -4558,9 +4696,9 @@
4558 4696 #: assets/admin.js
4559 4697 msgid "Trends"
4560 4698 msgstr ""
4561 4699
4562 -#. Source: src/components/cache/TrendCharts.tsx:126
4700 +#. Source: src/components/cache/TrendCharts.tsx:131
4563 4701 #: assets/admin.js
4564 4702 msgid "Trends appear after a couple of days of traffic. The daily series is being collected now."
4565 4703 msgstr ""
4566 4704
@@ -4588,9 +4726,9 @@
4588 4726 #: assets/admin.js
4589 4727 msgid "Turn on the page cache to start serving pages instantly."
4590 4728 msgstr ""
4591 4729
4592 -#. Source: src/components/cache/TrendCharts.tsx:273
4730 +#. Source: src/components/cache/TrendCharts.tsx:278
4593 4731 #: assets/admin.js
4594 4732 msgid "uncached"
4595 4733 msgstr ""
4596 4734
@@ -4639,9 +4777,9 @@
4639 4777 #: assets/admin.js
4640 4778 msgid "Want a hand?"
4641 4779 msgstr ""
4642 4780
4643 -#. Source: src/onboarding/OnboardingApp.tsx:155
4781 +#. Source: src/onboarding/OnboardingApp.tsx:162
4644 4782 #: assets/admin.js
4645 4783 msgid "We couldn't load the setup wizard. Your site is unaffected — you can configure everything from the dashboard."
4646 4784 msgstr ""
4647 4785