PluginProbe
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN / 1.4.1
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN v1.4.1
1.4.1 1.4.0 1.3.7 1.3.6 1.3.5 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 All 35 releases
← All changes | languages/xspeed.pot +983 -512 1.3.7 → 1.4.1 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.7\n"
5 +"Project-Id-Version: xSpeed Cache 1.4.1\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 <[email protected]>\n"
9 9 "MIME-Version: 1.0\n"
@@ -8,9 +8,9 @@
8 8 "Language-Team: LANGUAGE <[email protected]>\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-10-01T06:08:12+00:00\n"
12 +"POT-Creation-Date: 2026-10-08T15:38:17+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:8967
19 +#: includes/class-cache.php:11258
20 20 #: includes/class-deactivation-feedback.php:189
21 21 msgid "xSpeed Cache"
22 22 msgstr ""
23 23
@@ -35,66 +35,66 @@
35 35 #: xspeed.php
36 36 msgid "https://wpdeveloper.com"
37 37 msgstr ""
38 38
39 -#: includes/class-admin.php:153
40 -#: includes/class-admin.php:243
41 -#: includes/class-cache.php:8981
39 +#: includes/class-admin.php:160
40 +#: includes/class-admin.php:250
41 +#: includes/class-cache.php:11272
42 42 #: assets/admin.js
43 43 msgid "Settings"
44 44 msgstr ""
45 45
46 -#: includes/class-admin.php:241
46 +#: includes/class-admin.php:248
47 47 #: assets/admin.js
48 48 msgid "Overview"
49 49 msgstr ""
50 50
51 -#: includes/class-admin.php:242
51 +#: includes/class-admin.php:249
52 52 #: assets/admin.js
53 53 msgid "AI & agents"
54 54 msgstr ""
55 55
56 -#: includes/class-admin.php:301
56 +#: includes/class-admin.php:308
57 57 #: assets/admin.js
58 58 msgid "Loading"
59 59 msgstr ""
60 60
61 -#: includes/class-admin.php:303
61 +#: includes/class-admin.php:310
62 62 msgid "xSpeed"
63 63 msgstr ""
64 64
65 -#: includes/class-admin.php:304
65 +#: includes/class-admin.php:311
66 66 #: assets/admin.js
67 67 msgid "Loading…"
68 68 msgstr ""
69 69
70 70 #. translators: 1: cause of the sweep, 2: number of files removed.
71 -#: includes/class-cache-gc.php:654
71 +#: includes/class-cache-gc.php:703
72 72 #, php-format
73 73 msgid "Cache garbage collection (%1$s) — %2$d expired file(s) removed"
74 74 msgstr ""
75 75
76 -#: includes/class-cache-inventory.php:357
76 +#: includes/class-cache-inventory.php:364
77 77 msgid "Cached pages (PHP)"
78 78 msgstr ""
79 79
80 -#: includes/class-cache-inventory.php:362
80 +#: includes/class-cache-inventory.php:369
81 81 msgid "Cached pages (server-served)"
82 82 msgstr ""
83 83
84 -#: includes/class-cache-inventory.php:367
84 +#: includes/class-cache-inventory.php:374
85 85 msgid "Precompressed copies"
86 86 msgstr ""
87 87
88 -#: includes/class-cache-inventory.php:372
88 +#: includes/class-cache-inventory.php:379
89 89 msgid "Per-entry metadata"
90 90 msgstr ""
91 91
92 -#: includes/class-cache-inventory.php:377
92 +#: includes/class-cache-inventory.php:384
93 93 msgid "REST responses"
94 94 msgstr ""
95 95
96 -#: includes/class-cache-inventory.php:382
96 +#: includes/class-cache-inventory.php:389
97 97 msgid "Minified CSS/JS"
98 98 msgstr ""
99 99
100 100 #: includes/class-cache-meta-box.php:40
@@ -129,187 +129,208 @@
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:4213
133 +#: includes/class-cache.php:5909
134 +#: includes/class-cache.php:6119
134 135 #, php-format
135 136 msgid "Purged one URL (%1$s) — %2$s, %3$d file(s) removed"
136 137 msgstr ""
137 138
138 -#: includes/class-cache.php:5268
139 +#. translators: 1: cause of the purge, 2: URL or path, 3: number of files removed, 4: caches the purge was sent to.
140 +#: includes/class-cache.php:6126
141 +#, php-format
142 +msgid "Purged one URL (%1$s) — %2$s, %3$d file(s) removed, sent to %4$s"
143 +msgstr ""
144 +
145 +#. translators: 1: cause of the purge, 2: URL or path, 3: caches the purge was sent to.
146 +#: includes/class-cache.php:6138
147 +#, php-format
148 +msgid "Purged one URL (%1$s): %2$s, 0 file(s) removed here, sent to %3$s"
149 +msgstr ""
150 +
151 +#. translators: 1: number of pages, 2: cause of the purge, 3: number of files removed.
152 +#: includes/class-cache.php:6216
153 +#, php-format
154 +msgid "Purged %1$d page (%2$s), %3$d file(s) removed"
155 +msgid_plural "Purged %1$d pages (%2$s), %3$d file(s) removed"
156 +msgstr[0] ""
157 +msgstr[1] ""
158 +
159 +#: includes/class-cache.php:7251
139 160 msgid "Purge All"
140 161 msgstr ""
141 162
142 -#: includes/class-cache.php:5272
163 +#: includes/class-cache.php:7255
143 164 msgid "Purge Page / Static Cache"
144 165 msgstr ""
145 166
146 -#: includes/class-cache.php:5276
167 +#: includes/class-cache.php:7259
147 168 msgid "Purge CSS / JS Cache"
148 169 msgstr ""
149 170
150 -#: includes/class-cache.php:5280
171 +#: includes/class-cache.php:7263
151 172 msgid "Purge Object Cache"
152 173 msgstr ""
153 174
154 -#: includes/class-cache.php:5284
175 +#: includes/class-cache.php:7267
155 176 msgid "Purge REST Cache"
156 177 msgstr ""
157 178
158 179 #. translators: 1: what was purged, 2: cause of the purge.
159 -#: includes/class-cache.php:5531
180 +#: includes/class-cache.php:7601
160 181 #, php-format
161 182 msgid "Purged %1$s (%2$s)"
162 183 msgstr ""
163 184
164 185 #. translators: 1: what was purged, 2: cause of the purge, 3: number of files removed.
165 -#: includes/class-cache.php:5537
186 +#: includes/class-cache.php:7607
166 187 #, php-format
167 188 msgid "Purged %1$s (%2$s) — %3$d file(s) removed"
168 189 msgstr ""
169 190
170 -#: includes/class-cache.php:5775
191 +#: includes/class-cache.php:7879
171 192 msgid "advanced-cache.php cannot be read, so xSpeed cannot tell whose page cache is installed."
172 193 msgstr ""
173 194
174 195 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
175 -#: includes/class-cache.php:5782
196 +#: includes/class-cache.php:7886
176 197 #, php-format
177 198 msgid "%s is serving the page cache. Turn the xSpeed cache off and on again to take it over."
178 199 msgstr ""
179 200
180 -#: includes/class-cache.php:5785
201 +#: includes/class-cache.php:7889
181 202 msgid "Another plugin is serving the page cache. Turn the xSpeed cache off and on again to take it over."
182 203 msgstr ""
183 204
184 -#: includes/class-cache.php:5860
205 +#: includes/class-cache.php:7964
185 206 msgid "Could not lock page-cache ownership. Try again."
186 207 msgstr ""
187 208
188 -#: includes/class-cache.php:5866
209 +#: includes/class-cache.php:7971
189 210 msgid "Page-cache ownership changed while xSpeed was checking it. Nothing was changed; try again."
190 211 msgstr ""
191 212
192 213 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
193 -#: includes/class-cache.php:5940
214 +#: includes/class-cache.php:8110
194 215 #, php-format
195 216 msgid "%s owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
196 217 msgstr ""
197 218
198 -#: includes/class-cache.php:5943
219 +#: includes/class-cache.php:8113
199 220 msgid "Another plugin owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
200 221 msgstr ""
201 222
202 -#: includes/class-cache.php:5973
223 +#: includes/class-cache.php:8143
203 224 msgid "Could not write wp-content/advanced-cache.php. Check filesystem permissions."
204 225 msgstr ""
205 226
206 -#: includes/class-cache.php:6030
227 +#: includes/class-cache.php:8200
207 228 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 229 msgstr ""
209 230
210 -#: includes/class-cache.php:6031
231 +#: includes/class-cache.php:8201
211 232 msgid "xSpeed could not verify the complete page-cache write, and wp-config.php is not writable. Its changes were rolled back."
212 233 msgstr ""
213 234
214 -#: includes/class-cache.php:6033
235 +#: includes/class-cache.php:8203
215 236 msgid "xSpeed could not verify the complete page-cache write. Its changes were rolled back."
216 237 msgstr ""
217 238
218 -#: includes/class-cache.php:6048
239 +#: includes/class-cache.php:8218
219 240 msgid "xSpeed could not save the page-cache setting. Its file changes were rolled back."
220 241 msgstr ""
221 242
222 -#: includes/class-cache.php:6140
243 +#: includes/class-cache.php:8310
223 244 msgid "xSpeed could not safely remove its WP_CACHE setting. The cache remains enabled."
224 245 msgstr ""
225 246
226 -#: includes/class-cache.php:6155
247 +#: includes/class-cache.php:8325
227 248 msgid "xSpeed could not remove its page-cache drop-in. The cache remains enabled."
228 249 msgstr ""
229 250
230 -#: includes/class-cache.php:6156
251 +#: includes/class-cache.php:8326
231 252 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 253 msgstr ""
233 254
234 -#: includes/class-cache.php:6173
255 +#: includes/class-cache.php:8343
235 256 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 257 msgstr ""
237 258
238 -#: includes/class-cache.php:6191
259 +#: includes/class-cache.php:8361
239 260 msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. The cache remains enabled."
240 261 msgstr ""
241 262
242 -#: includes/class-cache.php:6192
263 +#: includes/class-cache.php:8362
243 264 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 265 msgstr ""
245 266
246 -#: includes/class-cache.php:6203
267 +#: includes/class-cache.php:8373
247 268 msgid "xSpeed could not save the disabled state."
248 269 msgstr ""
249 270
250 -#: includes/class-cache.php:6207
271 +#: includes/class-cache.php:8377
251 272 msgid "xSpeed could not save the disabled state. The page cache was restored."
252 273 msgstr ""
253 274
254 275 #. translators: 1: the refusal reason, 2: a page-caching plugin's name.
255 -#: includes/class-cache.php:8451
276 +#: includes/class-cache.php:10694
256 277 #, php-format
257 278 msgid "%1$s %2$s is also active on this site — deactivate its page cache before enabling xSpeed."
258 279 msgstr ""
259 280
260 281 #. translators: 1: the refusal reason, 2: comma-separated page-caching plugin names.
261 -#: includes/class-cache.php:8458
282 +#: includes/class-cache.php:10701
262 283 #, php-format
263 284 msgid "%1$s These page caches are also active on this site: %2$s. Deactivate them before enabling xSpeed."
264 285 msgstr ""
265 286
266 287 #. translators: %s: comma-separated list of page-caching plugin names.
267 -#: includes/class-cache.php:8513
288 +#: includes/class-cache.php:10756
268 289 #, php-format
269 290 msgid "More than one page cache is active on this site (%s). Turn off the other page caches before enabling xSpeed."
270 291 msgstr ""
271 292
272 -#: includes/class-cache.php:8520
293 +#: includes/class-cache.php:10763
273 294 #, php-format
274 295 msgid "%s is active or owns advanced-cache.php. Deactivate its page cache before enabling xSpeed."
275 296 msgstr ""
276 297
277 -#: includes/class-cache.php:8523
298 +#: includes/class-cache.php:10766
278 299 msgid "WP_CACHE is true but no page-cache drop-in owner can be proved. xSpeed will not claim it."
279 300 msgstr ""
280 301
281 -#: includes/class-cache.php:8524
302 +#: includes/class-cache.php:10767
282 303 msgid "wp-config.php defines WP_CACHE more than once. Remove the duplicate before enabling the cache."
283 304 msgstr ""
284 305
285 -#: includes/class-cache.php:8525
306 +#: includes/class-cache.php:10768
286 307 msgid "WP_CACHE is set from an expression in wp-config.php. xSpeed will not rewrite it."
287 308 msgstr ""
288 309
289 -#: includes/class-cache.php:8526
310 +#: includes/class-cache.php:10769
290 311 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 312 msgstr ""
292 313
293 -#: includes/class-cache.php:8527
314 +#: includes/class-cache.php:10770
294 315 msgid "wp-config.php cannot be read, so xSpeed cannot safely change page-cache ownership."
295 316 msgstr ""
296 317
297 -#: includes/class-cache.php:8528
318 +#: includes/class-cache.php:10771
298 319 msgid "advanced-cache.php is occupied but its owner cannot be proved. xSpeed will not replace it."
299 320 msgstr ""
300 321
301 -#: includes/class-cache.php:8529
322 +#: includes/class-cache.php:10772
302 323 msgid "advanced-cache.php cannot be read, so xSpeed cannot prove its owner."
303 324 msgstr ""
304 325
305 -#: includes/class-cache.php:8531
326 +#: includes/class-cache.php:10774
306 327 msgid "The page-cache field is occupied or cannot be verified. xSpeed will not change it."
307 328 msgstr ""
308 329
309 -#: includes/class-cache.php:9050
330 +#: includes/class-cache.php:11341
310 331 #: includes/class-purge-ui.php:278
311 -#: includes/class-purge-ui.php:675
332 +#: includes/class-purge-ui.php:680
312 333 msgid "Unauthorized."
313 334 msgstr ""
314 335
315 336 #. translators: %s: conflicting plugin name
@@ -422,8 +443,26 @@
422 443 #, php-format
423 444 msgid "xSpeed installed its page cache, but wp-config.php is not writable. Add this line to it to start serving: %s"
424 445 msgstr ""
425 446
447 +#: includes/class-managed-edge-purge.php:86
448 +msgid "xCloud's purge plugin is not installed"
449 +msgstr ""
450 +
451 +#. translators: 1: installed version, 2: minimum version.
452 +#: includes/class-managed-edge-purge.php:101
453 +#, php-format
454 +msgid "xCloud's purge plugin %1$s cannot take purges from xSpeed. Update it to %2$s or later from xCloud."
455 +msgstr ""
456 +
457 +#: includes/class-managed-edge-purge.php:106
458 +msgid "xCloud's purge plugin is installed but not accepting purges"
459 +msgstr ""
460 +
461 +#: includes/class-managed-edge-purge.php:177
462 +msgid "handed to xCloud's purge plugin, which sends it when this request ends"
463 +msgstr ""
464 +
426 465 #. translators: 1: source lifetime in seconds, 2: imported lifetime in hours.
427 466 #: includes/class-migration.php:343
428 467 #, php-format
429 468 msgid "Page cache lifetime %1$ds cannot be expressed in whole hours — importing as %2$dh."
@@ -429,9 +468,9 @@
429 468 msgid "Page cache lifetime %1$ds cannot be expressed in whole hours — importing as %2$dh."
430 469 msgstr ""
431 470
432 471 #: includes/class-migration.php:358
433 -#: includes/modules/ObjectCache/ObjectCacheModule.php:103
472 +#: includes/modules/ObjectCache/ObjectCacheModule.php:104
434 473 msgid "Redis password"
435 474 msgstr ""
436 475
437 476 #: includes/class-migration.php:359
@@ -494,29 +533,179 @@
494 533 msgid "Reverted \"%1$s\" on \"%2$s\" to the value set in wp-config.php."
495 534 msgstr ""
496 535
497 536 #. translators: %s: comma-separated list of "field (CONSTANT_NAME)" pairs.
498 -#: includes/class-module.php:326
537 +#: includes/class-module.php:349
499 538 #, php-format
500 539 msgid "These settings are defined in wp-config.php and cannot be changed here: %s. Edit the constant, or remove it to manage the setting from this screen."
501 540 msgstr ""
502 541
503 -#: includes/class-module.php:535
542 +#: includes/class-module.php:591
504 543 msgid "This module has no single on/off switch. It counts as on when any of its settings is on, and none currently is."
505 544 msgstr ""
506 545
507 546 #. translators: %s: comma-separated list of setting labels that are switched on.
508 -#: includes/class-module.php:540
547 +#: includes/class-module.php:596
509 548 #, php-format
510 549 msgid "This module has no single on/off switch. It counts as on because these settings are on: %s."
511 550 msgstr ""
512 551
513 552 #. translators: %s: module slug.
514 -#: includes/class-module.php:721
553 +#: includes/class-module.php:777
515 554 #, php-format
516 555 msgid "Refused a settings write to the Pro module \"%s\" — no valid license."
517 556 msgstr ""
518 557
558 +#: includes/class-object-cache-takeover.php:189
559 +msgid "There is no other object cache to switch from."
560 +msgstr ""
561 +
562 +#. translators: %s: plugin name.
563 +#: includes/class-object-cache-takeover.php:197
564 +#, php-format
565 +msgid "You do not have permission to turn off %s."
566 +msgstr ""
567 +
568 +#. translators: %s: connection error.
569 +#: includes/class-object-cache-takeover.php:206
570 +#, php-format
571 +msgid "Could not switch: %s"
572 +msgstr ""
573 +
574 +#: includes/class-object-cache-takeover.php:213
575 +msgid "Could not back up the current object-cache.php, so nothing was changed."
576 +msgstr ""
577 +
578 +#. translators: %s: plugin name.
579 +#: includes/class-object-cache-takeover.php:232
580 +#, php-format
581 +msgid "Could not turn off %s, so nothing was changed."
582 +msgstr ""
583 +
584 +#. translators: %s: plugin name.
585 +#: includes/class-object-cache-takeover.php:234
586 +#, php-format
587 +msgid "Could not turn off %s."
588 +msgstr ""
589 +
590 +#: includes/class-object-cache-takeover.php:247
591 +msgid "Could not remove the old object-cache.php, so the switch was undone."
592 +msgstr ""
593 +
594 +#: includes/class-object-cache-takeover.php:248
595 +msgid "Could not remove the old object-cache.php."
596 +msgstr ""
597 +
598 +#: includes/class-object-cache-takeover.php:270
599 +msgid "xSpeed could not take over the object cache, so the previous setup was put back."
600 +msgstr ""
601 +
602 +#: includes/class-object-cache-takeover.php:271
603 +msgid "xSpeed could not take over the object cache."
604 +msgstr ""
605 +
606 +#. translators: %s: plugin name or file name.
607 +#: includes/class-object-cache-takeover.php:306
608 +#, php-format
609 +msgid "Replaced the object-cache.php left by %s (a copy is in uploads/xspeed-backups/). xSpeed now handles object caching."
610 +msgstr ""
611 +
612 +#. translators: %s: plugin name.
613 +#: includes/class-object-cache-takeover.php:311
614 +#, php-format
615 +msgid "Object caching switched from %s to xSpeed. Disable can put it back."
616 +msgstr ""
617 +
618 +#: includes/class-object-cache-takeover.php:332
619 +msgid "There is no previous object cache to restore."
620 +msgstr ""
621 +
622 +#. translators: %s: plugin name.
623 +#: includes/class-object-cache-takeover.php:344
624 +#, php-format
625 +msgid "%s is handling object caching again."
626 +msgstr ""
627 +
628 +#. translators: %s: plugin name or file name.
629 +#: includes/class-object-cache-takeover.php:383
630 +#, php-format
631 +msgid "wp-content/object-cache.php was left by %s, which is not active. Switch to xSpeed to replace it (a copy is kept in uploads/xspeed-backups/)."
632 +msgstr ""
633 +
634 +#. translators: %s: plugin name.
635 +#: includes/class-object-cache-takeover.php:389
636 +#, php-format
637 +msgid "%s handles object caching on this site. Switch to xSpeed to take it over; Disable can put it back later."
638 +msgstr ""
639 +
640 +#. translators: %s: hosting platform name.
641 +#: includes/class-object-cache-takeover.php:524
642 +#, php-format
643 +msgid "%s manages the object cache on this site and would put its own back. Turn it off in your hosting dashboard if you want xSpeed to handle it."
644 +msgstr ""
645 +
646 +#. translators: %s: plugin name.
647 +#: includes/class-object-cache-takeover.php:539
648 +#, php-format
649 +msgid "Turn off the object cache in %s first, then enable it here."
650 +msgstr ""
651 +
652 +#. translators: %s: must-use plugin file name.
653 +#: includes/class-object-cache-takeover.php:549
654 +#, php-format
655 +msgid "The must-use plugin %s manages object-cache.php and would put it back. Ask your host before switching."
656 +msgstr ""
657 +
658 +#: includes/class-object-cache-takeover.php:570
659 +msgid "Test the connection to your cache server. Nothing changes if it fails."
660 +msgstr ""
661 +
662 +#: includes/class-object-cache-takeover.php:571
663 +msgid "Back up the current object-cache.php to wp-content/uploads/xspeed-backups/."
664 +msgstr ""
665 +
666 +#. translators: %s: plugin name.
667 +#: includes/class-object-cache-takeover.php:575
668 +#, php-format
669 +msgid "Deactivate %s. It removes its own object-cache.php as it goes."
670 +msgstr ""
671 +
672 +#. translators: %s: plugin name.
673 +#: includes/class-object-cache-takeover.php:578
674 +#, php-format
675 +msgid "Turn off Object Cache in %s. Its other features keep running."
676 +msgstr ""
677 +
678 +#. translators: %s: plugin name or file name.
679 +#: includes/class-object-cache-takeover.php:581
680 +#, php-format
681 +msgid "Remove the object-cache.php left by %s, which is not active."
682 +msgstr ""
683 +
684 +#: includes/class-object-cache-takeover.php:583
685 +msgid "Install xSpeed's object cache and check it is in place."
686 +msgstr ""
687 +
688 +#: includes/class-object-cache-takeover.php:584
689 +msgid "If any step fails, put everything back as it was."
690 +msgstr ""
691 +
692 +#. translators: %s: plugin name.
693 +#: includes/class-object-cache-takeover.php:1018
694 +#, php-format
695 +msgid "%s could not be turned back on (is it still installed?), so its object-cache.php was not put back. WordPress is using its built-in cache."
696 +msgstr ""
697 +
698 +#. translators: %s: plugin name.
699 +#: includes/class-object-cache-takeover.php:1025
700 +#, php-format
701 +msgid "%s is on again, but its object-cache.php could not be put back (is wp-content writable?), so the site has no object cache. Turn its object cache on again from its settings."
702 +msgstr ""
703 +
704 +#: includes/class-object-cache-takeover.php:1029
705 +msgid "xSpeed's object-cache.php could not be removed, so the previous plugin was not put back. Check that wp-content is writable."
706 +msgstr ""
707 +
519 708 #. translators: %s: brand name (xSpeed by default, or the white-label name).
520 709 #: includes/class-onboarding.php:56
521 710 #, php-format
522 711 msgid "%s Setup Wizard"
@@ -730,33 +919,33 @@
730 919 msgid "The page got measurably slower: median render time %1$dms before, %2$dms after (+%3$d%%), beyond what run-to-run noise explains. The change was undone."
731 920 msgstr ""
732 921
733 922 #. translators: 1: number of URLs, 2: the sitemap failure detail.
734 -#: includes/class-preloader.php:260
923 +#: includes/class-preloader.php:383
735 924 #, php-format
736 925 msgid "Preloader queued %1$d URLs from the site content — %2$s"
737 926 msgstr ""
738 927
739 928 #. translators: %s: the sitemap failure detail.
740 -#: includes/class-preloader.php:268
929 +#: includes/class-preloader.php:391
741 930 #, php-format
742 931 msgid "Preloader could not start — %s"
743 932 msgstr ""
744 933
745 934 #. translators: 1: number of URLs, 2: plural suffix.
746 -#: includes/class-preloader.php:275
935 +#: includes/class-preloader.php:398
747 936 #, php-format
748 937 msgid "Preloader queued %1$d URL%2$s for warming."
749 938 msgstr ""
750 939
751 940 #. translators: 1: sitemap URL, 2: error detail.
752 -#: includes/class-preloader.php:745
941 +#: includes/class-preloader.php:845
753 942 #, php-format
754 943 msgid "Could not fetch the sitemap at %1$s — %2$s"
755 944 msgstr ""
756 945
757 946 #. translators: 1: sitemap URL, 2: HTTP status code.
758 -#: includes/class-preloader.php:758
947 +#: includes/class-preloader.php:858
759 948 #, php-format
760 949 msgid "Could not fetch the sitemap at %1$s — the server returned HTTP %2$d."
761 950 msgstr ""
762 951
@@ -770,21 +959,25 @@
770 959 #: assets/admin.js
771 960 msgid "the purge was refused"
772 961 msgstr ""
773 962
774 -#: includes/class-purge-runner.php:246
775 -msgid "Page cache (HTML, static, REST, minified assets)"
963 +#: includes/class-purge-runner.php:248
964 +msgid "Page cache (HTML, static, REST)"
776 965 msgstr ""
777 966
778 -#: includes/class-purge-runner.php:257
967 +#: includes/class-purge-runner.php:259
779 968 msgid "Object cache"
780 969 msgstr ""
781 970
782 -#: includes/class-purge-runner.php:263
971 +#: includes/class-purge-runner.php:265
783 972 msgid "Cloudflare edge"
784 973 msgstr ""
785 974
786 -#: includes/class-purge-runner.php:269
975 +#: includes/class-purge-runner.php:277
976 +msgid "Cloudflare Enterprise (xCloud)"
977 +msgstr ""
978 +
979 +#: includes/class-purge-runner.php:285
787 980 #: includes/modules/Cdn/CdnModule.php:28
788 981 #: includes/modules/Migration/MigrationModule.php:556
789 982 msgid "CDN"
790 983 msgstr ""
@@ -789,40 +982,40 @@
789 982 msgid "CDN"
790 983 msgstr ""
791 984
792 985 #. translators: 1: what asked for the purge, 2: number of files removed.
793 -#: includes/class-purge-runner.php:335
986 +#: includes/class-purge-runner.php:351
794 987 #, php-format
795 988 msgid "Cache purged (%1$s) — %2$d file(s) removed"
796 989 msgstr ""
797 990
798 -#: includes/class-purge-runner.php:359
991 +#: includes/class-purge-runner.php:375
799 992 msgid "the object cache engine is unavailable"
800 993 msgstr ""
801 994
802 -#: includes/class-purge-runner.php:363
995 +#: includes/class-purge-runner.php:379
803 996 msgid "no persistent object cache drop-in is in use"
804 997 msgstr ""
805 998
806 -#: includes/class-purge-runner.php:366
999 +#: includes/class-purge-runner.php:382
807 1000 msgid "the drop-in is installed but is not persisting anything"
808 1001 msgstr ""
809 1002
810 1003 #. translators: %s: what asked for the purge.
811 -#: includes/class-purge-runner.php:388
1004 +#: includes/class-purge-runner.php:404
812 1005 #, php-format
813 1006 msgid "Purged object cache (%s)"
814 1007 msgstr ""
815 1008
816 -#: includes/class-purge-runner.php:398
1009 +#: includes/class-purge-runner.php:414
817 1010 msgid "the backend refused the flush"
818 1011 msgstr ""
819 1012
820 -#: includes/class-purge-runner.php:410
1013 +#: includes/class-purge-runner.php:426
821 1014 msgid "the Cloudflare module is not available"
822 1015 msgstr ""
823 1016
824 -#: includes/class-purge-runner.php:434
1017 +#: includes/class-purge-runner.php:450
825 1018 msgid "no CDN with a purge API is configured — xSpeed's CDN module rewrites asset URLs and holds no cache of its own"
826 1019 msgstr ""
827 1020
828 1021 #: includes/class-purge-ui.php:263
@@ -833,14 +1026,23 @@
833 1026 msgid "That URL is not on this site."
834 1027 msgstr ""
835 1028
836 1029 #: includes/class-purge-ui.php:292
837 -#: includes/class-purge-ui.php:697
1030 +#: includes/class-purge-ui.php:649
1031 +#: includes/class-purge-ui.php:665
838 1032 msgid "admin"
839 1033 msgstr ""
840 1034
1035 +#. translators: 1: URL path of the post, 2: number of pages that list it, 3: number of files removed.
1036 +#: includes/class-purge-ui.php:416
1037 +#, php-format
1038 +msgid "xSpeed: %1$s is listed on %2$d pages, too many to clear one by one, so the whole site cache was cleared (%3$d file)."
1039 +msgid_plural "xSpeed: %1$s is listed on %2$d pages, too many to clear one by one, so the whole site cache was cleared (%3$d files)."
1040 +msgstr[0] ""
1041 +msgstr[1] ""
1042 +
841 1043 #. translators: 1: URL path of the post, 2: number of OTHER pages also cleared.
842 -#: includes/class-purge-ui.php:414
1044 +#: includes/class-purge-ui.php:434
843 1045 #, php-format
844 1046 msgid "%1$s and %2$d page that lists it"
845 1047 msgid_plural "%1$s and %2$d pages that list it"
846 1048 msgstr[0] ""
@@ -845,16 +1047,22 @@
845 1047 msgid_plural "%1$s and %2$d pages that list it"
846 1048 msgstr[0] ""
847 1049 msgstr[1] ""
848 1050
1051 +#. translators: 1: what was purged, 2: caches in front of the site, comma-separated.
1052 +#: includes/class-purge-ui.php:449
1053 +#, php-format
1054 +msgid "xSpeed: sent the purge for %1$s to %2$s. xSpeed's own cache held no copy."
1055 +msgstr ""
1056 +
849 1057 #. translators: %s: what was purged.
850 -#: includes/class-purge-ui.php:428
1058 +#: includes/class-purge-ui.php:458
851 1059 #, php-format
852 1060 msgid "xSpeed: %s was not cached, so there was nothing to clear."
853 1061 msgstr ""
854 1062
855 1063 #. translators: 1: what was purged, 2: number of files removed.
856 -#: includes/class-purge-ui.php:435
1064 +#: includes/class-purge-ui.php:465
857 1065 #, php-format
858 1066 msgid "xSpeed: cleared the cache for %1$s (%2$d file)."
859 1067 msgid_plural "xSpeed: cleared the cache for %1$s (%2$d files)."
860 1068 msgstr[0] ""
@@ -859,141 +1067,145 @@
859 1067 msgid_plural "xSpeed: cleared the cache for %1$s (%2$d files)."
860 1068 msgstr[0] ""
861 1069 msgstr[1] ""
862 1070
863 -#: includes/class-purge-ui.php:497
1071 +#: includes/class-purge-ui.php:547
864 1072 msgid "cleared"
865 1073 msgstr ""
866 1074
867 -#: includes/class-purge-ui.php:498
1075 +#: includes/class-purge-ui.php:548
868 1076 msgid "was not cached"
869 1077 msgstr ""
870 1078
871 -#: includes/class-purge-ui.php:533
1079 +#: includes/class-purge-ui.php:583
872 1080 msgid "Purge this post"
873 1081 msgstr ""
874 1082
875 -#: includes/class-purge-ui.php:543
1083 +#: includes/class-purge-ui.php:593
876 1084 msgid "Purge this URL"
877 1085 msgstr ""
878 1086
879 -#: includes/class-purge-ui.php:684
1087 +#: includes/class-purge-ui.php:689
880 1088 msgid "That post does not exist."
881 1089 msgstr ""
882 1090
883 -#: includes/class-recommendations.php:47
1091 +#: includes/class-recommendations.php:61
884 1092 msgid "Enable page caching"
885 1093 msgstr ""
886 1094
887 -#: includes/class-recommendations.php:48
1095 +#: includes/class-recommendations.php:62
888 1096 msgid "Caching is off, so every visit renders the full page. Turning it on is the single biggest speed win."
889 1097 msgstr ""
890 1098
891 -#: includes/class-recommendations.php:58
1099 +#: includes/class-recommendations.php:72
892 1100 msgid "Go to Cache settings"
893 1101 msgstr ""
894 1102
895 -#: includes/class-recommendations.php:74
1103 +#: includes/class-recommendations.php:88
896 1104 msgid "Raise Cache Expiry to match your preload schedule"
897 1105 msgstr ""
898 1106
899 1107 #. translators: 1: current expiry hours, 2: preload interval hours.
900 -#: includes/class-recommendations.php:77
1108 +#: includes/class-recommendations.php:91
901 1109 #, php-format
902 1110 msgid "Pages expire after %1$dh but the preloader only re-warms them every %2$dh — most visits hit a cold cache."
903 1111 msgstr ""
904 1112
905 1113 #. translators: %d: recommended expiry in hours.
906 -#: includes/class-recommendations.php:87
1114 +#: includes/class-recommendations.php:101
907 1115 #, php-format
908 1116 msgid "Raise expiry to %dh"
909 1117 msgstr ""
910 1118
911 -#: includes/class-recommendations.php:99
1119 +#: includes/class-recommendations.php:113
912 1120 msgid "A plugin"
913 1121 msgstr ""
914 1122
915 -#: includes/class-recommendations.php:103
1123 +#: includes/class-recommendations.php:117
916 1124 msgid "A plugin is blocking CDN edge caching"
917 1125 msgstr ""
918 1126
919 1127 #. translators: 1: plugin name, 2: cookie name.
920 -#: includes/class-recommendations.php:106
1128 +#: includes/class-recommendations.php:120
921 1129 #, php-format
922 1130 msgid "%1$s sets the \"%2$s\" cookie on anonymous pages, which makes CDNs skip their edge cache for all HTML."
923 1131 msgstr ""
924 1132
925 -#: includes/class-recommendations.php:114
1133 +#: includes/class-recommendations.php:128
926 1134 msgid "See details in Health"
927 1135 msgstr ""
928 1136
929 -#: includes/class-recommendations.php:124
1137 +#: includes/class-recommendations.php:138
930 1138 msgid "Apply the nginx server snippet"
931 1139 msgstr ""
932 1140
933 -#: includes/class-recommendations.php:125
1141 +#: includes/class-recommendations.php:139
934 1142 msgid "nginx can serve cache hits directly (~5-15ms TTFB, PHP bypassed) once the snippet is in your server block."
935 1143 msgstr ""
936 1144
937 -#: includes/class-recommendations.php:128
1145 +#: includes/class-recommendations.php:142
938 1146 msgid "Get the snippet"
939 1147 msgstr ""
940 1148
941 -#: includes/class-recommendations.php:138
1149 +#: includes/class-recommendations.php:152
942 1150 msgid "Turn on the preloader"
943 1151 msgstr ""
944 1152
945 1153 #. translators: %d: hit ratio percent.
946 -#: includes/class-recommendations.php:141
1154 +#: includes/class-recommendations.php:155
947 1155 #, php-format
948 1156 msgid "Your hit ratio is %d%% — most visitors hit a cold cache. The preloader crawls your sitemap so pages are warm before anyone asks."
949 1157 msgstr ""
950 1158
951 -#: includes/class-recommendations.php:148
1159 +#: includes/class-recommendations.php:162
952 1160 #: includes/modules/Preloader/PreloaderModule.php:78
953 1161 msgid "Enable preloader"
954 1162 msgstr ""
955 1163
956 -#: includes/class-recommendations.php:158
1164 +#: includes/class-recommendations.php:172
957 1165 msgid "Object cache is configured but not persisting"
958 1166 msgstr ""
959 1167
960 -#: includes/class-recommendations.php:159
1168 +#: includes/class-recommendations.php:173
961 1169 msgid "The backend is not connected, so every request falls back to the database. Run the connection test to see why."
962 1170 msgstr ""
963 1171
964 -#: includes/class-recommendations.php:162
1172 +#: includes/class-recommendations.php:176
965 1173 msgid "Test the connection"
966 1174 msgstr ""
967 1175
968 -#: includes/class-recommendations.php:173
1176 +#: includes/class-recommendations.php:187
969 1177 msgid "Finish connecting Cloudflare"
970 1178 msgstr ""
971 1179
972 -#: includes/class-recommendations.php:174
1180 +#: includes/class-recommendations.php:188
973 1181 msgid "The Cloudflare module is on but has no verified credentials or zone, so edge purges cannot work."
974 1182 msgstr ""
975 1183
976 -#: includes/class-recommendations.php:177
1184 +#: includes/class-recommendations.php:191
977 1185 msgid "Open Cloudflare settings"
978 1186 msgstr ""
979 1187
980 -#: includes/class-recommendations.php:251
1188 +#: includes/class-recommendations.php:419
981 1189 msgid "This recommendation links to a settings screen; it has no one-click fix."
982 1190 msgstr ""
983 1191
984 -#: includes/class-recommendations.php:284
1192 +#: includes/class-recommendations.php:452
985 1193 msgid "Unknown or no-longer-applicable recommendation."
986 1194 msgstr ""
987 1195
988 -#: includes/class-rest-api.php:352
1196 +#: includes/class-rest-api.php:382
989 1197 msgid "The id argument is required."
990 1198 msgstr ""
991 1199
992 -#: includes/class-rest-api.php:479
1200 +#: includes/class-rest-api.php:515
993 1201 msgid "dashboard"
994 1202 msgstr ""
995 1203
1204 +#: includes/class-rest-api.php:619
1205 +msgid "That is not a rules marker this site could have generated."
1206 +msgstr ""
1207 +
996 1208 #: includes/class-rest-manager.php:83
997 1209 msgid "No route was found matching the URL and request method."
998 1210 msgstr ""
999 1211
@@ -1000,40 +1212,40 @@
1000 1212 #: includes/class-rest-manager.php:145
1001 1213 msgid "The request could not be completed due to a server error."
1002 1214 msgstr ""
1003 1215
1004 -#: includes/class-scan.php:123
1216 +#: includes/class-scan.php:142
1005 1217 msgid "That does not look like a public URL the scanner can reach."
1006 1218 msgstr ""
1007 1219
1008 -#: includes/class-scan.php:134
1220 +#: includes/class-scan.php:153
1009 1221 msgid "A scan is already running for this site."
1010 1222 msgstr ""
1011 1223
1012 -#: includes/class-scan.php:173
1224 +#: includes/class-scan.php:193
1013 1225 msgid "The scanner is rate limited right now. Try again in a few minutes."
1014 1226 msgstr ""
1015 1227
1016 -#: includes/class-scan.php:185
1228 +#: includes/class-scan.php:205
1017 1229 #: assets/admin.js
1018 1230 msgid "The scan could not be started."
1019 1231 msgstr ""
1020 1232
1021 -#: includes/class-scan.php:221
1233 +#: includes/class-scan.php:241
1022 1234 msgid "That is not a valid scan id."
1023 1235 msgstr ""
1024 1236
1025 -#: includes/class-scan.php:251
1237 +#: includes/class-scan.php:271
1026 1238 msgid "The scan did not complete."
1027 1239 msgstr ""
1028 1240
1029 1241 #. translators: %s: transport error message.
1030 -#: includes/class-scan.php:436
1242 +#: includes/class-scan.php:501
1031 1243 #, php-format
1032 1244 msgid "Could not reach the scanner: %s"
1033 1245 msgstr ""
1034 1246
1035 -#: includes/class-scan.php:446
1247 +#: includes/class-scan.php:511
1036 1248 msgid "The scanner returned an unreadable response."
1037 1249 msgstr ""
1038 1250
1039 1251 #. translators: %d: HTTP status code.
@@ -1063,8 +1275,14 @@
1063 1275 #: includes/class-score.php:412
1064 1276 msgid "GTmetrix returned an unreadable response."
1065 1277 msgstr ""
1066 1278
1279 +#. translators: %d: most URLs purged one by one.
1280 +#: includes/class-server-caches.php:574
1281 +#, php-format
1282 +msgid "Cleared the whole nginx cache: more than %d pages changed in one request, too many to purge one by one"
1283 +msgstr ""
1284 +
1067 1285 #: includes/class-server.php:746
1068 1286 msgid "an unreadable advanced-cache.php"
1069 1287 msgstr ""
1070 1288
@@ -1297,93 +1515,109 @@
1297 1515 #: includes/modules/Cache/CacheModule.php:200
1298 1516 msgid "How long a cached page is kept before xSpeed builds it again. 1 to 720 hours (30 days)."
1299 1517 msgstr ""
1300 1518
1301 -#: includes/modules/Cache/CacheModule.php:230
1519 +#: includes/modules/Cache/CacheModule.php:231
1302 1520 msgid "Excluded URLs"
1303 1521 msgstr ""
1304 1522
1305 -#: includes/modules/Cache/CacheModule.php:231
1523 +#: includes/modules/Cache/CacheModule.php:232
1306 1524 msgid "Pages whose URL matches a line here are never cached. Plain text matches anywhere (/cart). A pattern with * matches from the start of the path: /cart/* matches /cart/items but not /shop/cart/items. ~ starts a regex."
1307 1525 msgstr ""
1308 1526
1309 -#: includes/modules/Cache/CacheModule.php:240
1527 +#: includes/modules/Cache/CacheModule.php:241
1310 1528 msgid "Excluded cookies"
1311 1529 msgstr ""
1312 1530
1313 -#: includes/modules/Cache/CacheModule.php:241
1531 +#: includes/modules/Cache/CacheModule.php:242
1314 1532 msgid "Visitors with a cookie whose name matches a line here always get a fresh page. One per line; * and ~regex work."
1315 1533 msgstr ""
1316 1534
1317 -#: includes/modules/Cache/CacheModule.php:247
1535 +#: includes/modules/Cache/CacheModule.php:248
1318 1536 msgid "Excluded browsers and bots"
1319 1537 msgstr ""
1320 1538
1321 -#: includes/modules/Cache/CacheModule.php:248
1539 +#: includes/modules/Cache/CacheModule.php:249
1322 1540 msgid "Visitors whose user agent contains a line here always get a fresh page. Useful for screenshot bots and uptime monitors."
1323 1541 msgstr ""
1324 1542
1325 -#: includes/modules/Cache/CacheModule.php:259
1543 +#: includes/modules/Cache/CacheModule.php:260
1326 1544 msgid "Ignored query parameters"
1327 1545 msgstr ""
1328 1546
1329 -#: includes/modules/Cache/CacheModule.php:261
1547 +#: includes/modules/Cache/CacheModule.php:262
1330 1548 msgid "URL parameters to ignore, so /post?utm_source=x gets the same cached page as /post. Each line matches a whole parameter name."
1331 1549 msgstr ""
1332 1550
1333 -#: includes/modules/Cache/CacheModule.php:266
1551 +#: includes/modules/Cache/CacheModule.php:267
1334 1552 msgid "Clear cache after updates"
1335 1553 msgstr ""
1336 1554
1337 -#: includes/modules/Cache/CacheModule.php:267
1555 +#: includes/modules/Cache/CacheModule.php:268
1338 1556 msgid "Clear the page cache when a plugin, theme or WordPress is updated, so visitors never get old pages with broken asset links."
1339 1557 msgstr ""
1340 1558
1341 -#: includes/modules/Cache/CacheModule.php:272
1559 +#: includes/modules/Cache/CacheModule.php:273
1560 +msgid "Clear only the pages a change affects"
1561 +msgstr ""
1562 +
1563 +#: includes/modules/Cache/CacheModule.php:274
1564 +msgid "When you publish, edit or delete a post, clear that post, the pages that list it and its feeds instead of the whole site. Pages with a post grid from a page builder, a block plugin or the theme are noted as they are built and cleared when the change can affect their list; turn this off if a grid still shows an old list."
1565 +msgstr ""
1566 +
1567 +#: includes/modules/Cache/CacheModule.php:275
1568 +msgid "Which pages are cleared"
1569 +msgstr ""
1570 +
1571 +#: includes/modules/Cache/CacheModule.php:276
1572 +msgid "The post, its old address if it moved, the home page, the blog page, its categories, tags and author pages with every page of each, the date archives, feeds, the posts next to it, pages that show a Latest Posts or Query Loop block, directly or in a synced pattern, and pages noted running a post grid of their own (a page builder, block plugin, related-posts or theme list) that the change can affect. If your theme shows a list that can be on any page, and the change alters it, xSpeed clears the whole site instead: a Recent Posts, Archives or Calendar widget, a post list block, or a latest-posts grid from a page builder or plugin (usually a new post, or an edit to one of the newest few it shows), a page list or menu (a page published, withdrawn, renamed or moved), or a Categories or Tag Cloud list (a post moved to other categories or tags)."
1573 +msgstr ""
1574 +
1575 +#: includes/modules/Cache/CacheModule.php:281
1342 1576 msgid "Separate mobile cache"
1343 1577 msgstr ""
1344 1578
1345 -#: includes/modules/Cache/CacheModule.php:273
1579 +#: includes/modules/Cache/CacheModule.php:282
1346 1580 msgid "Keep a separate cached copy for phones. Turn on only if your theme or plugins show different pages on mobile."
1347 1581 msgstr ""
1348 1582
1349 -#: includes/modules/Cache/CacheModule.php:305
1583 +#: includes/modules/Cache/CacheModule.php:314
1350 1584 msgid "CDN or proxy in front"
1351 1585 msgstr ""
1352 1586
1353 -#: includes/modules/Cache/CacheModule.php:306
1587 +#: includes/modules/Cache/CacheModule.php:315
1354 1588 msgid "Tells your CDN or proxy not to store pages xSpeed does not cache. Leave on Detect automatically unless you know your provider."
1355 1589 msgstr ""
1356 1590
1357 -#: includes/modules/Cache/CacheModule.php:308
1591 +#: includes/modules/Cache/CacheModule.php:317
1358 1592 msgid "Cache in front of this site"
1359 1593 msgstr ""
1360 1594
1361 -#: includes/modules/Cache/CacheModule.php:309
1362 -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."
1595 +#: includes/modules/Cache/CacheModule.php:318
1596 +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. Off stops the edge lifetime and cache tags. When an add-on that manages the edge, such as a Cloudflare Enterprise add-on, is active, the \"don't store\" headers for logged-in, cart and search pages still go out. Run \"wp xspeed cache edge\" to see what was detected and what gets sent."
1363 1597 msgstr ""
1364 1598
1365 -#: includes/modules/Cache/CacheModule.php:315
1599 +#: includes/modules/Cache/CacheModule.php:324
1366 1600 msgid "Custom CDN headers"
1367 1601 msgstr ""
1368 1602
1369 -#: includes/modules/Cache/CacheModule.php:318
1603 +#: includes/modules/Cache/CacheModule.php:327
1370 1604 msgid "One header per line, as Name: value, for example \"Surrogate-Control: no-store\". Lines starting with # are ignored."
1371 1605 msgstr ""
1372 1606
1373 -#: includes/modules/Cache/CacheModule.php:319
1607 +#: includes/modules/Cache/CacheModule.php:328
1374 1608 msgid "Custom edge headers"
1375 1609 msgstr ""
1376 1610
1377 -#: includes/modules/Cache/CacheModule.php:320
1611 +#: includes/modules/Cache/CacheModule.php:329
1378 1612 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."
1379 1613 msgstr ""
1380 1614
1381 -#: includes/modules/Cache/CacheModule.php:333
1615 +#: includes/modules/Cache/CacheModule.php:342
1382 1616 msgid "LiteSpeed static fast path"
1383 1617 msgstr ""
1384 1618
1385 -#: includes/modules/Cache/CacheModule.php:335
1619 +#: includes/modules/Cache/CacheModule.php:344
1386 1620 msgid "LiteSpeed serves cached pages without running PHP, which is faster on slow hosts. These visits are not counted in the dashboard hit ratio."
1387 1621 msgstr ""
1388 1622
1389 1623 #: includes/modules/CacheCoverage/CacheCoverageModule.php:36
@@ -1494,15 +1728,15 @@
1494 1728 msgid "Clear the Cloudflare cache each time xSpeed clears its own, for example after you save a post."
1495 1729 msgstr ""
1496 1730
1497 1731 #. translators: %d: number of URLs that changed at once.
1498 -#: includes/modules/Cloudflare/CloudflareModule.php:481
1732 +#: includes/modules/Cloudflare/CloudflareModule.php:489
1499 1733 #, php-format
1500 1734 msgid "Purging the whole Cloudflare zone: %d URLs changed at once, too many to purge individually"
1501 1735 msgstr ""
1502 1736
1503 1737 #. translators: %d: number of URLs.
1504 -#: includes/modules/Cloudflare/CloudflareModule.php:542
1738 +#: includes/modules/Cloudflare/CloudflareModule.php:550
1505 1739 #, php-format
1506 1740 msgid "Skipped a queued Cloudflare purge of %d URL: the connection is no longer available"
1507 1741 msgid_plural "Skipped a queued Cloudflare purge of %d URLs: the connection is no longer available"
1508 1742 msgstr[0] ""
@@ -1508,9 +1742,9 @@
1508 1742 msgstr[0] ""
1509 1743 msgstr[1] ""
1510 1744
1511 1745 #. translators: %d: number of URLs purged.
1512 -#: includes/modules/Cloudflare/CloudflareModule.php:573
1746 +#: includes/modules/Cloudflare/CloudflareModule.php:581
1513 1747 #, php-format
1514 1748 msgid "Purged %d URL from the Cloudflare edge cache"
1515 1749 msgid_plural "Purged %d URLs from the Cloudflare edge cache"
1516 1750 msgstr[0] ""
@@ -1516,62 +1750,62 @@
1516 1750 msgstr[0] ""
1517 1751 msgstr[1] ""
1518 1752
1519 1753 #. translators: 1: number of URLs, 2: failure reason.
1520 -#: includes/modules/Cloudflare/CloudflareModule.php:589
1754 +#: includes/modules/Cloudflare/CloudflareModule.php:597
1521 1755 #, php-format
1522 1756 msgid "Cloudflare URL purge failed (%1$d URL(s)): %2$s"
1523 1757 msgstr ""
1524 1758
1525 -#: includes/modules/Cloudflare/CloudflareModule.php:591
1526 -#: includes/modules/Cloudflare/CloudflareModule.php:658
1759 +#: includes/modules/Cloudflare/CloudflareModule.php:599
1760 +#: includes/modules/Cloudflare/CloudflareModule.php:670
1527 1761 msgid "unknown error"
1528 1762 msgstr ""
1529 1763
1530 -#: includes/modules/Cloudflare/CloudflareModule.php:607
1764 +#: includes/modules/Cloudflare/CloudflareModule.php:615
1531 1765 msgid "the Cloudflare integration is switched off"
1532 1766 msgstr ""
1533 1767
1534 -#: includes/modules/Cloudflare/CloudflareModule.php:610
1768 +#: includes/modules/Cloudflare/CloudflareModule.php:622
1535 1769 msgid "no zone ID or API credentials are configured"
1536 1770 msgstr ""
1537 1771
1538 1772 #. translators: %s: what asked for the purge.
1539 -#: includes/modules/Cloudflare/CloudflareModule.php:646
1773 +#: includes/modules/Cloudflare/CloudflareModule.php:658
1540 1774 #, php-format
1541 1775 msgid "Purged the Cloudflare edge cache (%s)"
1542 1776 msgstr ""
1543 1777
1544 1778 #. translators: 1: what asked for the purge, 2: failure reason.
1545 -#: includes/modules/Cloudflare/CloudflareModule.php:656
1779 +#: includes/modules/Cloudflare/CloudflareModule.php:668
1546 1780 #, php-format
1547 1781 msgid "Cloudflare purge failed (%1$s): %2$s"
1548 1782 msgstr ""
1549 1783
1550 -#: includes/modules/Cloudflare/CloudflareModule.php:728
1784 +#: includes/modules/Cloudflare/CloudflareModule.php:742
1551 1785 msgid "Cloudflare is not fully configured."
1552 1786 msgstr ""
1553 1787
1554 -#: includes/modules/Cloudflare/CloudflareModule.php:729
1788 +#: includes/modules/Cloudflare/CloudflareModule.php:743
1555 1789 msgid "Add your API token (or Global API Key + account email) and the Zone ID, then press Verify. Until then auto-purge does nothing."
1556 1790 msgstr ""
1557 1791
1558 -#: includes/modules/Cloudflare/CloudflareModule.php:742
1792 +#: includes/modules/Cloudflare/CloudflareModule.php:756
1559 1793 msgid "Cloudflare purge is failing."
1560 1794 msgstr ""
1561 1795
1562 1796 #. translators: %s: the Cloudflare API error message, or empty.
1563 -#: includes/modules/Cloudflare/CloudflareModule.php:745
1797 +#: includes/modules/Cloudflare/CloudflareModule.php:759
1564 1798 #, php-format
1565 1799 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."
1566 1800 msgstr ""
1567 1801
1568 -#: includes/modules/Cloudflare/CloudflareModule.php:754
1802 +#: includes/modules/Cloudflare/CloudflareModule.php:768
1569 1803 msgid "Cloudflare credentials were rejected."
1570 1804 msgstr ""
1571 1805
1572 1806 #. translators: %s: the Cloudflare API error message, or empty.
1573 -#: includes/modules/Cloudflare/CloudflareModule.php:757
1807 +#: includes/modules/Cloudflare/CloudflareModule.php:771
1574 1808 #, php-format
1575 1809 msgid "The saved credentials could not verify this zone%s. Auto-purge will not work until this is fixed."
1576 1810 msgstr ""
1577 1811
@@ -1641,9 +1875,9 @@
1641 1875 msgid "Show text while fonts load"
1642 1876 msgstr ""
1643 1877
1644 1878 #: includes/modules/Fonts/FontsModule.php:48
1645 -msgid "Google Fonts text shows at once in a standard font, then switches when the web font arrives."
1879 +msgid "Text in Google Fonts, and in fonts added to WordPress itself, shows at once in a standard font, then switches when the web font arrives."
1646 1880 msgstr ""
1647 1881
1648 1882 #: includes/modules/Fonts/FontsModule.php:54
1649 1883 msgid "Fonts to preload"
@@ -1713,114 +1947,114 @@
1713 1947 #: includes/modules/Gzip/GzipModule.php:199
1714 1948 msgid "xSpeed can only auto-configure GZIP on Apache and LiteSpeed (via .htaccess). Paste the snippet below into your server config and reload."
1715 1949 msgstr ""
1716 1950
1717 -#: includes/modules/Health/HealthModule.php:66
1951 +#: includes/modules/Health/HealthModule.php:76
1718 1952 msgid "xSpeed static-rewrite cache"
1719 1953 msgstr ""
1720 1954
1721 -#: includes/modules/Health/HealthModule.php:125
1955 +#: includes/modules/Health/HealthModule.php:135
1722 1956 msgid "xSpeed static-rewrite cache is active"
1723 1957 msgstr ""
1724 1958
1725 -#: includes/modules/Health/HealthModule.php:128
1959 +#: includes/modules/Health/HealthModule.php:138
1726 1960 #: assets/admin.js
1727 1961 msgid "Performance"
1728 1962 msgstr ""
1729 1963
1730 -#: includes/modules/Health/HealthModule.php:131
1964 +#: includes/modules/Health/HealthModule.php:141
1731 1965 msgid "Cache hits bypass PHP for ~5-15ms TTFB."
1732 1966 msgstr ""
1733 1967
1734 -#: includes/modules/Health/HealthModule.php:137
1968 +#: includes/modules/Health/HealthModule.php:147
1735 1969 msgid "xSpeed cache is disabled"
1736 1970 msgstr ""
1737 1971
1738 -#: includes/modules/Health/HealthModule.php:139
1972 +#: includes/modules/Health/HealthModule.php:149
1739 1973 msgid "Enable the page cache in the xSpeed dashboard to start serving cached HTML for non-logged-in visitors."
1740 1974 msgstr ""
1741 1975
1742 -#: includes/modules/Health/HealthModule.php:155
1976 +#: includes/modules/Health/HealthModule.php:165
1743 1977 msgid "xSpeed is serving cache hits through PHP (LiteSpeed)"
1744 1978 msgstr ""
1745 1979
1746 -#: includes/modules/Health/HealthModule.php:157
1980 +#: includes/modules/Health/HealthModule.php:167
1747 1981 msgid "Caching is working — hits are served by the xSpeed drop-in and tagged X-XSpeed-Cache: HIT (php), so every hit is visible and counted. LiteSpeed's .htaccess engine cannot tag or log statically served files, so this is the default. To serve hits straight from the web server with no PHP (at the cost of that tagging and counting), turn on LiteSpeed Static Fast Path in xSpeed's Cache settings."
1748 1982 msgstr ""
1749 1983
1750 -#: includes/modules/Health/HealthModule.php:159
1984 +#: includes/modules/Health/HealthModule.php:169
1751 1985 msgid "xSpeed is serving cache hits through PHP"
1752 1986 msgstr ""
1753 1987
1754 -#: includes/modules/Health/HealthModule.php:161
1988 +#: includes/modules/Health/HealthModule.php:171
1755 1989 msgid "Caching is working — hits are served by the xSpeed drop-in and tagged X-XSpeed-Cache: HIT (php). The faster .htaccess fast path is off because Apache's mod_headers module is not loaded, without which a static hit could not be tagged or counted. Enable mod_headers (a2enmod headers on Debian/Ubuntu, then restart Apache) to shave roughly 20-30ms off each cache hit."
1756 1990 msgstr ""
1757 1991
1758 -#: includes/modules/Health/HealthModule.php:163
1759 -#: includes/modules/Health/HealthModule.php:202
1992 +#: includes/modules/Health/HealthModule.php:173
1993 +#: includes/modules/Health/HealthModule.php:212
1760 1994 msgid "xSpeed static rewrite is off (Separate Mobile Cache)"
1761 1995 msgstr ""
1762 1996
1763 -#: includes/modules/Health/HealthModule.php:165
1764 -#: includes/modules/Health/HealthModule.php:204
1997 +#: includes/modules/Health/HealthModule.php:175
1998 +#: includes/modules/Health/HealthModule.php:214
1765 1999 msgid "Separate Mobile Cache is on, so cache hits are served by the PHP drop-in to keep per-device HTML correct. Turn Separate Mobile Cache off if your site serves the same HTML to every device to regain the faster static path."
1766 2000 msgstr ""
1767 2001
1768 -#: includes/modules/Health/HealthModule.php:169
2002 +#: includes/modules/Health/HealthModule.php:179
1769 2003 msgid "xSpeed .htaccess rewrite block is missing"
1770 2004 msgstr ""
1771 2005
1772 -#: includes/modules/Health/HealthModule.php:171
2006 +#: includes/modules/Health/HealthModule.php:181
1773 2007 msgid "Without the static-rewrite block, cache hits go through the PHP drop-in (~85ms TTFB) instead of the web server (~5-15ms). Toggle Enable Cache off and on in xSpeed to reinstall the block."
1774 2008 msgstr ""
1775 2009
1776 -#: includes/modules/Health/HealthModule.php:196
2010 +#: includes/modules/Health/HealthModule.php:206
1777 2011 msgid "xSpeed nginx static rewrite is active"
1778 2012 msgstr ""
1779 2013
1780 -#: includes/modules/Health/HealthModule.php:198
2014 +#: includes/modules/Health/HealthModule.php:208
1781 2015 msgid "nginx is serving cache hits directly — PHP is bypassed (~5-15ms TTFB). No action needed."
1782 2016 msgstr ""
1783 2017
1784 -#: includes/modules/Health/HealthModule.php:208
2018 +#: includes/modules/Health/HealthModule.php:218
1785 2019 msgid "xSpeed is serving cache hits through PHP (pages contain nonces)"
1786 2020 msgstr ""
1787 2021
1788 -#: includes/modules/Health/HealthModule.php:210
2022 +#: includes/modules/Health/HealthModule.php:220
1789 2023 msgid "Your nginx config is correct, but pages are not reaching the static cache, so hits are served by PHP. They contain nonces, and a static file is served with no PHP — nothing could ever refresh them, so every anonymous form on the page would break once they expire. Keeping these pages on PHP is deliberate."
1790 2024 msgstr ""
1791 2025
1792 -#: includes/modules/Health/HealthModule.php:219
2026 +#: includes/modules/Health/HealthModule.php:229
1793 2027 msgid "xSpeed could not verify the nginx static rewrite"
1794 2028 msgstr ""
1795 2029
1796 2030 #. translators: %s: the reason the probe could not complete.
1797 -#: includes/modules/Health/HealthModule.php:224
2031 +#: includes/modules/Health/HealthModule.php:234
1798 2032 #, php-format
1799 2033 msgid "The check itself did not complete, so this is not evidence that your config is wrong — if you have already pasted the snippet it may well be working. Reason: %s"
1800 2034 msgstr ""
1801 2035
1802 -#: includes/modules/Health/HealthModule.php:232
2036 +#: includes/modules/Health/HealthModule.php:242
1803 2037 msgid "xSpeed nginx server config required"
1804 2038 msgstr ""
1805 2039
1806 -#: includes/modules/Health/HealthModule.php:234
2040 +#: includes/modules/Health/HealthModule.php:244
1807 2041 msgid "xSpeed can't write nginx config from PHP. Paste this snippet into your site's server { } block, then reload nginx so cache hits serve without booting PHP:"
1808 2042 msgstr ""
1809 2043
1810 -#: includes/modules/Health/HealthModule.php:243
2044 +#: includes/modules/Health/HealthModule.php:253
1811 2045 msgid "xSpeed PHP drop-in cache active"
1812 2046 msgstr ""
1813 2047
1814 -#: includes/modules/Health/HealthModule.php:245
2048 +#: includes/modules/Health/HealthModule.php:255
1815 2049 msgid "Static-rewrite caching needs Apache, LiteSpeed, or nginx. The PHP drop-in is still serving cache hits at ~85ms TTFB on this server."
1816 2050 msgstr ""
1817 2051
1818 -#: includes/modules/Health/HealthModule.php:251
2052 +#: includes/modules/Health/HealthModule.php:261
1819 2053 msgid "Health"
1820 2054 msgstr ""
1821 2055
1822 -#: includes/modules/Health/HealthModule.php:253
2056 +#: includes/modules/Health/HealthModule.php:263
1823 2057 msgid "Checks for problems and shows how often visitors get cached pages."
1824 2058 msgstr ""
1825 2059
1826 2060 #: includes/modules/Heartbeat/HeartbeatModule.php:38
@@ -1903,41 +2137,49 @@
1903 2137 msgid "Lazy-load your own videos"
1904 2138 msgstr ""
1905 2139
1906 2140 #: includes/modules/Lazy/LazyModule.php:79
1907 -msgid "Videos uploaded to your site download only when played. Autoplaying videos are left alone."
2141 +msgid "Videos uploaded to your site download only when played. An autoplaying video still plays by itself, but its file waits until the video is near the screen. Add data-skip-lazy to a video to leave it alone."
1908 2142 msgstr ""
1909 2143
1910 2144 #: includes/modules/Lazy/LazyModule.php:84
2145 +msgid "Start autoplay videos after page load"
2146 +msgstr ""
2147 +
2148 +#: includes/modules/Lazy/LazyModule.php:85
2149 +msgid "An autoplaying video, such as a hero background, waits until the page has finished loading, even when it is on screen from the start. Visitors see the poster first, and the video no longer competes with the page's images, styles and scripts. Needs \"Lazy-load your own videos\"."
2150 +msgstr ""
2151 +
2152 +#: includes/modules/Lazy/LazyModule.php:91
1911 2153 msgid "Lazy-load background images"
1912 2154 msgstr ""
1913 2155
1914 -#: includes/modules/Lazy/LazyModule.php:85
2156 +#: includes/modules/Lazy/LazyModule.php:92
1915 2157 msgid "Hold back background images set in an element's inline style (a Cover or Group block, a page-builder section) until the element is near the screen. Uses a small script; visitors without JavaScript get every background as usual. The first N backgrounds on the page load straight away, like images. Backgrounds set in a stylesheet are not affected."
1916 2158 msgstr ""
1917 2159
1918 -#: includes/modules/Lazy/LazyModule.php:92
2160 +#: includes/modules/Lazy/LazyModule.php:99
1919 2161 msgid "Images to load right away"
1920 2162 msgstr ""
1921 2163
1922 -#: includes/modules/Lazy/LazyModule.php:93
2164 +#: includes/modules/Lazy/LazyModule.php:100
1923 2165 msgid "How many images at the top of the page skip lazy loading. Only the first of them also loads at high priority, and images in hidden or closed sections are not counted. Lazy-loaded background images use the same number. 1 suits most sites; 0 lazy-loads every image."
1924 2166 msgstr ""
1925 2167
1926 -#: includes/modules/Lazy/LazyModule.php:107
2168 +#: includes/modules/Lazy/LazyModule.php:114
1927 2169 msgid "Add missing image sizes"
1928 2170 msgstr ""
1929 2171
1930 -#: includes/modules/Lazy/LazyModule.php:108
2172 +#: includes/modules/Lazy/LazyModule.php:115
1931 2173 msgid "Adds width and height to images that lack them, using the media library. This stops the page from jumping as images load."
1932 2174 msgstr ""
1933 2175
1934 -#: includes/modules/Lazy/LazyModule.php:114
2176 +#: includes/modules/Lazy/LazyModule.php:121
1935 2177 msgid "Excluded images"
1936 2178 msgstr ""
1937 2179
1938 -#: includes/modules/Lazy/LazyModule.php:115
1939 -msgid "Images and embeds whose tag contains a line here, such as a class or file name, are never lazy-loaded. Useful for logos and hero images."
2180 +#: includes/modules/Lazy/LazyModule.php:122
2181 +msgid "Images, videos and embeds whose tag contains a line here, such as a class or file name, are never lazy-loaded. Useful for logos and hero images."
1940 2182 msgstr ""
1941 2183
1942 2184 #. translators: %s: command name.
1943 2185 #: includes/modules/Mcp/Cli_Bridge.php:128
@@ -1944,97 +2186,106 @@
1944 2186 #, php-format
1945 2187 msgid "Unknown command: %s. Call list_commands to see what is available."
1946 2188 msgstr ""
1947 2189
1948 -#: includes/modules/Mcp/McpModule.php:149
2190 +#: includes/modules/Mcp/McpModule.php:159
1949 2191 #: assets/admin.js
1950 2192 msgid "MCP Server"
1951 2193 msgstr ""
1952 2194
1953 -#: includes/modules/Mcp/McpModule.php:151
2195 +#: includes/modules/Mcp/McpModule.php:161
1954 2196 msgid "Let Claude or another AI assistant clear the cache, check stats and change settings."
1955 2197 msgstr ""
1956 2198
1957 -#: includes/modules/Mcp/McpModule.php:450
2199 +#: includes/modules/Mcp/McpModule.php:491
1958 2200 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."
1959 2201 msgstr ""
1960 2202
1961 -#: includes/modules/Mcp/McpModule.php:1319
2203 +#: includes/modules/Mcp/McpModule.php:1404
2204 +msgid "Disconnecting is blocked while this site depends on the hub connection."
2205 +msgstr ""
2206 +
2207 +#: includes/modules/Mcp/McpModule.php:1454
1962 2208 msgid "Invalid or expired attach request."
1963 2209 msgstr ""
1964 2210
1965 -#: includes/modules/Mcp/McpModule.php:1435
2211 +#: includes/modules/Mcp/McpModule.php:1570
1966 2212 msgid "You must be an administrator to authorize an AI agent to control this site."
1967 2213 msgstr ""
1968 2214
1969 -#: includes/modules/Mcp/McpModule.php:1442
2215 +#: includes/modules/Mcp/McpModule.php:1577
1970 2216 msgid "Security check failed. Please try connecting again."
1971 2217 msgstr ""
1972 2218
1973 -#: includes/modules/Mcp/McpModule.php:1538
1974 -#: includes/modules/Mcp/McpModule.php:1557
2219 +#: includes/modules/Mcp/McpModule.php:1673
2220 +#: includes/modules/Mcp/McpModule.php:1692
1975 2221 msgid "The MCP tool payload is too large."
1976 2222 msgstr ""
1977 2223
1978 -#: includes/modules/Mcp/McpModule.php:1632
2224 +#: includes/modules/Mcp/McpModule.php:1767
1979 2225 msgid "Read-only — inspect cache status and settings."
1980 2226 msgstr ""
1981 2227
1982 -#: includes/modules/Mcp/McpModule.php:1633
2228 +#: includes/modules/Mcp/McpModule.php:1768
1983 2229 msgid "Read & write — purge caches, toggle caching, and change settings."
1984 2230 msgstr ""
1985 2231
1986 -#: includes/modules/Mcp/McpModule.php:1634
2232 +#: includes/modules/Mcp/McpModule.php:1769
1987 2233 msgid "An AI agent"
1988 2234 msgstr ""
1989 2235
1990 -#: includes/modules/Mcp/McpModule.php:1653
2236 +#: includes/modules/Mcp/McpModule.php:1788
1991 2237 msgid "Authorize AI access"
1992 2238 msgstr ""
1993 2239
1994 -#: includes/modules/Mcp/McpModule.php:1664
2240 +#: includes/modules/Mcp/McpModule.php:1790
1995 2241 msgid "Connect to xSpeed"
1996 2242 msgstr ""
1997 2243
1998 2244 #. translators: %s: AI client name.
1999 -#: includes/modules/Mcp/McpModule.php:1666
2245 +#: includes/modules/Mcp/McpModule.php:1792
2000 2246 #, php-format
2001 2247 msgid "%s wants to manage the cache on this site."
2002 2248 msgstr ""
2003 2249
2004 -#: includes/modules/Mcp/McpModule.php:1667
2250 +#: includes/modules/Mcp/McpModule.php:1793
2251 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:205
2005 2252 msgid "Site"
2006 2253 msgstr ""
2007 2254
2008 -#: includes/modules/Mcp/McpModule.php:1668
2255 +#: includes/modules/Mcp/McpModule.php:1794
2256 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:210
2009 2257 msgid "Signed in as"
2010 2258 msgstr ""
2011 2259
2012 -#: includes/modules/Mcp/McpModule.php:1669
2260 +#: includes/modules/Mcp/McpModule.php:1795
2261 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:211
2013 2262 msgid "Access"
2014 2263 msgstr ""
2015 2264
2016 -#: includes/modules/Mcp/McpModule.php:1674
2265 +#: includes/modules/Mcp/McpModule.php:1800
2266 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:219
2017 2267 msgid "Deny"
2018 2268 msgstr ""
2019 2269
2020 -#: includes/modules/Mcp/McpModule.php:1675
2270 +#: includes/modules/Mcp/McpModule.php:1801
2271 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:220
2021 2272 msgid "Approve"
2022 2273 msgstr ""
2023 2274
2024 -#: includes/modules/Mcp/McpModule.php:1685
2275 +#: includes/modules/Mcp/McpModule.php:1811
2025 2276 msgid "Authorization error"
2026 2277 msgstr ""
2027 2278
2028 -#: includes/modules/Mcp/McpModule.php:1688
2279 +#: includes/modules/Mcp/McpModule.php:1814
2029 2280 msgid "Could not authorize"
2030 2281 msgstr ""
2031 2282
2032 -#: includes/modules/Mcp/McpModule.php:1918
2283 +#: includes/modules/Mcp/McpModule.php:2044
2033 2284 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."
2034 2285 msgstr ""
2035 2286
2036 -#: includes/modules/Mcp/McpModule.php:1919
2287 +#: includes/modules/Mcp/McpModule.php:2045
2037 2288 msgid "No AI assistant is connected. This module counts as on once you connect one."
2038 2289 msgstr ""
2039 2290
2040 2291 #: includes/modules/Mcp/Mcp_Auth.php:57
@@ -2040,21 +2291,62 @@
2040 2291 #: includes/modules/Mcp/Mcp_Auth.php:57
2041 2292 msgid "Too many failed attempts. Try again later."
2042 2293 msgstr ""
2043 2294
2044 -#: includes/modules/Mcp/Mcp_Hub.php:871
2295 +#: includes/modules/Mcp/Mcp_Hub.php:983
2045 2296 msgid "Connect this site to xSpeed Hub to run a free speed test."
2046 2297 msgstr ""
2047 2298
2048 -#: includes/modules/Mcp/Mcp_Hub.php:897
2299 +#: includes/modules/Mcp/Mcp_Hub.php:1013
2049 2300 msgid "Could not reach xSpeed Hub. Please try again."
2050 2301 msgstr ""
2051 2302
2052 -#: includes/modules/Mcp/Mcp_Hub.php:920
2303 +#: includes/modules/Mcp/Mcp_Hub.php:1036
2053 2304 #: assets/admin.js
2054 2305 msgid "The test could not be started."
2055 2306 msgstr ""
2056 2307
2308 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:132
2309 +#: assets/admin.js
2310 +msgid "Connect to xSpeed Hub"
2311 +msgstr ""
2312 +
2313 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:154
2314 +msgid "Not allowed"
2315 +msgstr ""
2316 +
2317 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:155
2318 +msgid "Only an administrator of this site can connect it to xSpeed Hub. Sign in as an administrator and start again from the Hub."
2319 +msgstr ""
2320 +
2321 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:171
2322 +msgid "This link is not valid"
2323 +msgstr ""
2324 +
2325 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:172
2326 +msgid "Start again from xSpeed Hub: Add site, then Connect with WordPress."
2327 +msgstr ""
2328 +
2329 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:206
2330 +msgid "Connecting to"
2331 +msgstr ""
2332 +
2333 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:208
2334 +msgid "Hub account"
2335 +msgstr ""
2336 +
2337 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:211
2338 +msgid "Purge caches, change settings and run speed tests on this site."
2339 +msgstr ""
2340 +
2341 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:224
2342 +msgid "Connect this site to xSpeed Hub"
2343 +msgstr ""
2344 +
2345 +#: includes/modules/Mcp/Mcp_Hub_Connect.php:225
2346 +msgid "xSpeed Hub lets you and your AI tools manage this site’s cache alongside your other sites."
2347 +msgstr ""
2348 +
2057 2349 #: includes/modules/Mcp/Mcp_OAuth.php:261
2058 2350 msgid "Too many client registrations. Try again later."
2059 2351 msgstr ""
2060 2352
@@ -2096,142 +2388,164 @@
2096 2388 msgid "No active MCP connection to change. Connect first."
2097 2389 msgstr ""
2098 2390
2099 2391 #. translators: %s: tool name.
2100 -#: includes/modules/Mcp/Mcp_Tools.php:988
2101 -#: includes/modules/Mcp/Mcp_Tools.php:1026
2392 +#: includes/modules/Mcp/Mcp_Tools.php:996
2393 +#: includes/modules/Mcp/Mcp_Tools.php:1034
2102 2394 #, php-format
2103 2395 msgid "Unknown tool: %s"
2104 2396 msgstr ""
2105 2397
2106 2398 #. translators: %s: tool name.
2107 -#: includes/modules/Mcp/Mcp_Tools.php:1047
2399 +#: includes/modules/Mcp/Mcp_Tools.php:1055
2108 2400 #, php-format
2109 2401 msgid "This MCP connection is read-only; the \"%s\" tool changes state and is not permitted. Reconnect with write access to use it."
2110 2402 msgstr ""
2111 2403
2112 2404 #. translators: %s: comma-separated list of valid purge types.
2113 -#: includes/modules/Mcp/Mcp_Tools.php:1334
2405 +#: includes/modules/Mcp/Mcp_Tools.php:1439
2114 2406 #, php-format
2115 2407 msgid "Invalid purge type. Expected one of: %s"
2116 2408 msgstr ""
2117 2409
2118 -#: includes/modules/Mcp/Mcp_Tools.php:1343
2119 -#: includes/modules/Mcp/Mcp_Tools.php:2355
2410 +#: includes/modules/Mcp/Mcp_Tools.php:1448
2411 +#: includes/modules/Mcp/Mcp_Tools.php:2798
2120 2412 msgid "AI assistant"
2121 2413 msgstr ""
2122 2414
2123 -#: includes/modules/Mcp/Mcp_Tools.php:1392
2415 +#: includes/modules/Mcp/Mcp_Tools.php:1497
2124 2416 msgid "The \"enabled\" parameter is required (true or false)."
2125 2417 msgstr ""
2126 2418
2127 -#: includes/modules/Mcp/Mcp_Tools.php:1472
2128 -#: includes/modules/Mcp/Mcp_Tools.php:1526
2419 +#: includes/modules/Mcp/Mcp_Tools.php:1577
2420 +#: includes/modules/Mcp/Mcp_Tools.php:1631
2129 2421 msgid "The \"module\" parameter is required."
2130 2422 msgstr ""
2131 2423
2132 2424 #. translators: %s: module slug.
2133 -#: includes/modules/Mcp/Mcp_Tools.php:1481
2134 -#: includes/modules/Mcp/Mcp_Tools.php:1542
2425 +#: includes/modules/Mcp/Mcp_Tools.php:1586
2426 +#: includes/modules/Mcp/Mcp_Tools.php:1647
2135 2427 #, php-format
2136 2428 msgid "Unknown module \"%s\"."
2137 2429 msgstr ""
2138 2430
2139 -#: includes/modules/Mcp/Mcp_Tools.php:1533
2431 +#: includes/modules/Mcp/Mcp_Tools.php:1638
2140 2432 msgid "The \"values\" parameter must be an object of setting keys."
2141 2433 msgstr ""
2142 2434
2143 2435 #. translators: 1: comma-separated field names, 2: module slug.
2144 -#: includes/modules/Mcp/Mcp_Tools.php:1561
2436 +#: includes/modules/Mcp/Mcp_Tools.php:1666
2145 2437 #, php-format
2146 2438 msgid "Writing credential fields (%1$s) on \"%2$s\" needs the \"configure\" scope, which is off by default. Reconnect the MCP client granting the configure scope, or set these credentials from the xSpeed dashboard."
2147 2439 msgstr ""
2148 2440
2149 2441 #. translators: %s: module slug.
2150 -#: includes/modules/Mcp/Mcp_Tools.php:1593
2442 +#: includes/modules/Mcp/Mcp_Tools.php:1698
2151 2443 #, php-format
2152 2444 msgid "Refused an MCP settings write to the Pro module \"%s\" — no valid license."
2153 2445 msgstr ""
2154 2446
2155 2447 #. translators: %s: module slug.
2156 -#: includes/modules/Mcp/Mcp_Tools.php:1603
2448 +#: includes/modules/Mcp/Mcp_Tools.php:1708
2157 2449 #, php-format
2158 2450 msgid "\"%s\" is a Pro module and this site has no active license, so the write was refused. Nothing was changed."
2159 2451 msgstr ""
2160 2452
2161 2453 #. translators: 1: setting key, 2: wp-config.php constant name.
2162 -#: includes/modules/Mcp/Mcp_Tools.php:1672
2454 +#: includes/modules/Mcp/Mcp_Tools.php:1777
2163 2455 #, php-format
2164 2456 msgid "\"%1$s\" is defined in wp-config.php as %2$s and cannot be changed here"
2165 2457 msgstr ""
2166 2458
2167 2459 #. translators: 1: setting key, 2: module slug.
2168 -#: includes/modules/Mcp/Mcp_Tools.php:1680
2460 +#: includes/modules/Mcp/Mcp_Tools.php:1785
2169 2461 #, php-format
2170 2462 msgid "\"%1$s\" is not a setting of module \"%2$s\""
2171 2463 msgstr ""
2172 2464
2173 2465 #. translators: %s: comma-separated setting names.
2174 -#: includes/modules/Mcp/Mcp_Tools.php:1692
2466 +#: includes/modules/Mcp/Mcp_Tools.php:1797
2175 2467 #, php-format
2176 2468 msgid " — did you mean: %s?"
2177 2469 msgstr ""
2178 2470
2179 2471 #. translators: %s: setting key.
2180 -#: includes/modules/Mcp/Mcp_Tools.php:1702
2472 +#: includes/modules/Mcp/Mcp_Tools.php:1807
2181 2473 #, php-format
2182 2474 msgid "\"%s\" was rejected by the schema (wrong type, or outside the allowed range/options)"
2183 2475 msgstr ""
2184 2476
2185 2477 #. translators: 1: module slug, 2: reasons.
2186 -#: includes/modules/Mcp/Mcp_Tools.php:1711
2478 +#: includes/modules/Mcp/Mcp_Tools.php:1816
2187 2479 #, php-format
2188 2480 msgid "Refused to update %1$s — nothing was written. %2$s"
2189 2481 msgstr ""
2190 2482
2191 -#: includes/modules/Mcp/Mcp_Tools.php:1747
2483 +#: includes/modules/Mcp/Mcp_Tools.php:1852
2192 2484 msgid "The \"command\" parameter is required."
2193 2485 msgstr ""
2194 2486
2195 -#: includes/modules/Mcp/Mcp_Tools.php:1798
2487 +#: includes/modules/Mcp/Mcp_Tools.php:1903
2196 2488 msgid "This preview deletes nothing. To delete what is listed, call clean_database with this confirm_token. It expires in 5 minutes and stops working if the database changes."
2197 2489 msgstr ""
2198 2490
2199 -#: includes/modules/Mcp/Mcp_Tools.php:1892
2491 +#: includes/modules/Mcp/Mcp_Tools.php:2145
2492 +msgid "That confirm_token is unknown or has expired (they last 5 minutes). Ask for a fresh one by making the same call without a confirm_token."
2493 +msgstr ""
2494 +
2495 +#: includes/modules/Mcp/Mcp_Tools.php:2154
2496 +msgid "The database changed since that scan, so the preview no longer describes what would be deleted. Run scan_database again and confirm against the new result."
2497 +msgstr ""
2498 +
2499 +#: includes/modules/Mcp/Mcp_Tools.php:2155
2500 +msgid "That confirm_token was issued for a different action, so it does not authorise this one. Repeat this exact call without a confirm_token to get one that does."
2501 +msgstr ""
2502 +
2503 +#: includes/modules/Mcp/Mcp_Tools.php:2204
2200 2504 msgid "This permanently deletes content and cannot be undone. Call scan_database first to see exactly what would be removed, then pass the confirm_token it returns."
2201 2505 msgstr ""
2202 2506
2203 -#: includes/modules/Mcp/Mcp_Tools.php:1903
2204 -msgid "That confirm_token is unknown or has expired (they last 5 minutes). Run scan_database again and use the fresh token."
2507 +#. translators: %s: the confirm_token to send back.
2508 +#: includes/modules/Mcp/Mcp_Tools.php:2218
2509 +#, php-format
2510 +msgid "Call run_command again with the same command plus confirm_token: %s"
2205 2511 msgstr ""
2206 2512
2207 -#: includes/modules/Mcp/Mcp_Tools.php:1911
2208 -msgid "The database changed since that scan, so the preview no longer describes what would be deleted. Run scan_database again and confirm against the new result."
2513 +#. translators: 1: tool name, 2: action value, 3: the confirm_token to send back.
2514 +#: includes/modules/Mcp/Mcp_Tools.php:2223
2515 +#, php-format
2516 +msgid "Call %1$s again with action: %2$s plus confirm_token: %3$s"
2209 2517 msgstr ""
2210 2518
2211 -#: includes/modules/Mcp/Mcp_Tools.php:2175
2212 -#: includes/modules/Mcp/Mcp_Tools.php:2215
2519 +#. translators: 1: canonical "<command> <action>", 2: how to repeat the call.
2520 +#: includes/modules/Mcp/Mcp_Tools.php:2233
2521 +#, php-format
2522 +msgid "\"%1$s\" is destructive and cannot be undone, so it needs a second, deliberate call. %2$s — the token is single use and expires in 5 minutes."
2523 +msgstr ""
2524 +
2525 +#: includes/modules/Mcp/Mcp_Tools.php:2611
2526 +#: includes/modules/Mcp/Mcp_Tools.php:2651
2213 2527 msgid "The enabled argument is required."
2214 2528 msgstr ""
2215 2529
2216 -#: includes/modules/Mcp/Mcp_Tools.php:2179
2217 -#: includes/modules/Mcp/Mcp_Tools.php:2219
2530 +#: includes/modules/Mcp/Mcp_Tools.php:2615
2531 +#: includes/modules/Mcp/Mcp_Tools.php:2655
2218 2532 msgid "The enabled argument must be true or false."
2219 2533 msgstr ""
2220 2534
2221 -#: includes/modules/Mcp/Mcp_Tools.php:2233
2535 +#: includes/modules/Mcp/Mcp_Tools.php:2676
2222 2536 msgid "The action argument must be \"list\" or \"clear\"."
2223 2537 msgstr ""
2224 2538
2225 -#: includes/modules/Mcp/Mcp_Tools.php:2272
2539 +#: includes/modules/Mcp/Mcp_Tools.php:2715
2226 2540 msgid "External scores are not available on this site."
2227 2541 msgstr ""
2228 2542
2229 -#: includes/modules/Mcp/Mcp_Tools.php:2353
2543 +#: includes/modules/Mcp/Mcp_Tools.php:2796
2230 2544 msgid "The url argument is required."
2231 2545 msgstr ""
2232 2546
2233 -#: includes/modules/Mcp/Mcp_Tools.php:2494
2547 +#: includes/modules/Mcp/Mcp_Tools.php:2937
2234 2548 msgid "The url argument must be a page on this site, as a full http(s) URL or a path starting with /."
2235 2549 msgstr ""
2236 2550
2237 2551 #: includes/modules/Migration/MigrationModule.php:30
@@ -2312,9 +2626,9 @@
2312 2626 msgid "Migrate"
2313 2627 msgstr ""
2314 2628
2315 2629 #: includes/modules/Migration/MigrationModule.php:549
2316 -#: includes/modules/Minify/MinifyModule.php:36
2630 +#: includes/modules/Minify/MinifyModule.php:37
2317 2631 msgid "Minify"
2318 2632 msgstr ""
2319 2633
2320 2634 #: includes/modules/Migration/MigrationModule.php:550
@@ -2326,9 +2640,9 @@
2326 2640 msgid "Preloader"
2327 2641 msgstr ""
2328 2642
2329 2643 #: includes/modules/Migration/MigrationModule.php:553
2330 -#: includes/modules/ObjectCache/ObjectCacheModule.php:32
2644 +#: includes/modules/ObjectCache/ObjectCacheModule.php:33
2331 2645 msgid "Object Cache"
2332 2646 msgstr ""
2333 2647
2334 2648 #: includes/modules/Migration/MigrationModule.php:555
@@ -2405,239 +2719,239 @@
2405 2719 #, php-format
2406 2720 msgid "Your account can change settings but not switch plugins off, so %s is still active. Your settings were imported — ask an administrator to deactivate it."
2407 2721 msgstr ""
2408 2722
2409 -#: includes/modules/Minify/MinifyModule.php:35
2723 +#: includes/modules/Minify/MinifyModule.php:36
2410 2724 msgid "CSS & JavaScript"
2411 2725 msgstr ""
2412 2726
2413 -#: includes/modules/Minify/MinifyModule.php:38
2727 +#: includes/modules/Minify/MinifyModule.php:39
2414 2728 msgid "Makes HTML, CSS and JavaScript files smaller and loads scripts later."
2415 2729 msgstr ""
2416 2730
2417 -#: includes/modules/Minify/MinifyModule.php:52
2731 +#: includes/modules/Minify/MinifyModule.php:53
2418 2732 msgid "Minify HTML"
2419 2733 msgstr ""
2420 2734
2421 -#: includes/modules/Minify/MinifyModule.php:57
2735 +#: includes/modules/Minify/MinifyModule.php:58
2422 2736 msgid "Removes spaces and comments from your pages. Safe on most themes. Only logged-out visitors see it, so check in a private window."
2423 2737 msgstr ""
2424 2738
2425 -#: includes/modules/Minify/MinifyModule.php:62
2739 +#: includes/modules/Minify/MinifyModule.php:63
2426 2740 msgid "Minify CSS"
2427 2741 msgstr ""
2428 2742
2429 -#: includes/modules/Minify/MinifyModule.php:63
2743 +#: includes/modules/Minify/MinifyModule.php:64
2430 2744 msgid "Makes your site's own CSS files smaller. CSS from other domains is left alone."
2431 2745 msgstr ""
2432 2746
2433 -#: includes/modules/Minify/MinifyModule.php:68
2747 +#: includes/modules/Minify/MinifyModule.php:69
2434 2748 msgid "Minify JavaScript"
2435 2749 msgstr ""
2436 2750
2437 -#: includes/modules/Minify/MinifyModule.php:69
2751 +#: includes/modules/Minify/MinifyModule.php:70
2438 2752 msgid "Makes your site's own JavaScript files smaller. Turn off if a script on your site stops working."
2439 2753 msgstr ""
2440 2754
2441 -#: includes/modules/Minify/MinifyModule.php:74
2755 +#: includes/modules/Minify/MinifyModule.php:75
2442 2756 msgid "Defer JavaScript"
2443 2757 msgstr ""
2444 2758
2445 -#: includes/modules/Minify/MinifyModule.php:75
2759 +#: includes/modules/Minify/MinifyModule.php:76
2446 2760 msgid "Runs scripts after the page has loaded, so content shows sooner. jQuery and scripts that need it are skipped."
2447 2761 msgstr ""
2448 2762
2449 -#: includes/modules/Minify/MinifyModule.php:80
2763 +#: includes/modules/Minify/MinifyModule.php:81
2450 2764 msgid "Delay JavaScript"
2451 2765 msgstr ""
2452 2766
2453 -#: includes/modules/Minify/MinifyModule.php:81
2767 +#: includes/modules/Minify/MinifyModule.php:82
2454 2768 msgid "Scripts load only when the visitor scrolls, taps or types. Pages show much sooner, but test menus and sliders. Cookie consent banners still load first."
2455 2769 msgstr ""
2456 2770
2457 -#: includes/modules/Minify/MinifyModule.php:86
2771 +#: includes/modules/Minify/MinifyModule.php:87
2458 2772 msgid "Load CSS without blocking"
2459 2773 msgstr ""
2460 2774
2461 -#: includes/modules/Minify/MinifyModule.php:87
2775 +#: includes/modules/Minify/MinifyModule.php:88
2462 2776 msgid "On pages that have critical CSS, the page shows before the rest of its CSS finishes loading. Pages without critical CSS keep loading their CSS normally, because deferring it makes the page show unstyled and then jump."
2463 2777 msgstr ""
2464 2778
2465 -#: includes/modules/Minify/MinifyModule.php:92
2779 +#: includes/modules/Minify/MinifyModule.php:93
2466 2780 msgid "Remove version from file URLs"
2467 2781 msgstr ""
2468 2782
2469 -#: includes/modules/Minify/MinifyModule.php:93
2783 +#: includes/modules/Minify/MinifyModule.php:94
2470 2784 msgid "Removes ?ver= from CSS and JS links, which some CDNs cache better. After a plugin update, returning visitors may keep old files until their browser cache expires."
2471 2785 msgstr ""
2472 2786
2473 -#: includes/modules/Minify/MinifyModule.php:100
2787 +#: includes/modules/Minify/MinifyModule.php:101
2474 2788 msgid "Scripts to never defer or delay"
2475 2789 msgstr ""
2476 2790
2477 -#: includes/modules/Minify/MinifyModule.php:101
2791 +#: includes/modules/Minify/MinifyModule.php:102
2478 2792 msgid "Script handles or parts of script URLs, one per line. jQuery is listed because most themes need it early; cookie consent banners are skipped on their own."
2479 2793 msgstr ""
2480 2794
2481 -#: includes/modules/Minify/MinifyModule.php:115
2795 +#: includes/modules/Minify/MinifyModule.php:116
2482 2796 msgid "Delay only these scripts"
2483 2797 msgstr ""
2484 2798
2485 -#: includes/modules/Minify/MinifyModule.php:116
2799 +#: includes/modules/Minify/MinifyModule.php:117
2486 2800 msgid "Script handles or parts of script URLs, one per line. Leave empty to delay all scripts; otherwise only these, plus known trackers and chat widgets, are delayed."
2487 2801 msgstr ""
2488 2802
2489 -#: includes/modules/Minify/MinifyModule.php:117
2803 +#: includes/modules/Minify/MinifyModule.php:118
2490 2804 msgid "Consent banners and Delay JS"
2491 2805 msgstr ""
2492 2806
2493 2807 #. translators: %s: comma-separated list of consent plugins, each followed by the word to type in parentheses.
2494 -#: includes/modules/Minify/MinifyModule.php:120
2808 +#: includes/modules/Minify/MinifyModule.php:121
2495 2809 #, php-format
2496 2810 msgid "These consent banners load straight away, even with Delay JS on: %s. To delay one on purpose, add the word in parentheses, or the script handle, to this list. An entry that only matches part of the address, such as /plugins/ or .js, never delays a banner, and an entry in Scripts to never defer or delay always wins."
2497 2811 msgstr ""
2498 2812
2499 -#: includes/modules/Minify/MinifyModule.php:128
2813 +#: includes/modules/Minify/MinifyModule.php:129
2500 2814 msgid "Smart delay"
2501 2815 msgstr ""
2502 2816
2503 -#: includes/modules/Minify/MinifyModule.php:129
2817 +#: includes/modules/Minify/MinifyModule.php:130
2504 2818 msgid "Also delays scripts that code on the page depends on, which helps page builder sites most. The riskiest setting here, so test menus and sliders."
2505 2819 msgstr ""
2506 2820
2507 -#: includes/modules/Minify/MinifyModule.php:137
2821 +#: includes/modules/Minify/MinifyModule.php:138
2508 2822 msgid "Delay timeout (ms)"
2509 2823 msgstr ""
2510 2824
2511 -#: includes/modules/Minify/MinifyModule.php:139
2825 +#: includes/modules/Minify/MinifyModule.php:140
2512 2826 msgid "Load delayed scripts after this long if the visitor does nothing. Set 0 to wait for a scroll, tap or key press only."
2513 2827 msgstr ""
2514 2828
2515 -#: includes/modules/Minify/MinifyModule.php:146
2829 +#: includes/modules/Minify/MinifyModule.php:147
2516 2830 msgid "Combine CSS files"
2517 2831 msgstr ""
2518 2832
2519 -#: includes/modules/Minify/MinifyModule.php:147
2833 +#: includes/modules/Minify/MinifyModule.php:148
2520 2834 msgid "Joins your site's own CSS files into one. This helps only on old HTTP/1.1 servers, so leave it off on most hosts."
2521 2835 msgstr ""
2522 2836
2523 -#: includes/modules/Minify/MinifyModule.php:153
2837 +#: includes/modules/Minify/MinifyModule.php:154
2524 2838 msgid "Combine JavaScript files"
2525 2839 msgstr ""
2526 2840
2527 -#: includes/modules/Minify/MinifyModule.php:154
2841 +#: includes/modules/Minify/MinifyModule.php:155
2528 2842 msgid "Joins your site's own scripts into one file. Turn off if a script stops working after you enable it."
2529 2843 msgstr ""
2530 2844
2531 -#: includes/modules/Minify/MinifyModule.php:292
2845 +#: includes/modules/Minify/MinifyModule.php:293
2532 2846 msgid "HTML minification is paused because WP_DEBUG is enabled in wp-config.php. Readable HTML is usually what you want while debugging, so xSpeed leaves the markup alone. Cached pages are served un-minified until WP_DEBUG is turned off."
2533 2847 msgstr ""
2534 2848
2535 -#: includes/modules/Minify/MinifyModule.php:293
2849 +#: includes/modules/Minify/MinifyModule.php:294
2536 2850 msgid "HTML minification is paused because a plugin or theme is returning true from the xspeed_skip_minify filter. Cached pages are served un-minified until that filter stops suppressing it."
2537 2851 msgstr ""
2538 2852
2539 -#: includes/modules/Minify/MinifyModule.php:298
2853 +#: includes/modules/Minify/MinifyModule.php:299
2540 2854 msgid "HTML minification is on but currently paused"
2541 2855 msgstr ""
2542 2856
2543 -#: includes/modules/ObjectCache/ObjectCacheModule.php:34
2857 +#: includes/modules/ObjectCache/ObjectCacheModule.php:35
2544 2858 msgid "Stores database query results in Redis or Memcached so pages build faster."
2545 2859 msgstr ""
2546 2860
2547 -#: includes/modules/ObjectCache/ObjectCacheModule.php:62
2861 +#: includes/modules/ObjectCache/ObjectCacheModule.php:63
2548 2862 msgid "Cache server"
2549 2863 msgstr ""
2550 2864
2551 -#: includes/modules/ObjectCache/ObjectCacheModule.php:63
2865 +#: includes/modules/ObjectCache/ObjectCacheModule.php:64
2552 2866 msgid "The cache server your host provides. Ask your host if you are not sure."
2553 2867 msgstr ""
2554 2868
2555 -#: includes/modules/ObjectCache/ObjectCacheModule.php:69
2869 +#: includes/modules/ObjectCache/ObjectCacheModule.php:70
2556 2870 msgid "Redis host"
2557 2871 msgstr ""
2558 2872
2559 -#: includes/modules/ObjectCache/ObjectCacheModule.php:70
2873 +#: includes/modules/ObjectCache/ObjectCacheModule.php:71
2560 2874 msgid "Address of the Redis server. Use 127.0.0.1 when Redis runs on the same server as your site."
2561 2875 msgstr ""
2562 2876
2563 -#: includes/modules/ObjectCache/ObjectCacheModule.php:79
2877 +#: includes/modules/ObjectCache/ObjectCacheModule.php:80
2564 2878 msgid "Redis port"
2565 2879 msgstr ""
2566 2880
2567 -#: includes/modules/ObjectCache/ObjectCacheModule.php:80
2881 +#: includes/modules/ObjectCache/ObjectCacheModule.php:81
2568 2882 msgid "The default Redis port is 6379."
2569 2883 msgstr ""
2570 2884
2571 -#: includes/modules/ObjectCache/ObjectCacheModule.php:94
2885 +#: includes/modules/ObjectCache/ObjectCacheModule.php:95
2572 2886 msgid "Redis username"
2573 2887 msgstr ""
2574 2888
2575 -#: includes/modules/ObjectCache/ObjectCacheModule.php:95
2889 +#: includes/modules/ObjectCache/ObjectCacheModule.php:96
2576 2890 msgid "Only needed if your host gave you a Redis username along with the password. Leave blank otherwise."
2577 2891 msgstr ""
2578 2892
2579 -#: includes/modules/ObjectCache/ObjectCacheModule.php:104
2893 +#: includes/modules/ObjectCache/ObjectCacheModule.php:105
2580 2894 msgid "Leave blank if your Redis server has no password."
2581 2895 msgstr ""
2582 2896
2583 -#: includes/modules/ObjectCache/ObjectCacheModule.php:113
2897 +#: includes/modules/ObjectCache/ObjectCacheModule.php:114
2584 2898 msgid "Redis database"
2585 2899 msgstr ""
2586 2900
2587 -#: includes/modules/ObjectCache/ObjectCacheModule.php:114
2901 +#: includes/modules/ObjectCache/ObjectCacheModule.php:115
2588 2902 msgid "Database number, 0 to 15. If several sites share one Redis server, give each site its own number."
2589 2903 msgstr ""
2590 2904
2591 -#: includes/modules/ObjectCache/ObjectCacheModule.php:143
2905 +#: includes/modules/ObjectCache/ObjectCacheModule.php:144
2592 2906 msgid "Memcached host"
2593 2907 msgstr ""
2594 2908
2595 -#: includes/modules/ObjectCache/ObjectCacheModule.php:144
2909 +#: includes/modules/ObjectCache/ObjectCacheModule.php:145
2596 2910 msgid "Address of the Memcached server. Use 127.0.0.1 when it runs on the same server as your site."
2597 2911 msgstr ""
2598 2912
2599 -#: includes/modules/ObjectCache/ObjectCacheModule.php:166
2913 +#: includes/modules/ObjectCache/ObjectCacheModule.php:167
2600 2914 msgid "Memcached port"
2601 2915 msgstr ""
2602 2916
2603 -#: includes/modules/ObjectCache/ObjectCacheModule.php:167
2917 +#: includes/modules/ObjectCache/ObjectCacheModule.php:168
2604 2918 msgid "The default Memcached port is 11211."
2605 2919 msgstr ""
2606 2920
2607 -#: includes/modules/ObjectCache/ObjectCacheModule.php:195
2921 +#: includes/modules/ObjectCache/ObjectCacheModule.php:196
2608 2922 msgid "Cache key prefix"
2609 2923 msgstr ""
2610 2924
2611 -#: includes/modules/ObjectCache/ObjectCacheModule.php:196
2925 +#: includes/modules/ObjectCache/ObjectCacheModule.php:197
2612 2926 msgid "Leave blank and xSpeed picks a unique prefix for this site. Some managed Redis hosts, such as xCloud, give you a key to paste here, or nothing gets saved."
2613 2927 msgstr ""
2614 2928
2615 -#: includes/modules/ObjectCache/ObjectCacheModule.php:206
2929 +#: includes/modules/ObjectCache/ObjectCacheModule.php:207
2616 2930 msgid "Connection timeout (seconds)"
2617 2931 msgstr ""
2618 2932
2619 -#: includes/modules/ObjectCache/ObjectCacheModule.php:208
2933 +#: includes/modules/ObjectCache/ObjectCacheModule.php:209
2620 2934 msgid "How long to wait for the cache server. Keep it at 1 or 2 seconds so a broken cache server never holds up a page."
2621 2935 msgstr ""
2622 2936
2623 -#: includes/modules/ObjectCache/ObjectCacheModule.php:215
2937 +#: includes/modules/ObjectCache/ObjectCacheModule.php:216
2624 2938 msgid "Persistent connections"
2625 2939 msgstr ""
2626 2940
2627 -#: includes/modules/ObjectCache/ObjectCacheModule.php:216
2941 +#: includes/modules/ObjectCache/ObjectCacheModule.php:217
2628 2942 msgid "Keep the connection open between page loads. Turn off only if your cache server reports too many idle connections."
2629 2943 msgstr ""
2630 2944
2631 -#: includes/modules/ObjectCache/ObjectCacheModule.php:1013
2945 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1053
2632 2946 msgid "The object cache drop-in is installed and storing data. This is measured from the running cache, not from the settings on this page."
2633 2947 msgstr ""
2634 2948
2635 -#: includes/modules/ObjectCache/ObjectCacheModule.php:1016
2949 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1056
2636 2950 msgid "The drop-in is installed but is not storing anything, so this counts as off. Check the connection settings below."
2637 2951 msgstr ""
2638 2952
2639 -#: includes/modules/ObjectCache/ObjectCacheModule.php:1018
2953 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1058
2640 2954 msgid "No object cache is running. Entering a host below does not switch it on by itself -- the drop-in has to be installed and connect successfully."
2641 2955 msgstr ""
2642 2956
2643 2957 #: includes/modules/Preloader/PreloaderModule.php:33
@@ -2845,22 +3159,22 @@
2845 3159 #: includes/modules/Score/ScoreModule.php:137
2846 3160 msgid "Test as a phone or a desktop visitor. Google ranks sites on the mobile result."
2847 3161 msgstr ""
2848 3162
2849 -#: includes/modules/Score/ScoreModule.php:336
2850 -#: includes/modules/Score/ScoreModule.php:382
3163 +#: includes/modules/Score/ScoreModule.php:339
3164 +#: includes/modules/Score/ScoreModule.php:385
2851 3165 msgid "Hub-run speed tests are not enabled on this site."
2852 3166 msgstr ""
2853 3167
2854 -#: includes/modules/Score/ScoreModule.php:445
3168 +#: includes/modules/Score/ScoreModule.php:448
2855 3169 msgid "No URL to test."
2856 3170 msgstr ""
2857 3171
2858 -#: includes/modules/Score/ScoreModule.php:542
3172 +#: includes/modules/Score/ScoreModule.php:545
2859 3173 msgid "xSpeed Hub accepted the test but returned no run id. Please try again."
2860 3174 msgstr ""
2861 3175
2862 -#: includes/modules/Score/ScoreModule.php:621
3176 +#: includes/modules/Score/ScoreModule.php:624
2863 3177 msgid "The audit did not produce a result."
2864 3178 msgstr ""
2865 3179
2866 3180 #. translators: %s: module slug.
@@ -2884,45 +3198,45 @@
2884 3198 #: includes/modules/Support/SupportModule.php:42
2885 3199 msgid "The page the \"Open ticket\" button opens. Leave the default to reach xSpeed support."
2886 3200 msgstr ""
2887 3201
2888 -#: includes/modules/TurboRender/TurboRenderModule.php:89
3202 +#: includes/modules/TurboRender/TurboRenderModule.php:105
2889 3203 msgid "Turbo Render"
2890 3204 msgstr ""
2891 3205
2892 -#: includes/modules/TurboRender/TurboRenderModule.php:91
3206 +#: includes/modules/TurboRender/TurboRenderModule.php:107
2893 3207 msgid "Shows the top of each page first and the rest as visitors scroll."
2894 3208 msgstr ""
2895 3209
2896 -#: includes/modules/TurboRender/TurboRenderModule.php:101
3210 +#: includes/modules/TurboRender/TurboRenderModule.php:117
2897 3211 msgid "Render as visitors scroll"
2898 3212 msgstr ""
2899 3213
2900 -#: includes/modules/TurboRender/TurboRenderModule.php:102
3214 +#: includes/modules/TurboRender/TurboRenderModule.php:118
2901 3215 msgid "The browser draws what visitors see first and draws lower sections just before they scroll to them. Your content does not change."
2902 3216 msgstr ""
2903 3217
2904 -#: includes/modules/TurboRender/TurboRenderModule.php:109
3218 +#: includes/modules/TurboRender/TurboRenderModule.php:125
2905 3219 msgid "Sections to render immediately"
2906 3220 msgstr ""
2907 3221
2908 -#: includes/modules/TurboRender/TurboRenderModule.php:110
3222 +#: includes/modules/TurboRender/TurboRenderModule.php:126
2909 3223 msgid "How many sections at the top are drawn right away. The default of 2 suits most pages; raise it if a section near the top appears late."
2910 3224 msgstr ""
2911 3225
2912 -#: includes/modules/TurboRender/TurboRenderModule.php:116
3226 +#: includes/modules/TurboRender/TurboRenderModule.php:132
2913 3227 msgid "Section classes"
2914 3228 msgstr ""
2915 3229
2916 -#: includes/modules/TurboRender/TurboRenderModule.php:117
3230 +#: includes/modules/TurboRender/TurboRenderModule.php:133
2917 3231 msgid "CSS classes that mark a section. The defaults cover the main page builders, and other themes are detected on their own."
2918 3232 msgstr ""
2919 3233
2920 -#: includes/modules/TurboRender/TurboRenderModule.php:124
3234 +#: includes/modules/TurboRender/TurboRenderModule.php:140
2921 3235 msgid "Excluded classes"
2922 3236 msgstr ""
2923 3237
2924 -#: includes/modules/TurboRender/TurboRenderModule.php:125
3238 +#: includes/modules/TurboRender/TurboRenderModule.php:141
2925 3239 msgid "Sections with any of these classes are always drawn right away. Add one here if part of a section gets cut off where it overlaps the next."
2926 3240 msgstr ""
2927 3241
2928 3242 #: xspeed.php:220
@@ -2941,8 +3255,13 @@
2941 3255 #: assets/admin.js
2942 3256 msgid "“clear the cache on my store,” “warm up the homepage,” “how fast is my blog?”"
2943 3257 msgstr ""
2944 3258
3259 +#. Source: src/components/CfeOfferCard.tsx:53
3260 +#: assets/admin.js
3261 +msgid "/domain/mo"
3262 +msgstr ""
3263 +
2945 3264 #. Source: src/components/score/ScorePanel.tsx:96
2946 3265 #. Source: src/components/score/SpeedTestCard.tsx:135
2947 3266 #: assets/admin.js
2948 3267 msgid "%1$d of %2$d left"
@@ -2972,9 +3291,9 @@
2972 3291 #: assets/admin.js
2973 3292 msgid "7 days"
2974 3293 msgstr ""
2975 3294
2976 -#. Source: src/components/score/ScanCard.tsx:197
3295 +#. Source: src/components/score/ScanCard.tsx:198
2977 3296 #: assets/admin.js
2978 3297 msgid "A full graded report: Core Web Vitals, caching, assets and platform."
2979 3298 msgstr ""
2980 3299
@@ -2992,16 +3311,17 @@
2992 3311 #: assets/admin.js
2993 3312 msgid "Action"
2994 3313 msgstr ""
2995 3314
2996 -#. Source: src/components/Sidebar.tsx:424
2997 -#. Source: src/components/Sidebar.tsx:445
3315 +#. Source: src/components/Sidebar.tsx:523
3316 +#. Source: src/components/Sidebar.tsx:544
3317 +#. Source: src/upsell/LockedPanel.tsx:76
2998 3318 #. Source: src/upsell/ProOverview.tsx:73
2999 3319 #: assets/admin.js
3000 3320 msgid "Activate License"
3001 3321 msgstr ""
3002 3322
3003 -#. Source: src/upsell/LockedPanel.tsx:104
3323 +#. Source: src/upsell/LockedPanel.tsx:193
3004 3324 #. Source: src/upsell/LockedSection.tsx:88
3005 3325 #. Source: src/upsell/ProDemo.tsx:92
3006 3326 #: assets/admin.js
3007 3327 msgid "Activate your license"
@@ -3006,10 +3326,10 @@
3006 3326 #: assets/admin.js
3007 3327 msgid "Activate your license"
3008 3328 msgstr ""
3009 3329
3010 -#. Source: src/upsell/LockedPanel.tsx:151
3011 -#. Source: src/upsell/LockedPanel.tsx:40
3330 +#. Source: src/upsell/LockedPanel.tsx:129
3331 +#. Source: src/upsell/LockedPanel.tsx:240
3012 3332 #: assets/admin.js
3013 3333 msgid "Activating your license unlocks this module + every other locked row in the sidebar. Your current settings stay unchanged."
3014 3334 msgstr ""
3015 3335
@@ -3044,10 +3364,15 @@
3044 3364 #: assets/admin.js
3045 3365 msgid "AI connection active"
3046 3366 msgstr ""
3047 3367
3048 -#. Source: src/components/TopBar.tsx:175
3368 +#. Source: src/upsell/LockedPanel.tsx:95
3049 3369 #: assets/admin.js
3370 +msgid "Already bought both? Enter your license keys"
3371 +msgstr ""
3372 +
3373 +#. Source: src/components/TopBar.tsx:199
3374 +#: assets/admin.js
3050 3375 msgid "Already empty"
3051 3376 msgstr ""
3052 3377
3053 3378 #. Source: src/components/purgeOutcome.ts:57
@@ -3054,9 +3379,9 @@
3054 3379 #: assets/admin.js
3055 3380 msgid "Also cleared: %s."
3056 3381 msgstr ""
3057 3382
3058 -#. Source: src/components/overview/Recommendations.tsx:184
3383 +#. Source: src/components/overview/Recommendations.tsx:190
3059 3384 #: assets/admin.js
3060 3385 msgid "Also worth a look"
3061 3386 msgstr ""
3062 3387
@@ -3085,9 +3410,9 @@
3085 3410 msgid "Another plugin owns the page cache on this site, so xSpeed is serving nothing."
3086 3411 msgstr ""
3087 3412
3088 3413 #. Source: src/components/cache/NextBestAction.tsx:122
3089 -#. Source: src/components/overview/Recommendations.tsx:96
3414 +#. Source: src/components/overview/Recommendations.tsx:101
3090 3415 #: assets/admin.js
3091 3416 msgid "Applied"
3092 3417 msgstr ""
3093 3418
@@ -3100,9 +3425,9 @@
3100 3425 #: assets/admin.js
3101 3426 msgid "Apply"
3102 3427 msgstr ""
3103 3428
3104 -#. Source: src/components/score/ScanCard.tsx:84
3429 +#. Source: src/components/score/ScanCard.tsx:85
3105 3430 #: assets/admin.js
3106 3431 msgid "Assets"
3107 3432 msgstr ""
3108 3433
@@ -3145,14 +3470,14 @@
3145 3470 #: assets/admin.js
3146 3471 msgid "Benchmark: cached vs uncached (ms)"
3147 3472 msgstr ""
3148 3473
3149 -#. Source: src/components/overview/Recommendations.tsx:233
3474 +#. Source: src/components/overview/Recommendations.tsx:239
3150 3475 #: assets/admin.js
3151 3476 msgid "Book"
3152 3477 msgstr ""
3153 3478
3154 -#. Source: src/components/overview/Recommendations.tsx:224
3479 +#. Source: src/components/overview/Recommendations.tsx:230
3155 3480 #: assets/admin.js
3156 3481 msgid "Book a free setup review with our team."
3157 3482 msgstr ""
3158 3483
@@ -3160,19 +3485,19 @@
3160 3485 #: assets/admin.js
3161 3486 msgid "bot, 404 and cache-warming requests in 24h — excluded from the hit ratio."
3162 3487 msgstr ""
3163 3488
3164 -#. Source: src/components/TopBar.tsx:81
3489 +#. Source: src/components/TopBar.tsx:84
3165 3490 #: assets/admin.js
3166 3491 msgid "Breadcrumb"
3167 3492 msgstr ""
3168 3493
3169 -#. Source: src/components/overview/FeatureMap.tsx:104
3494 +#. Source: src/components/overview/FeatureMap.tsx:114
3170 3495 #: assets/admin.js
3171 3496 msgid "Browse all"
3172 3497 msgstr ""
3173 3498
3174 -#. Source: src/components/sidebarGroups.ts:79
3499 +#. Source: src/components/sidebarGroups.ts:82
3175 3500 #: assets/admin.js
3176 3501 msgid "Cache"
3177 3502 msgstr ""
3178 3503
@@ -3194,9 +3519,9 @@
3194 3519 #: assets/admin.js
3195 3520 msgid "Cache cleared."
3196 3521 msgstr ""
3197 3522
3198 -#. Source: src/App.tsx:331
3523 +#. Source: src/App.tsx:355
3199 3524 #: assets/admin.js
3200 3525 msgid "Cache could not be enabled."
3201 3526 msgstr ""
3202 3527
@@ -3204,19 +3529,19 @@
3204 3529 #: assets/admin.js
3205 3530 msgid "Cache coverage"
3206 3531 msgstr ""
3207 3532
3208 -#. Source: src/App.tsx:343
3533 +#. Source: src/App.tsx:367
3209 3534 #: assets/admin.js
3210 3535 msgid "Cache disabled"
3211 3536 msgstr ""
3212 3537
3213 -#. Source: src/App.tsx:343
3538 +#. Source: src/App.tsx:367
3214 3539 #: assets/admin.js
3215 3540 msgid "Cache enabled"
3216 3541 msgstr ""
3217 3542
3218 -#. Source: src/App.tsx:337
3543 +#. Source: src/App.tsx:361
3219 3544 #: assets/admin.js
3220 3545 msgid "Cache enabled, but nothing will be cached until WP_CACHE is added to wp-config.php — copy the line from Health."
3221 3546 msgstr ""
3222 3547
@@ -3308,11 +3633,11 @@
3308 3633 #: assets/admin.js
3309 3634 msgid "Cancel"
3310 3635 msgstr ""
3311 3636
3312 -#. Source: src/components/sidebarGroups.ts:95
3637 +#. Source: src/components/sidebarGroups.ts:98
3313 3638 #: assets/admin.js
3314 -msgid "CDN and Cloudflare edge delivery."
3639 +msgid "CDN, your own Cloudflare zone and Cloudflare Enterprise."
3315 3640 msgstr ""
3316 3641
3317 3642 #. Source: src/components/score/ScorePanel.tsx:661
3318 3643 #: assets/admin.js
@@ -3328,9 +3653,9 @@
3328 3653 #: assets/admin.js
3329 3654 msgid "Checking your AI connection…"
3330 3655 msgstr ""
3331 3656
3332 -#. Source: src/components/overview/ScoreCard.tsx:195
3657 +#. Source: src/components/overview/ScoreCard.tsx:199
3333 3658 #: assets/admin.js
3334 3659 msgid "Checking your score"
3335 3660 msgstr ""
3336 3661
@@ -3343,9 +3668,9 @@
3343 3668 #: assets/admin.js
3344 3669 msgid "Clear"
3345 3670 msgstr ""
3346 3671
3347 -#. Source: src/components/TopBar.tsx:173
3672 +#. Source: src/components/TopBar.tsx:197
3348 3673 #: assets/admin.js
3349 3674 msgid "Cleared"
3350 3675 msgstr ""
3351 3676
@@ -3358,17 +3683,31 @@
3358 3683 #: assets/admin.js
3359 3684 msgid "Click \"Run benchmark\" to compare load times."
3360 3685 msgstr ""
3361 3686
3362 -#. Source: src/components/Sidebar.tsx:219
3363 -#. Source: src/components/Sidebar.tsx:266
3687 +#. Source: src/components/Sidebar.tsx:275
3688 +#. Source: src/components/Sidebar.tsx:323
3364 3689 #: assets/admin.js
3365 3690 msgid "Close navigation"
3366 3691 msgstr ""
3367 3692
3368 -#. Source: src/components/Sidebar.tsx:284
3369 -#. Source: src/components/Sidebar.tsx:289
3693 +#. Source: src/components/CfeOfferCard.tsx:123
3694 +#. Source: src/components/CfeOfferCard.tsx:149
3695 +#. Source: src/components/CfeOfferCard.tsx:211
3696 +#. Source: src/components/CfeOfferCard.tsx:222
3697 +#. Source: src/components/CfeOfferCard.tsx:99
3370 3698 #: assets/admin.js
3699 +msgid "Cloudflare Enterprise"
3700 +msgstr ""
3701 +
3702 +#. Source: src/components/CfeOfferCard.tsx:196
3703 +#: assets/admin.js
3704 +msgid "Cloudflare Enterprise add-on"
3705 +msgstr ""
3706 +
3707 +#. Source: src/components/Sidebar.tsx:341
3708 +#. Source: src/components/Sidebar.tsx:346
3709 +#: assets/admin.js
3371 3710 msgid "Collapse sidebar"
3372 3711 msgstr ""
3373 3712
3374 3713 #. Source: src/components/CommandPalette.tsx:172
@@ -3380,9 +3719,9 @@
3380 3719 #: assets/admin.js
3381 3720 msgid "Compare"
3382 3721 msgstr ""
3383 3722
3384 -#. Source: src/upsell/LockedPanel.tsx:125
3723 +#. Source: src/upsell/LockedPanel.tsx:214
3385 3724 #: assets/admin.js
3386 3725 msgid "Compare plans"
3387 3726 msgstr ""
3388 3727
@@ -3405,14 +3744,14 @@
3405 3744 #: assets/admin.js
3406 3745 msgid "Connect"
3407 3746 msgstr ""
3408 3747
3409 -#. Source: src/components/sidebarGroups.ts:120
3748 +#. Source: src/components/sidebarGroups.ts:123
3410 3749 #: assets/admin.js
3411 3750 msgid "Connect an AI agent to this site, and control what AI features may use."
3412 3751 msgstr ""
3413 3752
3414 -#. Source: src/components/TopBar.tsx:138
3753 +#. Source: src/components/TopBar.tsx:142
3415 3754 #: assets/admin.js
3416 3755 msgid "Connect Hub"
3417 3756 msgstr ""
3418 3757
@@ -3425,24 +3764,19 @@
3425 3764 #: assets/admin.js
3426 3765 msgid "Connect this site to your free xSpeed Hub — then manage caching here and on every other site straight from ChatGPT, Claude, or any AI assistant. Free, forever."
3427 3766 msgstr ""
3428 3767
3429 -#. Source: src/components/overview/HubCard.tsx:126
3768 +#. Source: src/components/overview/HubCard.tsx:168
3430 3769 #: assets/admin.js
3431 3770 msgid "Connect to control caching remotely, drive it from AI agents, and manage all your sites in one place."
3432 3771 msgstr ""
3433 3772
3434 -#. Source: src/components/overview/HubCard.tsx:133
3435 -#. Source: src/components/overview/HubCard.tsx:140
3773 +#. Source: src/components/overview/HubCard.tsx:175
3774 +#. Source: src/components/overview/HubCard.tsx:182
3436 3775 #: assets/admin.js
3437 3776 msgid "Connect to Hub"
3438 3777 msgstr ""
3439 3778
3440 -#. Source: src/onboarding/steps/Connect.tsx:195
3441 -#: assets/admin.js
3442 -msgid "Connect to xSpeed Hub"
3443 -msgstr ""
3444 -
3445 3779 #. Source: src/components/overview/AiControlCard.tsx:325
3446 3780 #: assets/admin.js
3447 3781 msgid "Connect with MCP"
3448 3782 msgstr ""
@@ -3451,9 +3785,9 @@
3451 3785 #: assets/admin.js
3452 3786 msgid "Connect your AI agent through MCP — then just ask it to analyze and optimize your site."
3453 3787 msgstr ""
3454 3788
3455 -#. Source: src/components/overview/HubCard.tsx:104
3789 +#. Source: src/components/overview/HubCard.tsx:146
3456 3790 #: assets/admin.js
3457 3791 msgid "Connected"
3458 3792 msgstr ""
3459 3793
@@ -3461,9 +3795,9 @@
3461 3795 #: assets/admin.js
3462 3796 msgid "Connected — starting your test…"
3463 3797 msgstr ""
3464 3798
3465 -#. Source: src/components/overview/HubCard.tsx:113
3799 +#. Source: src/components/overview/HubCard.tsx:155
3466 3800 #: assets/admin.js
3467 3801 msgid "Connected as"
3468 3802 msgstr ""
3469 3803
@@ -3476,9 +3810,9 @@
3476 3810 #: assets/admin.js
3477 3811 msgid "Connected to xSpeed Hub"
3478 3812 msgstr ""
3479 3813
3480 -#. Source: src/components/score/ScanCard.tsx:233
3814 +#. Source: src/components/score/ScanCard.tsx:234
3481 3815 #: assets/admin.js
3482 3816 msgid "Connected to xSpeed Hub — this report stays unlisted, not published under your domain."
3483 3817 msgstr ""
3484 3818
@@ -3491,14 +3825,14 @@
3491 3825 #: assets/admin.js
3492 3826 msgid "Control and optimize your site with AI"
3493 3827 msgstr ""
3494 3828
3495 -#. Source: src/components/overview/HubCard.tsx:113
3829 +#. Source: src/components/overview/HubCard.tsx:155
3496 3830 #: assets/admin.js
3497 3831 msgid "Control caching remotely and from AI agents."
3498 3832 msgstr ""
3499 3833
3500 -#. Source: src/components/overview/HubCard.tsx:114
3834 +#. Source: src/components/overview/HubCard.tsx:156
3501 3835 #: assets/admin.js
3502 3836 msgid "Control caching remotely, drive it from AI agents, and manage your sites in one place."
3503 3837 msgstr ""
3504 3838
@@ -3506,10 +3840,20 @@
3506 3840 #: assets/admin.js
3507 3841 msgid "Control xSpeed with AI"
3508 3842 msgstr ""
3509 3843
3510 -#. Source: src/components/score/ScanCard.tsx:80
3844 +#. Source: src/components/RecordCard.tsx:130
3511 3845 #: assets/admin.js
3846 +msgid "Copied"
3847 +msgstr ""
3848 +
3849 +#. Source: src/components/RecordCard.tsx:95
3850 +#: assets/admin.js
3851 +msgid "Copy"
3852 +msgstr ""
3853 +
3854 +#. Source: src/components/score/ScanCard.tsx:81
3855 +#: assets/admin.js
3512 3856 msgid "Core Web Vitals"
3513 3857 msgstr ""
3514 3858
3515 3859 #. Source: src/components/overview/McpSessionDemo.tsx:230
@@ -3516,9 +3860,9 @@
3516 3860 #: assets/admin.js
3517 3861 msgid "Core Web Vitals checked"
3518 3862 msgstr ""
3519 3863
3520 -#. Source: src/components/overview/Recommendations.tsx:98
3864 +#. Source: src/components/overview/Recommendations.tsx:103
3521 3865 #: assets/admin.js
3522 3866 msgid "Could not apply that fix"
3523 3867 msgstr ""
3524 3868
@@ -3531,9 +3875,9 @@
3531 3875 #: assets/admin.js
3532 3876 msgid "Could not check the test status."
3533 3877 msgstr ""
3534 3878
3535 -#. Source: src/components/sidebarGroups.ts:109
3879 +#. Source: src/components/sidebarGroups.ts:112
3536 3880 #: assets/admin.js
3537 3881 msgid "Database cleanup, migration and logs."
3538 3882 msgstr ""
3539 3883
@@ -3541,19 +3885,34 @@
3541 3885 #: assets/admin.js
3542 3886 msgid "Defined in wp-config.php as"
3543 3887 msgstr ""
3544 3888
3545 -#. Source: src/components/overview/ScoreCard.tsx:185
3889 +#. Source: src/components/overview/ScoreCard.tsx:189
3546 3890 #: assets/admin.js
3547 3891 msgid "desktop"
3548 3892 msgstr ""
3549 3893
3550 -#. Source: src/components/overview/ScoreCard.tsx:90
3551 -#. Source: src/components/score/ScanCard.tsx:293
3894 +#. Source: src/components/overview/ScoreCard.tsx:91
3895 +#. Source: src/components/score/ScanCard.tsx:298
3552 3896 #: assets/admin.js
3553 3897 msgid "Desktop"
3554 3898 msgstr ""
3555 3899
3900 +#. Source: src/components/settings/HubCard.tsx:372
3901 +#: assets/admin.js
3902 +msgid "Disconnect"
3903 +msgstr ""
3904 +
3905 +#. Source: src/components/settings/HubCard.tsx:352
3906 +#: assets/admin.js
3907 +msgid "Disconnect this site from xSpeed Hub?"
3908 +msgstr ""
3909 +
3910 +#. Source: src/components/settings/HubCard.tsx:169
3911 +#: assets/admin.js
3912 +msgid "Disconnect was refused. Check what stops working, then confirm again."
3913 +msgstr ""
3914 +
3556 3915 #. Source: src/components/FieldSuggestionStrip.tsx:132
3557 3916 #: assets/admin.js
3558 3917 msgid "Dismiss"
3559 3918 msgstr ""
@@ -3563,13 +3922,28 @@
3563 3922 #: assets/admin.js
3564 3923 msgid "Dismiss banner"
3565 3924 msgstr ""
3566 3925
3926 +#. Source: src/components/CfeOfferCard.tsx:104
3927 +#: assets/admin.js
3928 +msgid "Dismiss the Cloudflare Enterprise offer"
3929 +msgstr ""
3930 +
3567 3931 #. Source: src/components/overview/OverviewFooter.tsx:24
3568 3932 #: assets/admin.js
3569 3933 msgid "Documentation"
3570 3934 msgstr ""
3571 3935
3936 +#. Source: src/components/Stepper.tsx:53
3937 +#: assets/admin.js
3938 +msgid "done"
3939 +msgstr ""
3940 +
3941 +#. Source: src/upsell/PurchasePath.tsx:96
3942 +#: assets/admin.js
3943 +msgid "Done"
3944 +msgstr ""
3945 +
3572 3946 #. Source: src/components/cache/NextBestAction.tsx:85
3573 3947 #: assets/admin.js
3574 3948 msgid "Every deterministic check passes — your configuration looks healthy."
3575 3949 msgstr ""
@@ -3593,10 +3967,10 @@
3593 3967 #: assets/admin.js
3594 3968 msgid "Example session"
3595 3969 msgstr ""
3596 3970
3597 -#. Source: src/components/Sidebar.tsx:284
3598 -#. Source: src/components/Sidebar.tsx:289
3971 +#. Source: src/components/Sidebar.tsx:341
3972 +#. Source: src/components/Sidebar.tsx:346
3599 3973 #: assets/admin.js
3600 3974 msgid "Expand sidebar"
3601 3975 msgstr ""
3602 3976
@@ -3604,19 +3978,19 @@
3604 3978 #: assets/admin.js
3605 3979 msgid "failed"
3606 3980 msgstr ""
3607 3981
3608 -#. Source: src/App.tsx:347
3982 +#. Source: src/App.tsx:371
3609 3983 #: assets/admin.js
3610 3984 msgid "Failed to disable cache"
3611 3985 msgstr ""
3612 3986
3613 -#. Source: src/App.tsx:347
3987 +#. Source: src/App.tsx:371
3614 3988 #: assets/admin.js
3615 3989 msgid "Failed to enable cache"
3616 3990 msgstr ""
3617 3991
3618 -#. Source: src/App.tsx:286
3992 +#. Source: src/App.tsx:310
3619 3993 #: assets/admin.js
3620 3994 msgid "Failed to load"
3621 3995 msgstr ""
3622 3996
@@ -3629,9 +4003,9 @@
3629 4003 #: assets/admin.js
3630 4004 msgid "faster per page"
3631 4005 msgstr ""
3632 4006
3633 -#. Source: src/components/overview/FeatureMap.tsx:104
4007 +#. Source: src/components/overview/FeatureMap.tsx:114
3634 4008 #: assets/admin.js
3635 4009 msgid "features"
3636 4010 msgstr ""
3637 4011
@@ -3654,18 +4028,28 @@
3654 4028 #: assets/admin.js
3655 4029 msgid "from wp-config.php"
3656 4030 msgstr ""
3657 4031
3658 -#. Source: src/components/score/ScanCard.tsx:370
4032 +#. Source: src/components/score/ScanCard.tsx:375
3659 4033 #: assets/admin.js
3660 4034 msgid "Full report"
3661 4035 msgstr ""
3662 4036
4037 +#. Source: src/components/CfeOfferCard.tsx:71
4038 +#: assets/admin.js
4039 +msgid "Get it"
4040 +msgstr ""
4041 +
3663 4042 #. Source: src/onboarding/steps/Connect.tsx:170
3664 4043 #: assets/admin.js
3665 4044 msgid "Get more over time"
3666 4045 msgstr ""
3667 4046
4047 +#. Source: src/upsell/LockedPanel.tsx:83
4048 +#: assets/admin.js
4049 +msgid "Get Pro"
4050 +msgstr ""
4051 +
3668 4052 #. Source: src/onboarding/steps/Connect.tsx:134
3669 4053 #. Source: src/onboarding/steps/Connect.tsx:81
3670 4054 #: assets/admin.js
3671 4055 msgid "Go to Dashboard"
@@ -3675,15 +4059,15 @@
3675 4059 #: assets/admin.js
3676 4060 msgid "Go to the dashboard"
3677 4061 msgstr ""
3678 4062
3679 -#. Source: src/components/overview/ScoreCard.tsx:277
4063 +#. Source: src/components/overview/ScoreCard.tsx:281
3680 4064 #: assets/admin.js
3681 4065 msgid "good"
3682 4066 msgstr ""
3683 4067
3684 -#. Source: src/components/score/ScanCard.tsx:273
3685 -#. Source: src/components/score/ScanCard.tsx:314
4068 +#. Source: src/components/score/ScanCard.tsx:278
4069 +#. Source: src/components/score/ScanCard.tsx:319
3686 4070 #: assets/admin.js
3687 4071 msgid "Grade"
3688 4072 msgstr ""
3689 4073
@@ -3691,9 +4075,9 @@
3691 4075 #: assets/admin.js
3692 4076 msgid "GTmetrix test"
3693 4077 msgstr ""
3694 4078
3695 -#. Source: src/components/sidebarGroups.ts:100
4079 +#. Source: src/components/sidebarGroups.ts:103
3696 4080 #: assets/admin.js
3697 4081 msgid "Health & insights"
3698 4082 msgstr ""
3699 4083
@@ -3763,13 +4147,18 @@
3763 4147 #: assets/admin.js
3764 4148 msgid "hrs"
3765 4149 msgstr ""
3766 4150
3767 -#. Source: src/components/TopBar.tsx:138
4151 +#. Source: src/components/TopBar.tsx:142
3768 4152 #: assets/admin.js
3769 4153 msgid "Hub connected"
3770 4154 msgstr ""
3771 4155
4156 +#. Source: src/components/settings/HubCard.tsx:369
4157 +#: assets/admin.js
4158 +msgid "I understand what stops working when this site disconnects."
4159 +msgstr ""
4160 +
3772 4161 #. Source: src/onboarding/steps/Connect.tsx:132
3773 4162 #: assets/admin.js
3774 4163 msgid "I'll connect later"
3775 4164 msgstr ""
@@ -3844,19 +4233,24 @@
3844 4233 #: assets/admin.js
3845 4234 msgid "License"
3846 4235 msgstr ""
3847 4236
3848 -#. Source: src/components/sidebarGroups.ts:128
4237 +#. Source: src/upsell/LockedPanel.tsx:75
3849 4238 #: assets/admin.js
4239 +msgid "License not active"
4240 +msgstr ""
4241 +
4242 +#. Source: src/components/sidebarGroups.ts:131
4243 +#: assets/admin.js
3850 4244 msgid "License, branding, multisite and support."
3851 4245 msgstr ""
3852 4246
3853 -#. Source: src/components/overview/ScoreCard.tsx:205
4247 +#. Source: src/components/overview/ScoreCard.tsx:209
3854 4248 #: assets/admin.js
3855 4249 msgid "Lighthouse performance, from your latest xSpeed Scan."
3856 4250 msgstr ""
3857 4251
3858 -#. Source: src/components/score/ScanCard.tsx:296
4252 +#. Source: src/components/score/ScanCard.tsx:301
3859 4253 #: assets/admin.js
3860 4254 msgid "Lighthouse performance, out of 100"
3861 4255 msgstr ""
3862 4256
@@ -3864,10 +4258,10 @@
3864 4258 #: assets/admin.js
3865 4259 msgid "LiteSpeed Static Fast Path is on: cache hits are served by the web server with no PHP, carry no X-XSpeed-Cache header, and are not counted here — so a low ratio reflects the trade you chose, not a broken cache."
3866 4260 msgstr ""
3867 4261
3868 -#. Source: src/App.tsx:456
3869 -#. Source: src/components/GroupLanding.tsx:67
4262 +#. Source: src/App.tsx:493
4263 +#. Source: src/components/GroupLanding.tsx:91
3870 4264 #. Source: src/components/LogsView.tsx:35
3871 4265 #: assets/admin.js
3872 4266 msgid "Logs"
3873 4267 msgstr ""
@@ -3907,10 +4301,10 @@
3907 4301 #: assets/admin.js
3908 4302 msgid "Manage xSpeed through conversation"
3909 4303 msgstr ""
3910 4304
3911 -#. Source: src/components/Sidebar.tsx:395
3912 -#. Source: src/components/Sidebar.tsx:402
4305 +#. Source: src/components/Sidebar.tsx:494
4306 +#. Source: src/components/Sidebar.tsx:501
3913 4307 #: assets/admin.js
3914 4308 msgid "Manage your license"
3915 4309 msgstr ""
3916 4310
@@ -3918,9 +4312,9 @@
3918 4312 #: assets/admin.js
3919 4313 msgid "MCP is connected and ready — your AI agent can purge, tune and benchmark this site."
3920 4314 msgstr ""
3921 4315
3922 -#. Source: src/components/overview/ScoreCard.tsx:210
4316 +#. Source: src/components/overview/ScoreCard.tsx:214
3923 4317 #: assets/admin.js
3924 4318 msgid "Measured on your home page by an external audit."
3925 4319 msgstr ""
3926 4320
@@ -3933,33 +4327,33 @@
3933 4327 #: assets/admin.js
3934 4328 msgid "min"
3935 4329 msgstr ""
3936 4330
3937 -#. Source: src/components/sidebarGroups.ts:88
4331 +#. Source: src/components/sidebarGroups.ts:91
3938 4332 #: assets/admin.js
3939 4333 msgid "Minify, compress, lazy-load, fonts and hints."
3940 4334 msgstr ""
3941 4335
3942 -#. Source: src/components/overview/ScoreCard.tsx:185
3943 -#. Source: src/components/score/ScanCard.tsx:306
4336 +#. Source: src/components/overview/ScoreCard.tsx:189
4337 +#. Source: src/components/score/ScanCard.tsx:311
3944 4338 #: assets/admin.js
3945 4339 msgid "mobile"
3946 4340 msgstr ""
3947 4341
3948 -#. Source: src/components/overview/ScoreCard.tsx:91
3949 -#. Source: src/components/score/ScanCard.tsx:293
4342 +#. Source: src/components/overview/ScoreCard.tsx:92
4343 +#. Source: src/components/score/ScanCard.tsx:298
3950 4344 #: assets/admin.js
3951 4345 msgid "Mobile"
3952 4346 msgstr ""
3953 4347
3954 -#. Source: src/components/Sidebar.tsx:334
3955 -#. Source: src/components/Sidebar.tsx:370
4348 +#. Source: src/components/Sidebar.tsx:407
4349 +#. Source: src/components/Sidebar.tsx:443
3956 4350 #: assets/admin.js
3957 4351 msgid "module on"
3958 4352 msgstr ""
3959 4353
3960 -#. Source: src/components/Sidebar.tsx:335
3961 -#. Source: src/components/Sidebar.tsx:371
4354 +#. Source: src/components/Sidebar.tsx:408
4355 +#. Source: src/components/Sidebar.tsx:444
3962 4356 #: assets/admin.js
3963 4357 msgid "modules on"
3964 4358 msgstr ""
3965 4359
@@ -3967,9 +4361,9 @@
3967 4361 #: assets/admin.js
3968 4362 msgid "more after this"
3969 4363 msgstr ""
3970 4364
3971 -#. Source: src/components/overview/HubCard.tsx:148
4365 +#. Source: src/components/overview/HubCard.tsx:190
3972 4366 #: assets/admin.js
3973 4367 msgid "More options"
3974 4368 msgstr ""
3975 4369
@@ -3977,9 +4371,9 @@
3977 4371 #: assets/admin.js
3978 4372 msgid "Negligible difference — page is cheap to render or cache is cold."
3979 4373 msgstr ""
3980 4374
3981 -#. Source: src/components/sidebarGroups.ts:93
4375 +#. Source: src/components/sidebarGroups.ts:96
3982 4376 #: assets/admin.js
3983 4377 msgid "Network"
3984 4378 msgstr ""
3985 4379
@@ -3987,9 +4381,9 @@
3987 4381 #: assets/admin.js
3988 4382 msgid "never"
3989 4383 msgstr ""
3990 4384
3991 -#. Source: src/components/overview/ScoreCard.tsx:181
4385 +#. Source: src/components/overview/ScoreCard.tsx:185
3992 4386 #: assets/admin.js
3993 4387 msgid "Never scanned"
3994 4388 msgstr ""
3995 4389
@@ -4028,13 +4422,18 @@
4028 4422 #: assets/admin.js
4029 4423 msgid "no change"
4030 4424 msgstr ""
4031 4425
4032 -#. Source: src/components/overview/ScoreCard.tsx:181
4426 +#. Source: src/components/overview/ScoreCard.tsx:185
4033 4427 #: assets/admin.js
4034 4428 msgid "No completed scan"
4035 4429 msgstr ""
4036 4430
4431 +#. Source: src/upsell/LockedPanel.tsx:85
4432 +#: assets/admin.js
4433 +msgid "No license key"
4434 +msgstr ""
4435 +
4037 4436 #. Source: src/onboarding/steps/Connect.tsx:164
4038 4437 #: assets/admin.js
4039 4438 msgid "no logging into each dashboard separately."
4040 4439 msgstr ""
@@ -4043,9 +4442,9 @@
4043 4442 #: assets/admin.js
4044 4443 msgid "No matches"
4045 4444 msgstr ""
4046 4445
4047 -#. Source: src/components/overview/ScoreCard.tsx:224
4446 +#. Source: src/components/overview/ScoreCard.tsx:228
4048 4447 #: assets/admin.js
4049 4448 msgid "No performance score measured yet"
4050 4449 msgstr ""
4051 4450
@@ -4068,9 +4467,9 @@
4068 4467 #: assets/admin.js
4069 4468 msgid "No score measured yet"
4070 4469 msgstr ""
4071 4470
4072 -#. Source: src/components/overview/ScoreCard.tsx:196
4471 +#. Source: src/components/overview/ScoreCard.tsx:200
4073 4472 #: assets/admin.js
4074 4473 msgid "No score yet"
4075 4474 msgstr ""
4076 4475
@@ -4078,8 +4477,24 @@
4078 4477 #: assets/admin.js
4079 4478 msgid "No tests left this month."
4080 4479 msgstr ""
4081 4480
4481 +#. Source: src/components/GroupLanding.tsx:38
4482 +#. Source: src/components/ModuleHeader.tsx:51
4483 +#: assets/admin.js
4484 +msgid "Not in use"
4485 +msgstr ""
4486 +
4487 +#. Source: src/components/ModulePanel.tsx:121
4488 +#: assets/admin.js
4489 +msgid "Not in use on this site"
4490 +msgstr ""
4491 +
4492 +#. Source: src/upsell/LockedPanel.tsx:82
4493 +#: assets/admin.js
4494 +msgid "Not installed"
4495 +msgstr ""
4496 +
4082 4497 #. Source: src/components/score/ConnectHubModal.tsx:142
4083 4498 #: assets/admin.js
4084 4499 msgid "Not now"
4085 4500 msgstr ""
@@ -4098,9 +4513,9 @@
4098 4513 #: assets/admin.js
4099 4514 msgid "Nothing on disk yet."
4100 4515 msgstr ""
4101 4516
4102 -#. Source: src/components/overview/ScoreCard.tsx:271
4517 +#. Source: src/components/overview/ScoreCard.tsx:275
4103 4518 #: assets/admin.js
4104 4519 msgid "now"
4105 4520 msgstr ""
4106 4521
@@ -4108,13 +4523,13 @@
4108 4523 #: assets/admin.js
4109 4524 msgid "Now unlocked"
4110 4525 msgstr ""
4111 4526
4112 -#. Source: src/components/GroupLanding.tsx:92
4113 -#. Source: src/components/Sidebar.tsx:334
4114 -#. Source: src/components/Sidebar.tsx:335
4115 -#. Source: src/components/Sidebar.tsx:370
4116 -#. Source: src/components/Sidebar.tsx:371
4527 +#. Source: src/components/GroupLanding.tsx:118
4528 +#. Source: src/components/Sidebar.tsx:407
4529 +#. Source: src/components/Sidebar.tsx:408
4530 +#. Source: src/components/Sidebar.tsx:443
4531 +#. Source: src/components/Sidebar.tsx:444
4117 4532 #. Source: src/components/cache/StatDrilldown.tsx:211
4118 4533 #: assets/admin.js
4119 4534 msgid "of"
4120 4535 msgstr ""
@@ -4128,23 +4543,23 @@
4128 4543 #: assets/admin.js
4129 4544 msgid "of combined wait time"
4130 4545 msgstr ""
4131 4546
4132 -#. Source: src/components/GroupLanding.tsx:42
4133 -#. Source: src/components/ModuleHeader.tsx:33
4134 -#. Source: src/components/overview/FeatureMap.tsx:51
4547 +#. Source: src/components/GroupLanding.tsx:54
4548 +#. Source: src/components/ModuleHeader.tsx:67
4549 +#. Source: src/components/overview/FeatureMap.tsx:60
4135 4550 #: assets/admin.js
4136 4551 msgid "Off"
4137 4552 msgstr ""
4138 4553
4139 -#. Source: src/components/GroupLanding.tsx:92
4554 +#. Source: src/components/GroupLanding.tsx:118
4140 4555 #: assets/admin.js
4141 4556 msgid "on"
4142 4557 msgstr ""
4143 4558
4144 -#. Source: src/components/GroupLanding.tsx:38
4145 -#. Source: src/components/ModuleHeader.tsx:29
4146 -#. Source: src/components/overview/FeatureMap.tsx:46
4559 +#. Source: src/components/GroupLanding.tsx:50
4560 +#. Source: src/components/ModuleHeader.tsx:63
4561 +#. Source: src/components/overview/FeatureMap.tsx:55
4147 4562 #: assets/admin.js
4148 4563 msgid "On"
4149 4564 msgstr ""
4150 4565
@@ -4173,9 +4588,9 @@
4173 4588 #: assets/admin.js
4174 4589 msgid "One AI connection controls the cache on every site you connect"
4175 4590 msgstr ""
4176 4591
4177 -#. Source: src/components/overview/HubCard.tsx:118
4592 +#. Source: src/components/overview/HubCard.tsx:160
4178 4593 #: assets/admin.js
4179 4594 msgid "Open Hub dashboard"
4180 4595 msgstr ""
4181 4596
@@ -4183,9 +4598,9 @@
4183 4598 #: assets/admin.js
4184 4599 msgid "Open MCP"
4185 4600 msgstr ""
4186 4601
4187 -#. Source: src/components/TopBar.tsx:88
4602 +#. Source: src/components/TopBar.tsx:91
4188 4603 #: assets/admin.js
4189 4604 msgid "Open navigation"
4190 4605 msgstr ""
4191 4606
@@ -4193,9 +4608,9 @@
4193 4608 #: assets/admin.js
4194 4609 msgid "Open the full report"
4195 4610 msgstr ""
4196 4611
4197 -#. Source: src/components/sidebarGroups.ts:86
4612 +#. Source: src/components/sidebarGroups.ts:89
4198 4613 #: assets/admin.js
4199 4614 msgid "Optimization"
4200 4615 msgstr ""
4201 4616
@@ -4209,14 +4624,14 @@
4209 4624 msgid "Optimize my site for better PageSpeed."
4210 4625 msgstr ""
4211 4626
4212 4627 #. Source: src/components/ScoreRing.tsx:61
4213 -#. Source: src/components/overview/ScoreCard.tsx:225
4628 +#. Source: src/components/overview/ScoreCard.tsx:229
4214 4629 #: assets/admin.js
4215 4630 msgid "out of 100"
4216 4631 msgstr ""
4217 4632
4218 -#. Source: src/components/overview/ScoreCard.tsx:209
4633 +#. Source: src/components/overview/ScoreCard.tsx:213
4219 4634 #: assets/admin.js
4220 4635 msgid "Over a month old — may not reflect the site now."
4221 4636 msgstr ""
4222 4637
@@ -4224,9 +4639,9 @@
4224 4639 #: assets/admin.js
4225 4640 msgid "Page"
4226 4641 msgstr ""
4227 4642
4228 -#. Source: src/components/sidebarGroups.ts:81
4643 +#. Source: src/components/sidebarGroups.ts:84
4229 4644 #: assets/admin.js
4230 4645 msgid "Page, object and browser caching, plus preload."
4231 4646 msgstr ""
4232 4647
@@ -4244,14 +4659,14 @@
4244 4659 #: assets/admin.js
4245 4660 msgid "PageSpeed & Core Web Vitals"
4246 4661 msgstr ""
4247 4662
4248 -#. Source: src/components/score/ScanCard.tsx:326
4663 +#. Source: src/components/score/ScanCard.tsx:331
4249 4664 #: assets/admin.js
4250 4665 msgid "Partial scan — some checks could not run, so the score covers less than the full rubric."
4251 4666 msgstr ""
4252 4667
4253 -#. Source: src/components/TopBar.tsx:177
4668 +#. Source: src/components/TopBar.tsx:201
4254 4669 #: assets/admin.js
4255 4670 msgid "Partly cleared"
4256 4671 msgstr ""
4257 4672
@@ -4270,10 +4685,10 @@
4270 4685 msgid "per page load"
4271 4686 msgstr ""
4272 4687
4273 4688 #. Source: src/components/ScoreRing.tsx:61
4274 -#. Source: src/components/overview/ScoreCard.tsx:225
4275 -#. Source: src/components/overview/ScoreCard.tsx:254
4689 +#. Source: src/components/overview/ScoreCard.tsx:229
4690 +#. Source: src/components/overview/ScoreCard.tsx:258
4276 4691 #. Source: src/components/score/ScorePanel.tsx:442
4277 4692 #: assets/admin.js
4278 4693 msgid "Performance score"
4279 4694 msgstr ""
@@ -4302,9 +4717,9 @@
4302 4717 #: assets/admin.js
4303 4718 msgid "Pick two runs to compare them."
4304 4719 msgstr ""
4305 4720
4306 -#. Source: src/components/score/ScanCard.tsx:86
4721 +#. Source: src/components/score/ScanCard.tsx:87
4307 4722 #: assets/admin.js
4308 4723 msgid "Platform"
4309 4724 msgstr ""
4310 4725
@@ -4317,29 +4732,29 @@
4317 4732 #: assets/admin.js
4318 4733 msgid "Preload"
4319 4734 msgstr ""
4320 4735
4321 -#. Source: src/App.tsx:423
4736 +#. Source: src/App.tsx:447
4322 4737 #: assets/admin.js
4323 4738 msgid "Preload could not start"
4324 4739 msgstr ""
4325 4740
4326 -#. Source: src/App.tsx:422
4741 +#. Source: src/App.tsx:446
4327 4742 #: assets/admin.js
4328 4743 msgid "Preload could not start: %s"
4329 4744 msgstr ""
4330 4745
4331 -#. Source: src/App.tsx:410
4746 +#. Source: src/App.tsx:434
4332 4747 #: assets/admin.js
4333 4748 msgid "Preload found no pages to warm"
4334 4749 msgstr ""
4335 4750
4336 -#. Source: src/App.tsx:409
4751 +#. Source: src/App.tsx:433
4337 4752 #: assets/admin.js
4338 4753 msgid "Preload found no pages to warm: %s"
4339 4754 msgstr ""
4340 4755
4341 -#. Source: src/App.tsx:399
4756 +#. Source: src/App.tsx:423
4342 4757 #: assets/admin.js
4343 4758 msgid "Preloading %d page"
4344 4759 msgid_plural "Preloading %d pages"
4345 4760 msgstr[0] ""
@@ -4349,18 +4764,18 @@
4349 4764 #: assets/admin.js
4350 4765 msgid "Preview"
4351 4766 msgstr ""
4352 4767
4353 -#. Source: src/components/Sidebar.tsx:300
4768 +#. Source: src/components/Sidebar.tsx:357
4354 4769 #: assets/admin.js
4355 4770 msgid "Primary"
4356 4771 msgstr ""
4357 4772
4358 -#. Source: src/components/GroupLanding.tsx:32
4359 -#. Source: src/components/ModuleHeader.tsx:23
4773 +#. Source: src/components/GroupLanding.tsx:44
4774 +#. Source: src/components/ModuleHeader.tsx:57
4360 4775 #. Source: src/components/Tabs.tsx:97
4361 4776 #. Source: src/components/migration/MigrationPanel.tsx:650
4362 -#. Source: src/components/overview/FeatureMap.tsx:38
4777 +#. Source: src/components/overview/FeatureMap.tsx:47
4363 4778 #. Source: src/upsell/LockedSection.tsx:70
4364 4779 #. Source: src/upsell/ProAudit.tsx:66
4365 4780 #. Source: src/upsell/ProDemo.tsx:60
4366 4781 #. Source: src/upsell/ProTeaser.tsx:45
@@ -4367,15 +4782,15 @@
4367 4782 #: assets/admin.js
4368 4783 msgid "Pro"
4369 4784 msgstr ""
4370 4785
4371 -#. Source: src/upsell/LockedPanel.tsx:82
4786 +#. Source: src/upsell/LockedPanel.tsx:171
4372 4787 #. Source: src/upsell/ProOverview.tsx:40
4373 4788 #: assets/admin.js
4374 4789 msgid "Pro — license needed"
4375 4790 msgstr ""
4376 4791
4377 -#. Source: src/upsell/LockedPanel.tsx:82
4792 +#. Source: src/upsell/LockedPanel.tsx:171
4378 4793 #: assets/admin.js
4379 4794 msgid "Pro feature"
4380 4795 msgstr ""
4381 4796
@@ -4388,17 +4803,17 @@
4388 4803 #: assets/admin.js
4389 4804 msgid "Pro layers deeper optimization, real-user insight, and automation on top of the cache you already run. Nothing you have set up changes."
4390 4805 msgstr ""
4391 4806
4392 -#. Source: src/components/Sidebar.tsx:395
4393 -#. Source: src/components/Sidebar.tsx:411
4807 +#. Source: src/components/Sidebar.tsx:494
4808 +#. Source: src/components/Sidebar.tsx:510
4394 4809 #. Source: src/upsell/ProOverview.tsx:38
4395 4810 #: assets/admin.js
4396 4811 msgid "Pro Licensed"
4397 4812 msgstr ""
4398 4813
4399 -#. Source: src/upsell/LockedPanel.tsx:152
4400 -#. Source: src/upsell/LockedPanel.tsx:41
4814 +#. Source: src/upsell/LockedPanel.tsx:130
4815 +#. Source: src/upsell/LockedPanel.tsx:241
4401 4816 #: assets/admin.js
4402 4817 msgid "Pro unlocks this module + every other locked row in the sidebar. Your current Free settings stay unchanged."
4403 4818 msgstr ""
4404 4819
@@ -4406,31 +4821,36 @@
4406 4821 #: assets/admin.js
4407 4822 msgid "Profile JSON to import"
4408 4823 msgstr ""
4409 4824
4825 +#. Source: src/components/Stepper.tsx:19
4826 +#: assets/admin.js
4827 +msgid "Progress"
4828 +msgstr ""
4829 +
4410 4830 #. Source: src/components/score/ScorePanel.tsx:727
4411 4831 #: assets/admin.js
4412 4832 msgid "Provider"
4413 4833 msgstr ""
4414 4834
4415 -#. Source: src/components/score/ScanCard.tsx:107
4835 +#. Source: src/components/score/ScanCard.tsx:108
4416 4836 #: assets/admin.js
4417 4837 msgid "pts"
4418 4838 msgstr ""
4419 4839
4420 4840 #. Source: src/components/CommandPalette.tsx:58
4421 -#. Source: src/components/TopBar.tsx:180
4841 +#. Source: src/components/TopBar.tsx:204
4422 4842 #: assets/admin.js
4423 4843 msgid "Purge all"
4424 4844 msgstr ""
4425 4845
4426 -#. Source: src/App.tsx:370
4427 -#. Source: src/components/TopBar.tsx:179
4846 +#. Source: src/App.tsx:394
4847 +#. Source: src/components/TopBar.tsx:203
4428 4848 #: assets/admin.js
4429 4849 msgid "Purge failed"
4430 4850 msgstr ""
4431 4851
4432 -#. Source: src/App.tsx:370
4852 +#. Source: src/App.tsx:394
4433 4853 #: assets/admin.js
4434 4854 msgid "Purge failed: %s"
4435 4855 msgstr ""
4436 4856
@@ -4448,9 +4868,9 @@
4448 4868 #: assets/admin.js
4449 4869 msgid "Purge, benchmark, preload and tune settings by asking your AI"
4450 4870 msgstr ""
4451 4871
4452 -#. Source: src/components/score/ScanCard.tsx:341
4872 +#. Source: src/components/score/ScanCard.tsx:346
4453 4873 #: assets/admin.js
4454 4874 msgid "ranked by points recovered"
4455 4875 msgstr ""
4456 4876
@@ -4459,14 +4879,19 @@
4459 4879 #: assets/admin.js
4460 4880 msgid "Re-run"
4461 4881 msgstr ""
4462 4882
4883 +#. Source: src/upsell/LockedPanel.tsx:106
4884 +#: assets/admin.js
4885 +msgid "Read the setup guide"
4886 +msgstr ""
4887 +
4463 4888 #. Source: src/components/mcp/McpActivity.tsx:194
4464 4889 #: assets/admin.js
4465 4890 msgid "read-only call"
4466 4891 msgstr ""
4467 4892
4468 -#. Source: src/components/overview/ScoreCard.tsx:202
4893 +#. Source: src/components/overview/ScoreCard.tsx:206
4469 4894 #: assets/admin.js
4470 4895 msgid "Reading your latest result."
4471 4896 msgstr ""
4472 4897
@@ -4485,9 +4910,9 @@
4485 4910 #: assets/admin.js
4486 4911 msgid "Recent cache and settings activity on this site."
4487 4912 msgstr ""
4488 4913
4489 -#. Source: src/components/GroupLanding.tsx:67
4914 +#. Source: src/components/GroupLanding.tsx:91
4490 4915 #: assets/admin.js
4491 4916 msgid "Recent cache and settings activity."
4492 4917 msgstr ""
4493 4918
@@ -4495,10 +4920,10 @@
4495 4920 #: assets/admin.js
4496 4921 msgid "Recent changes"
4497 4922 msgstr ""
4498 4923
4499 -#. Source: src/components/overview/Recommendations.tsx:119
4500 -#. Source: src/components/overview/Recommendations.tsx:123
4924 +#. Source: src/components/overview/Recommendations.tsx:124
4925 +#. Source: src/components/overview/Recommendations.tsx:128
4501 4926 #: assets/admin.js
4502 4927 msgid "Recommended for your site"
4503 4928 msgstr ""
4504 4929
@@ -4521,8 +4946,13 @@
4521 4946 #: assets/admin.js
4522 4947 msgid "Refresh trends"
4523 4948 msgstr ""
4524 4949
4950 +#. Source: src/components/MissingPanel.tsx:34
4951 +#: assets/admin.js
4952 +msgid "Reload the page. If it happens again, update xSpeed and xSpeed Cache Pro to their latest versions."
4953 +msgstr ""
4954 +
4525 4955 #. Source: src/components/SecretField.tsx:116
4526 4956 #: assets/admin.js
4527 4957 msgid "Remove"
4528 4958 msgstr ""
@@ -4556,9 +4986,9 @@
4556 4986 #: assets/admin.js
4557 4987 msgid "Review us on WordPress.org"
4558 4988 msgstr ""
4559 4989
4560 -#. Source: src/components/overview/ScoreCard.tsx:198
4990 +#. Source: src/components/overview/ScoreCard.tsx:202
4561 4991 #: assets/admin.js
4562 4992 msgid "Room to go faster"
4563 4993 msgstr ""
4564 4994
@@ -4571,10 +5001,10 @@
4571 5001 #: assets/admin.js
4572 5002 msgid "Run a GTmetrix test on this site"
4573 5003 msgstr ""
4574 5004
4575 -#. Source: src/components/overview/ScoreCard.tsx:295
4576 -#. Source: src/components/score/ScanCard.tsx:209
5005 +#. Source: src/components/overview/ScoreCard.tsx:299
5006 +#. Source: src/components/score/ScanCard.tsx:210
4577 5007 #: assets/admin.js
4578 5008 msgid "Run a scan"
4579 5009 msgstr ""
4580 5010
@@ -4642,14 +5072,14 @@
4642 5072 #: assets/admin.js
4643 5073 msgid "Saving changes…"
4644 5074 msgstr ""
4645 5075
4646 -#. Source: src/components/score/ScanCard.tsx:209
5076 +#. Source: src/components/score/ScanCard.tsx:210
4647 5077 #: assets/admin.js
4648 5078 msgid "Scan again"
4649 5079 msgstr ""
4650 5080
4651 -#. Source: src/components/score/ScanCard.tsx:209
5081 +#. Source: src/components/score/ScanCard.tsx:210
4652 5082 #: assets/admin.js
4653 5083 msgid "Scanning…"
4654 5084 msgstr ""
4655 5085
@@ -4657,9 +5087,9 @@
4657 5087 #: assets/admin.js
4658 5088 msgid "Scans your current settings + 24h cache stats and shows exactly which Pro features would help."
4659 5089 msgstr ""
4660 5090
4661 -#. Source: src/components/overview/ScoreCard.tsx:229
5091 +#. Source: src/components/overview/ScoreCard.tsx:233
4662 5092 #. Source: src/components/score/ScorePanel.tsx:728
4663 5093 #: assets/admin.js
4664 5094 msgid "Score"
4665 5095 msgstr ""
@@ -4668,15 +5098,15 @@
4668 5098 #: assets/admin.js
4669 5099 msgid "score out of 100"
4670 5100 msgstr ""
4671 5101
4672 -#. Source: src/components/overview/ScoreCard.tsx:98
5102 +#. Source: src/components/overview/ScoreCard.tsx:99
4673 5103 #: assets/admin.js
4674 5104 msgid "Score strategy"
4675 5105 msgstr ""
4676 5106
4677 -#. Source: src/components/TopBar.tsx:114
4678 -#. Source: src/components/TopBar.tsx:119
5107 +#. Source: src/components/TopBar.tsx:117
5108 +#. Source: src/components/TopBar.tsx:122
4679 5109 #: assets/admin.js
4680 5110 msgid "Search"
4681 5111 msgstr ""
4682 5112
@@ -4694,13 +5124,24 @@
4694 5124 #: assets/admin.js
4695 5125 msgid "See everything it does."
4696 5126 msgstr ""
4697 5127
4698 -#. Source: src/components/overview/ScoreCard.tsx:206
5128 +#. Source: src/components/overview/ScoreCard.tsx:210
4699 5129 #: assets/admin.js
4700 5130 msgid "See how this site performs for real visitors."
4701 5131 msgstr ""
4702 5132
5133 +#. Source: src/components/RecordCard.tsx:134
5134 +#: assets/admin.js
5135 +msgid "Select and copy:"
5136 +msgstr ""
5137 +
5138 +#. Source: src/components/CfeOfferCard.tsx:151
5139 +#. Source: src/components/CfeOfferCard.tsx:224
5140 +#: assets/admin.js
5141 +msgid "Serve your whole site from Cloudflare’s network."
5142 +msgstr ""
5143 +
4703 5144 #. Source: src/components/health/HealthHero.tsx:29
4704 5145 #. Source: src/components/overview/MetricGrid.tsx:55
4705 5146 #: assets/admin.js
4706 5147 msgid "served without PHP"
@@ -4705,9 +5146,9 @@
4705 5146 #: assets/admin.js
4706 5147 msgid "served without PHP"
4707 5148 msgstr ""
4708 5149
4709 -#. Source: src/components/score/ScanCard.tsx:82
5150 +#. Source: src/components/score/ScanCard.tsx:83
4710 5151 #: assets/admin.js
4711 5152 msgid "Server & caching"
4712 5153 msgstr ""
4713 5154
@@ -4735,13 +5176,18 @@
4735 5176 #: assets/admin.js
4736 5177 msgid "Show"
4737 5178 msgstr ""
4738 5179
4739 -#. Source: src/components/overview/FeatureMap.tsx:104
5180 +#. Source: src/components/overview/FeatureMap.tsx:114
4740 5181 #: assets/admin.js
4741 5182 msgid "Show less"
4742 5183 msgstr ""
4743 5184
5185 +#. Source: src/components/RecordCard.tsx:157
5186 +#: assets/admin.js
5187 +msgid "Show records"
5188 +msgstr ""
5189 +
4744 5190 #. Source: src/components/cache/CacheHero.tsx:214
4745 5191 #: assets/admin.js
4746 5192 msgid "show what cleared the cache and why"
4747 5193 msgstr ""
@@ -4760,9 +5206,9 @@
4760 5206 #: assets/admin.js
4761 5207 msgid "Showing"
4762 5208 msgstr ""
4763 5209
4764 -#. Source: src/components/overview/ScoreCard.tsx:208
5210 +#. Source: src/components/overview/ScoreCard.tsx:212
4765 5211 #: assets/admin.js
4766 5212 msgid "Showing your last completed scan."
4767 5213 msgstr ""
4768 5214
@@ -4775,9 +5221,9 @@
4775 5221 #: assets/admin.js
4776 5222 msgid "Size"
4777 5223 msgstr ""
4778 5224
4779 -#. Source: src/components/sidebarGroups.ts:102
5225 +#. Source: src/components/sidebarGroups.ts:105
4780 5226 #: assets/admin.js
4781 5227 msgid "Speed score, diagnostics and analytics."
4782 5228 msgstr ""
4783 5229
@@ -4800,14 +5246,14 @@
4800 5246 #: assets/admin.js
4801 5247 msgid "succeeded"
4802 5248 msgstr ""
4803 5249
4804 -#. Source: src/components/TopBar.tsx:144
5250 +#. Source: src/components/TopBar.tsx:150
4805 5251 #: assets/admin.js
4806 5252 msgid "Switch to dark mode"
4807 5253 msgstr ""
4808 5254
4809 -#. Source: src/components/TopBar.tsx:144
5255 +#. Source: src/components/TopBar.tsx:150
4810 5256 #: assets/admin.js
4811 5257 msgid "Switch to light mode"
4812 5258 msgstr ""
4813 5259
@@ -4846,9 +5292,9 @@
4846 5292 #: assets/admin.js
4847 5293 msgid "The cache was already empty, so there was nothing to clear."
4848 5294 msgstr ""
4849 5295
4850 -#. Source: src/components/overview/ScoreCard.tsx:207
5296 +#. Source: src/components/overview/ScoreCard.tsx:211
4851 5297 #: assets/admin.js
4852 5298 msgid "The last scan did not complete."
4853 5299 msgstr ""
4854 5300
@@ -4871,18 +5317,28 @@
4871 5317 #: assets/admin.js
4872 5318 msgid "This credential is defined in wp-config.php and cannot be changed here."
4873 5319 msgstr ""
4874 5320
4875 -#. Source: src/components/score/ScanCard.tsx:234
5321 +#. Source: src/components/score/ScanCard.tsx:235
4876 5322 #: assets/admin.js
4877 5323 msgid "This report will be publicly visible at xspeedcache.com, listed under your domain. Connect xSpeed Hub to keep your reports unlisted."
4878 5324 msgstr ""
4879 5325
5326 +#. Source: src/components/MissingPanel.tsx:33
5327 +#: assets/admin.js
5328 +msgid "This screen did not load."
5329 +msgstr ""
5330 +
4880 5331 #. Source: src/components/score/ConnectHubModal.tsx:127
4881 5332 #: assets/admin.js
4882 5333 msgid "This site looks local, so it may not be reachable for testing. Your own GTmetrix API key works either way — see the settings below."
4883 5334 msgstr ""
4884 5335
5336 +#. Source: src/components/settings/HubCard.tsx:361
5337 +#: assets/admin.js
5338 +msgid "This tells the hub to drop your account\\u2019s link to this site, then clears it here. Other admins who connected keep theirs, and caching on this site is unaffected. To cut the hub off completely, Rotate the token above so its stored copy stops working."
5339 +msgstr ""
5340 +
4885 5341 #. Source: src/components/OverrideConfirm.tsx:31
4886 5342 #: assets/admin.js
4887 5343 msgid "This value comes from"
4888 5344 msgstr ""
@@ -4892,9 +5348,9 @@
4892 5348 msgid "Token"
4893 5349 msgstr ""
4894 5350
4895 5351 #. Source: src/components/LogsView.tsx:34
4896 -#. Source: src/components/sidebarGroups.ts:107
5352 +#. Source: src/components/sidebarGroups.ts:110
4897 5353 #: assets/admin.js
4898 5354 msgid "Tools"
4899 5355 msgstr ""
4900 5356
@@ -4942,11 +5398,21 @@
4942 5398 #: assets/admin.js
4943 5399 msgid "Under a minute"
4944 5400 msgstr ""
4945 5401
4946 -#. Source: src/components/Sidebar.tsx:424
4947 -#. Source: src/components/Sidebar.tsx:445
4948 -#. Source: src/upsell/LockedPanel.tsx:116
5402 +#. Source: src/upsell/LockedPanel.tsx:67
5403 +#: assets/admin.js
5404 +msgid "Update needed"
5405 +msgstr ""
5406 +
5407 +#. Source: src/upsell/LockedPanel.tsx:68
5408 +#: assets/admin.js
5409 +msgid "Update Pro"
5410 +msgstr ""
5411 +
5412 +#. Source: src/components/Sidebar.tsx:523
5413 +#. Source: src/components/Sidebar.tsx:544
5414 +#. Source: src/upsell/LockedPanel.tsx:205
4949 5415 #. Source: src/upsell/LockedSection.tsx:98
4950 5416 #. Source: src/upsell/ProAudit.tsx:113
4951 5417 #. Source: src/upsell/ProDemo.tsx:102
4952 5418 #. Source: src/upsell/ProOverview.tsx:83
@@ -4958,9 +5424,9 @@
4958 5424 #: assets/admin.js
4959 5425 msgid "Use the host value"
4960 5426 msgstr ""
4961 5427
4962 -#. Source: src/components/overview/ScoreCard.tsx:295
5428 +#. Source: src/components/overview/ScoreCard.tsx:299
4963 5429 #: assets/admin.js
4964 5430 msgid "View details"
4965 5431 msgstr ""
4966 5432
@@ -4978,9 +5444,9 @@
4978 5444 #: assets/admin.js
4979 5445 msgid "Waiting for connection…"
4980 5446 msgstr ""
4981 5447
4982 -#. Source: src/components/overview/Recommendations.tsx:221
5448 +#. Source: src/components/overview/Recommendations.tsx:227
4983 5449 #: assets/admin.js
4984 5450 msgid "Want a hand?"
4985 5451 msgstr ""
4986 5452
@@ -4993,14 +5459,14 @@
4993 5459 #: assets/admin.js
4994 5460 msgid "We couldn't read this site's AI connection status. Open MCP to check."
4995 5461 msgstr ""
4996 5462
4997 -#. Source: src/upsell/LockedPanel.tsx:139
5463 +#. Source: src/upsell/LockedPanel.tsx:228
4998 5464 #: assets/admin.js
4999 5465 msgid "What this adds"
5000 5466 msgstr ""
5001 5467
5002 -#. Source: src/components/score/ScanCard.tsx:339
5468 +#. Source: src/components/score/ScanCard.tsx:344
5003 5469 #: assets/admin.js
5004 5470 msgid "What to fix next"
5005 5471 msgstr ""
5006 5472
@@ -5023,14 +5489,14 @@
5023 5489 #: assets/admin.js
5024 5490 msgid "Where the cache size goes"
5025 5491 msgstr ""
5026 5492
5027 -#. Source: src/components/ModuleHeader.tsx:55
5493 +#. Source: src/components/ModuleHeader.tsx:102
5028 5494 #: assets/admin.js
5029 5495 msgid "Why this is off"
5030 5496 msgstr ""
5031 5497
5032 -#. Source: src/components/ModuleHeader.tsx:55
5498 +#. Source: src/components/ModuleHeader.tsx:102
5033 5499 #: assets/admin.js
5034 5500 msgid "Why this is on"
5035 5501 msgstr ""
5036 5502
@@ -5048,12 +5514,17 @@
5048 5514 #: assets/admin.js
5049 5515 msgid "write call"
5050 5516 msgstr ""
5051 5517
5052 -#. Source: src/components/overview/HubCard.tsx:79
5053 -#. Source: src/components/overview/HubCard.tsx:95
5054 -#. Source: src/components/overview/HubCard.tsx:99
5518 +#. Source: src/components/PartnerMark.tsx:28
5055 5519 #: assets/admin.js
5520 +msgid "xSpeed Cache and Cloudflare"
5521 +msgstr ""
5522 +
5523 +#. Source: src/components/overview/HubCard.tsx:137
5524 +#. Source: src/components/overview/HubCard.tsx:141
5525 +#. Source: src/components/overview/HubCard.tsx:82
5526 +#: assets/admin.js
5056 5527 msgid "xSpeed Hub"
5057 5528 msgstr ""
5058 5529
5059 5530 #. Source: src/onboarding/steps/Connect.tsx:140
@@ -5070,22 +5541,22 @@
5070 5541 #: assets/admin.js
5071 5542 msgid "xSpeed Pro is installed — activate your license to unlock every feature below. Your current settings stay exactly as they are."
5072 5543 msgstr ""
5073 5544
5074 -#. Source: src/upsell/LockedPanel.tsx:96
5545 +#. Source: src/upsell/LockedPanel.tsx:185
5075 5546 #: assets/admin.js
5076 5547 msgid "xSpeed Pro is installed — activate your license to unlock this module and every other Pro feature."
5077 5548 msgstr ""
5078 5549
5079 -#. Source: src/components/score/ScanCard.tsx:185
5080 -#. Source: src/components/score/ScanCard.tsx:195
5081 -#. Source: src/components/score/ScanCard.tsx:316
5550 +#. Source: src/components/score/ScanCard.tsx:186
5551 +#. Source: src/components/score/ScanCard.tsx:196
5552 +#. Source: src/components/score/ScanCard.tsx:321
5082 5553 #. Source: src/components/score/ScorePanel.tsx:426
5083 5554 #: assets/admin.js
5084 5555 msgid "xSpeed Scan"
5085 5556 msgstr ""
5086 5557
5087 -#. Source: src/components/score/ScanCard.tsx:276
5558 +#. Source: src/components/score/ScanCard.tsx:281
5088 5559 #: assets/admin.js
5089 5560 msgid "xSpeed Scan, out of 100"
5090 5561 msgstr ""
5091 5562
@@ -5103,9 +5574,9 @@
5103 5574 #: assets/admin.js
5104 5575 msgid "You're all set"
5105 5576 msgstr ""
5106 5577
5107 -#. Source: src/components/overview/Recommendations.tsx:134
5578 +#. Source: src/components/overview/Recommendations.tsx:139
5108 5579 #: assets/admin.js
5109 5580 msgid "You're all set — no recommendations right now."
5110 5581 msgstr ""
5111 5582
@@ -5143,15 +5614,15 @@
5143 5614 #: assets/admin.js
5144 5615 msgid "Your Hub is home base for all your sites. Once connected, you can:"
5145 5616 msgstr ""
5146 5617
5147 -#. Source: src/components/overview/FeatureMap.tsx:92
5148 -#. Source: src/components/overview/FeatureMap.tsx:95
5618 +#. Source: src/components/overview/FeatureMap.tsx:102
5619 +#. Source: src/components/overview/FeatureMap.tsx:105
5149 5620 #: assets/admin.js
5150 5621 msgid "Your setup"
5151 5622 msgstr ""
5152 5623
5153 -#. Source: src/components/overview/ScoreCard.tsx:197
5624 +#. Source: src/components/overview/ScoreCard.tsx:201
5154 5625 #: assets/admin.js
5155 5626 msgid "Your site is fast"
5156 5627 msgstr ""
5157 5628