PluginProbe
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN / 1.3.7
xSpeed Cache: AI-Powered Performance Hub with MCP, Caching & CDN v1.3.7
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 1.1.3 1.1.4 All 33 releases
← All changes | languages/xspeed.pot +3993 -411 1.1.3 → 1.3.7 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.1.2\n"
5 +"Project-Id-Version: xSpeed Cache 1.3.7\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-08-03T09:46:28+00:00\n"
12 +"POT-Creation-Date: 2026-10-01T06:08:12+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:2530
19 +#: includes/class-cache.php:8967
20 20 #: includes/class-deactivation-feedback.php:189
21 21 msgid "xSpeed Cache"
22 22 msgstr ""
23 23
@@ -36,73 +36,65 @@
36 36 msgid "https://wpdeveloper.com"
37 37 msgstr ""
38 38
39 39 #: includes/class-admin.php:153
40 -#: includes/class-admin.php:254
40 +#: includes/class-admin.php:243
41 +#: includes/class-cache.php:8981
42 +#: assets/admin.js
41 43 msgid "Settings"
42 44 msgstr ""
43 45
44 -#: includes/class-admin.php:243
46 +#: includes/class-admin.php:241
47 +#: assets/admin.js
45 48 msgid "Overview"
46 49 msgstr ""
47 50
48 -#: includes/class-admin.php:244
49 -msgid "Cache"
51 +#: includes/class-admin.php:242
52 +#: assets/admin.js
53 +msgid "AI & agents"
50 54 msgstr ""
51 55
52 -#: includes/class-admin.php:245
53 -msgid "Optimization"
54 -msgstr ""
55 -
56 -#: includes/class-admin.php:246
57 -msgid "Network"
58 -msgstr ""
59 -
60 -#: includes/class-admin.php:247
61 -msgid "Health"
62 -msgstr ""
63 -
64 -#: includes/class-admin.php:248
65 -msgid "Tools"
66 -msgstr ""
67 -
68 -#: includes/class-admin.php:253
69 -msgid "AI & Agents"
70 -msgstr ""
71 -
72 -#: includes/class-admin.php:312
56 +#: includes/class-admin.php:301
57 +#: assets/admin.js
73 58 msgid "Loading"
74 59 msgstr ""
75 60
76 -#: includes/class-admin.php:314
61 +#: includes/class-admin.php:303
77 62 msgid "xSpeed"
78 63 msgstr ""
79 64
80 -#: includes/class-admin.php:315
65 +#: includes/class-admin.php:304
66 +#: assets/admin.js
81 67 msgid "Loading…"
82 68 msgstr ""
83 69
84 -#: includes/class-cache-inventory.php:340
70 +#. translators: 1: cause of the sweep, 2: number of files removed.
71 +#: includes/class-cache-gc.php:654
72 +#, php-format
73 +msgid "Cache garbage collection (%1$s) — %2$d expired file(s) removed"
74 +msgstr ""
75 +
76 +#: includes/class-cache-inventory.php:357
85 77 msgid "Cached pages (PHP)"
86 78 msgstr ""
87 79
88 -#: includes/class-cache-inventory.php:345
80 +#: includes/class-cache-inventory.php:362
89 81 msgid "Cached pages (server-served)"
90 82 msgstr ""
91 83
92 -#: includes/class-cache-inventory.php:350
84 +#: includes/class-cache-inventory.php:367
93 85 msgid "Precompressed copies"
94 86 msgstr ""
95 87
96 -#: includes/class-cache-inventory.php:355
88 +#: includes/class-cache-inventory.php:372
97 89 msgid "Per-entry metadata"
98 90 msgstr ""
99 91
100 -#: includes/class-cache-inventory.php:360
92 +#: includes/class-cache-inventory.php:377
101 93 msgid "REST responses"
102 94 msgstr ""
103 95
104 -#: includes/class-cache-inventory.php:365
96 +#: includes/class-cache-inventory.php:382
105 97 msgid "Minified CSS/JS"
106 98 msgstr ""
107 99
108 100 #: includes/class-cache-meta-box.php:40
@@ -128,58 +120,207 @@
128 120 #: includes/class-cache-meta-box.php:89
129 121 msgid "Override the global cache expiry for this post (1–720 hours). Leave at 0 to inherit the site default."
130 122 msgstr ""
131 123
124 +#: includes/class-cache-meta-box.php:113
125 +msgid "Purge this post’s cache"
126 +msgstr ""
127 +
128 +#: includes/class-cache-meta-box.php:117
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 +msgstr ""
131 +
132 132 #. translators: 1: cause of the purge, 2: URL or path, 3: number of files removed.
133 -#: includes/class-cache.php:962
133 +#: includes/class-cache.php:4213
134 134 #, php-format
135 135 msgid "Purged one URL (%1$s) — %2$s, %3$d file(s) removed"
136 136 msgstr ""
137 137
138 -#: includes/class-cache.php:1080
138 +#: includes/class-cache.php:5268
139 139 msgid "Purge All"
140 140 msgstr ""
141 141
142 -#: includes/class-cache.php:1084
142 +#: includes/class-cache.php:5272
143 143 msgid "Purge Page / Static Cache"
144 144 msgstr ""
145 145
146 -#: includes/class-cache.php:1088
146 +#: includes/class-cache.php:5276
147 147 msgid "Purge CSS / JS Cache"
148 148 msgstr ""
149 149
150 -#: includes/class-cache.php:1092
150 +#: includes/class-cache.php:5280
151 151 msgid "Purge Object Cache"
152 152 msgstr ""
153 153
154 -#: includes/class-cache.php:1096
154 +#: includes/class-cache.php:5284
155 155 msgid "Purge REST Cache"
156 156 msgstr ""
157 157
158 158 #. translators: 1: what was purged, 2: cause of the purge.
159 -#: includes/class-cache.php:1191
159 +#: includes/class-cache.php:5531
160 160 #, php-format
161 161 msgid "Purged %1$s (%2$s)"
162 162 msgstr ""
163 163
164 164 #. translators: 1: what was purged, 2: cause of the purge, 3: number of files removed.
165 -#: includes/class-cache.php:1197
165 +#: includes/class-cache.php:5537
166 166 #, php-format
167 167 msgid "Purged %1$s (%2$s) — %3$d file(s) removed"
168 168 msgstr ""
169 169
170 -#: includes/class-cache.php:2564
170 +#: includes/class-cache.php:5775
171 +msgid "advanced-cache.php cannot be read, so xSpeed cannot tell whose page cache is installed."
172 +msgstr ""
173 +
174 +#. translators: %s: the page-caching plugin that owns advanced-cache.php.
175 +#: includes/class-cache.php:5782
176 +#, php-format
177 +msgid "%s is serving the page cache. Turn the xSpeed cache off and on again to take it over."
178 +msgstr ""
179 +
180 +#: includes/class-cache.php:5785
181 +msgid "Another plugin is serving the page cache. Turn the xSpeed cache off and on again to take it over."
182 +msgstr ""
183 +
184 +#: includes/class-cache.php:5860
185 +msgid "Could not lock page-cache ownership. Try again."
186 +msgstr ""
187 +
188 +#: includes/class-cache.php:5866
189 +msgid "Page-cache ownership changed while xSpeed was checking it. Nothing was changed; try again."
190 +msgstr ""
191 +
192 +#. translators: %s: the page-caching plugin that owns advanced-cache.php.
193 +#: includes/class-cache.php:5940
194 +#, php-format
195 +msgid "%s owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
196 +msgstr ""
197 +
198 +#: includes/class-cache.php:5943
199 +msgid "Another plugin owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
200 +msgstr ""
201 +
202 +#: includes/class-cache.php:5973
203 +msgid "Could not write wp-content/advanced-cache.php. Check filesystem permissions."
204 +msgstr ""
205 +
206 +#: includes/class-cache.php:6030
207 +msgid "wp-config.php is not writable and already contains define( 'WP_CACHE', false ). Change that line to true — adding a second one would leave the cache off and block xSpeed from changing it again."
208 +msgstr ""
209 +
210 +#: includes/class-cache.php:6031
211 +msgid "xSpeed could not verify the complete page-cache write, and wp-config.php is not writable. Its changes were rolled back."
212 +msgstr ""
213 +
214 +#: includes/class-cache.php:6033
215 +msgid "xSpeed could not verify the complete page-cache write. Its changes were rolled back."
216 +msgstr ""
217 +
218 +#: includes/class-cache.php:6048
219 +msgid "xSpeed could not save the page-cache setting. Its file changes were rolled back."
220 +msgstr ""
221 +
222 +#: includes/class-cache.php:6140
223 +msgid "xSpeed could not safely remove its WP_CACHE setting. The cache remains enabled."
224 +msgstr ""
225 +
226 +#: includes/class-cache.php:6155
227 +msgid "xSpeed could not remove its page-cache drop-in. The cache remains enabled."
228 +msgstr ""
229 +
230 +#: includes/class-cache.php:6156
231 +msgid "xSpeed could not remove its page-cache drop-in, and could not put WP_CACHE back. The cache is not serving; check wp-config.php before changing the page cache again."
232 +msgstr ""
233 +
234 +#: includes/class-cache.php:6173
235 +msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. Remove the xSpeed block from .htaccess by hand before turning the page cache off."
236 +msgstr ""
237 +
238 +#: includes/class-cache.php:6191
239 +msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. The cache remains enabled."
240 +msgstr ""
241 +
242 +#: includes/class-cache.php:6192
243 +msgid "xSpeed could not remove its rewrite rules from .htaccess, and could not restore the drop-in it had just removed. The cache is not serving, and the site may still return stale cached pages until the xSpeed block is removed from .htaccess by hand."
244 +msgstr ""
245 +
246 +#: includes/class-cache.php:6203
247 +msgid "xSpeed could not save the disabled state."
248 +msgstr ""
249 +
250 +#: includes/class-cache.php:6207
251 +msgid "xSpeed could not save the disabled state. The page cache was restored."
252 +msgstr ""
253 +
254 +#. translators: 1: the refusal reason, 2: a page-caching plugin's name.
255 +#: includes/class-cache.php:8451
256 +#, php-format
257 +msgid "%1$s %2$s is also active on this site — deactivate its page cache before enabling xSpeed."
258 +msgstr ""
259 +
260 +#. translators: 1: the refusal reason, 2: comma-separated page-caching plugin names.
261 +#: includes/class-cache.php:8458
262 +#, php-format
263 +msgid "%1$s These page caches are also active on this site: %2$s. Deactivate them before enabling xSpeed."
264 +msgstr ""
265 +
266 +#. translators: %s: comma-separated list of page-caching plugin names.
267 +#: includes/class-cache.php:8513
268 +#, php-format
269 +msgid "More than one page cache is active on this site (%s). Turn off the other page caches before enabling xSpeed."
270 +msgstr ""
271 +
272 +#: includes/class-cache.php:8520
273 +#, php-format
274 +msgid "%s is active or owns advanced-cache.php. Deactivate its page cache before enabling xSpeed."
275 +msgstr ""
276 +
277 +#: includes/class-cache.php:8523
278 +msgid "WP_CACHE is true but no page-cache drop-in owner can be proved. xSpeed will not claim it."
279 +msgstr ""
280 +
281 +#: includes/class-cache.php:8524
282 +msgid "wp-config.php defines WP_CACHE more than once. Remove the duplicate before enabling the cache."
283 +msgstr ""
284 +
285 +#: includes/class-cache.php:8525
286 +msgid "WP_CACHE is set from an expression in wp-config.php. xSpeed will not rewrite it."
287 +msgstr ""
288 +
289 +#: includes/class-cache.php:8526
290 +msgid "WP_CACHE is defined inside a conditional in wp-config.php, so xSpeed cannot tell what it will be. Move it to a plain define before enabling the cache."
291 +msgstr ""
292 +
293 +#: includes/class-cache.php:8527
294 +msgid "wp-config.php cannot be read, so xSpeed cannot safely change page-cache ownership."
295 +msgstr ""
296 +
297 +#: includes/class-cache.php:8528
298 +msgid "advanced-cache.php is occupied but its owner cannot be proved. xSpeed will not replace it."
299 +msgstr ""
300 +
301 +#: includes/class-cache.php:8529
302 +msgid "advanced-cache.php cannot be read, so xSpeed cannot prove its owner."
303 +msgstr ""
304 +
305 +#: includes/class-cache.php:8531
306 +msgid "The page-cache field is occupied or cannot be verified. xSpeed will not change it."
307 +msgstr ""
308 +
309 +#: includes/class-cache.php:9050
310 +#: includes/class-purge-ui.php:278
311 +#: includes/class-purge-ui.php:675
171 312 msgid "Unauthorized."
172 313 msgstr ""
173 314
174 315 #. translators: %s: conflicting plugin name
175 -#: includes/class-conflict-registry.php:322
316 +#: includes/class-conflict-registry.php:157
176 317 #, php-format
177 318 msgid "%s is active and handles the same feature. Deactivate it before enabling this in xSpeed."
178 319 msgstr ""
179 320
180 321 #. translators: %s: conflicting plugin name
181 -#: includes/class-conflict-registry.php:342
322 +#: includes/class-conflict-registry.php:177
182 323 #, php-format
183 324 msgid "%s is active and may interfere. Test carefully."
184 325 msgstr ""
185 326
@@ -239,8 +380,9 @@
239 380 msgid "Please tell us a little more."
240 381 msgstr ""
241 382
242 383 #: includes/class-deactivation-feedback.php:191
384 +#: assets/admin.js
243 385 msgid "Close"
244 386 msgstr ""
245 387
246 388 #: includes/class-deactivation-feedback.php:195
@@ -270,16 +412,111 @@
270 412 #: includes/class-deactivation-feedback.php:233
271 413 msgid "Submit & Deactivate"
272 414 msgstr ""
273 415
416 +#: includes/class-host.php:133
417 +msgid "xSpeed could not enable the page cache on this site."
418 +msgstr ""
419 +
420 +#. translators: %s: the PHP line to add to wp-config.php.
421 +#: includes/class-host.php:139
422 +#, php-format
423 +msgid "xSpeed installed its page cache, but wp-config.php is not writable. Add this line to it to start serving: %s"
424 +msgstr ""
425 +
426 +#. translators: 1: source lifetime in seconds, 2: imported lifetime in hours.
427 +#: includes/class-migration.php:343
428 +#, php-format
429 +msgid "Page cache lifetime %1$ds cannot be expressed in whole hours — importing as %2$dh."
430 +msgstr ""
431 +
432 +#: includes/class-migration.php:358
433 +#: includes/modules/ObjectCache/ObjectCacheModule.php:103
434 +msgid "Redis password"
435 +msgstr ""
436 +
437 +#: includes/class-migration.php:359
438 +msgid "Database-cache Redis password"
439 +msgstr ""
440 +
441 +#: includes/class-migration.php:360
442 +msgid "Page-cache Redis password"
443 +msgstr ""
444 +
445 +#. translators: %s: human label for the secret that could not be read.
446 +#: includes/class-migration.php:370
447 +#, php-format
448 +msgid "%s is encrypted and could not be read — it will not be imported. Enter it again in xSpeed after importing."
449 +msgstr ""
450 +
451 +#. translators: 1: endpoint scheme, e.g. tls. 2: the endpoint as configured in the source plugin.
452 +#: includes/class-migration.php:398
453 +#, php-format
454 +msgid "Object-cache endpoint %2$s uses %1$s, which xSpeed does not support — importing the host and port only. The cache will connect only if the server also accepts a plain connection."
455 +msgstr ""
456 +
274 457 #: includes/class-module-registry.php:43
275 458 msgid "Module is missing a SLUG constant."
276 459 msgstr ""
277 460
278 -#: includes/class-module-registry.php:212
461 +#: includes/class-module-registry.php:214
279 462 msgid "Circular module dependency detected; boot order is undefined for the offending modules."
280 463 msgstr ""
281 464
465 +#. translators: %s: module slug.
466 +#: includes/class-module.php:193
467 +#: includes/class-module.php:306
468 +#, php-format
469 +msgid "\"%s\" is a Pro module and this site has no valid license, so its settings cannot be changed."
470 +msgstr ""
471 +
472 +#. translators: %s: setting key.
473 +#: includes/class-module.php:210
474 +#: includes/class-settings-manager.php:550
475 +#, php-format
476 +msgid "Unknown setting: %s"
477 +msgstr ""
478 +
479 +#. translators: %s: setting key.
480 +#: includes/class-module.php:225
481 +#, php-format
482 +msgid "\"%s\" is not defined in wp-config.php, so there is nothing to override."
483 +msgstr ""
484 +
485 +#. translators: 1: setting key, 2: module slug.
486 +#: includes/class-module.php:255
487 +#, php-format
488 +msgid "Overrode \"%1$s\" on \"%2$s\" — the wp-config.php value no longer applies."
489 +msgstr ""
490 +
491 +#. translators: 1: setting key, 2: module slug.
492 +#: includes/class-module.php:257
493 +#, php-format
494 +msgid "Reverted \"%1$s\" on \"%2$s\" to the value set in wp-config.php."
495 +msgstr ""
496 +
497 +#. translators: %s: comma-separated list of "field (CONSTANT_NAME)" pairs.
498 +#: includes/class-module.php:326
499 +#, php-format
500 +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 +msgstr ""
502 +
503 +#: includes/class-module.php:535
504 +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 +msgstr ""
506 +
507 +#. translators: %s: comma-separated list of setting labels that are switched on.
508 +#: includes/class-module.php:540
509 +#, php-format
510 +msgid "This module has no single on/off switch. It counts as on because these settings are on: %s."
511 +msgstr ""
512 +
513 +#. translators: %s: module slug.
514 +#: includes/class-module.php:721
515 +#, php-format
516 +msgid "Refused a settings write to the Pro module \"%s\" — no valid license."
517 +msgstr ""
518 +
282 519 #. translators: %s: brand name (xSpeed by default, or the white-label name).
283 520 #: includes/class-onboarding.php:56
284 521 #, php-format
285 522 msgid "%s Setup Wizard"
@@ -288,8 +525,362 @@
288 525 #: includes/class-onboarding.php:60
289 526 msgid "Setup Wizard"
290 527 msgstr ""
291 528
529 +#. translators: %d: measured saving in milliseconds.
530 +#: includes/class-optimize-diagnosis.php:135
531 +#, php-format
532 +msgid "%dms available"
533 +msgstr ""
534 +
535 +#. translators: 1: measured saving, 2: setting name.
536 +#: includes/class-optimize-diagnosis.php:154
537 +#, php-format
538 +msgid "The last audit measured %1$s here; the %2$s setting addresses it and is currently off."
539 +msgstr ""
540 +
541 +#. translators: %s: setting name.
542 +#: includes/class-optimize-diagnosis.php:160
543 +#, php-format
544 +msgid "The last audit flagged this; the %s setting addresses it and is currently off."
545 +msgstr ""
546 +
547 +#: includes/class-optimize-diagnosis.php:169
548 +msgid "Measured by the last audit. This is page content or a third-party asset — no caching setting reaches it."
549 +msgstr ""
550 +
551 +#: includes/class-optimize-diagnosis.php:507
552 +msgid "May change how the page renders. It is verified after applying and undone if the page breaks."
553 +msgstr ""
554 +
555 +#: includes/class-optimize-diagnosis.php:524
556 +msgid "Scripts do not run until the visitor interacts. Sliders, counters and anything that animates on load may sit still until first touch, and a script that expects to run immediately can misbehave."
557 +msgstr ""
558 +
559 +#: includes/class-optimize-diagnosis.php:525
560 +msgid "Stylesheets load without blocking the first paint only on pages that have critical CSS; elsewhere only font stylesheets change. Where it applies, styling moves to after first paint, which can INCREASE layout shift on a page that already shifts."
561 +msgstr ""
562 +
563 +#: includes/class-optimize-diagnosis.php:526
564 +msgid "Older themes and plugins still depend on it. Removing it broke a real page with \"jQuery.Deferred exception: e.indexOf is not a function\" — an error the page-level check cannot see, because the HTML arrives intact and only the browser notices."
565 +msgstr ""
566 +
567 +#: includes/class-optimize-diagnosis.php:605
568 +msgid "Largest Contentful Paint"
569 +msgstr ""
570 +
571 +#: includes/class-optimize-diagnosis.php:606
572 +msgid "Cumulative Layout Shift"
573 +msgstr ""
574 +
575 +#: includes/class-optimize-diagnosis.php:607
576 +msgid "Total Blocking Time"
577 +msgstr ""
578 +
579 +#: includes/class-optimize-diagnosis.php:622
580 +msgid "The biggest thing on screen takes too long to appear. Usually a large hero image or video, or a font that blocks text. Caching does not shrink it — the file itself has to get smaller or load sooner."
581 +msgstr ""
582 +
583 +#: includes/class-optimize-diagnosis.php:624
584 +msgid "The page moves while it loads. Almost always images without width and height, or content injected above what is already visible. xSpeed fills in missing dimensions — including for images hosted on other domains, which it measures during a cache warm — so what is usually left here is content that appears above existing content: an embed, a banner, or a script that inserts markup after first paint."
585 +msgstr ""
586 +
587 +#: includes/class-optimize-diagnosis.php:626
588 +msgid "Scripts hold the main thread so the page cannot respond. Fewer or smaller scripts is the only real fix; delaying them (aggressive mode) moves the work rather than removing it."
589 +msgstr ""
590 +
591 +#. translators: 1: tier name, 2: current aggressiveness
592 +#: includes/class-optimize-plan.php:337
593 +#, php-format
594 +msgid "Needs %1$s aggressiveness (run is %2$s)."
595 +msgstr ""
596 +
597 +#: includes/class-optimize-plan.php:349
598 +msgid "Already enabled."
599 +msgstr ""
600 +
601 +#: includes/class-optimize-runner.php:135
602 +msgid "measure_score must be auto, never or always."
603 +msgstr ""
604 +
605 +#: includes/class-optimize-runner.php:143
606 +msgid "Aggressiveness must be safe, standard or aggressive."
607 +msgstr ""
608 +
609 +#: includes/class-optimize-runner.php:185
610 +msgid "A target score was requested, but this was a preview — no changes were applied and the target was not chased."
611 +msgstr ""
612 +
613 +#. translators: %s: the underlying error
614 +#: includes/class-optimize-runner.php:238
615 +#, php-format
616 +msgid "Could not load the site to take a baseline, so no changes were made: %s"
617 +msgstr ""
618 +
619 +#: includes/class-optimize-runner.php:331
620 +msgid "Changes were applied and the HTML checks passed, which does not prove the page works in a browser — those checks cannot run JavaScript. Open these URLs and confirm each renders correctly with no console errors. If you cannot open them, tell the user to check them and what a problem would look like."
621 +msgstr ""
622 +
623 +#: includes/class-optimize-runner.php:418
624 +msgid "A target score was requested, but no iterative tuner is installed, so this was a single pass and the target was not chased."
625 +msgstr ""
626 +
627 +#. translators: %d: number of settings changed
628 +#: includes/class-optimize-runner.php:601
629 +#, php-format
630 +msgid "Applied %d change."
631 +msgid_plural "Applied %d changes."
632 +msgstr[0] ""
633 +msgstr[1] ""
634 +
635 +#. translators: %d: number of changes a real run would make
636 +#: includes/class-optimize-runner.php:614
637 +#, php-format
638 +msgid "Preview only — %d change would be applied."
639 +msgid_plural "Preview only — %d changes would be applied."
640 +msgstr[0] ""
641 +msgstr[1] ""
642 +
643 +#: includes/class-optimize-runner.php:623
644 +msgid "Everything that can be turned on safely is already on."
645 +msgstr ""
646 +
647 +#: includes/class-optimize-runner.php:634
648 +msgid "date unknown"
649 +msgstr ""
650 +
651 +#: includes/class-optimize-runner.php:636
652 +msgid "measured just now"
653 +msgstr ""
654 +
655 +#. translators: %s: human-readable duration, e.g. "2 hours"
656 +#: includes/class-optimize-runner.php:640
657 +#, php-format
658 +msgid "measured %s ago"
659 +msgstr ""
660 +
661 +#. translators: 1: performance score, 2: when it was measured
662 +#: includes/class-optimize-runner.php:647
663 +#, php-format
664 +msgid "Score: %1$d (%2$s)."
665 +msgstr ""
666 +
667 +#. translators: %d: number of riskier settings available
668 +#: includes/class-optimize-runner.php:656
669 +#, php-format
670 +msgid "%d further setting could help, but can break some sites — ask before enabling it."
671 +msgid_plural "%d further settings could help, but can break some sites — ask before enabling them."
672 +msgstr[0] ""
673 +msgstr[1] ""
674 +
675 +#. translators: %d: number of problems only the user can fix
676 +#: includes/class-optimize-runner.php:669
677 +#, php-format
678 +msgid "%d problem is outside what caching can reach."
679 +msgid_plural "%d problems are outside what caching can reach."
680 +msgstr[0] ""
681 +msgstr[1] ""
682 +
683 +#: includes/class-optimize-runner.php:749
684 +msgid "xSpeed would not change the page cache on this site."
685 +msgstr ""
686 +
687 +#: includes/class-optimize-verifier.php:71
688 +msgid "A URL is required."
689 +msgstr ""
690 +
691 +#. translators: %d: HTTP status code
692 +#: includes/class-optimize-verifier.php:158
693 +#, php-format
694 +msgid "The page returned HTTP %d."
695 +msgstr ""
696 +
697 +#: includes/class-optimize-verifier.php:169
698 +msgid "The page stopped part-way through — no closing </body>, which usually means a PHP fatal."
699 +msgstr ""
700 +
701 +#. translators: 1: before size in bytes, 2: after size in bytes
702 +#: includes/class-optimize-verifier.php:179
703 +#, php-format
704 +msgid "The page size changed from %1$d to %2$d bytes — too far to be optimization."
705 +msgstr ""
706 +
707 +#: includes/class-optimize-verifier.php:189
708 +msgid "Every stylesheet disappeared — the page would render unstyled."
709 +msgstr ""
710 +
711 +#: includes/class-optimize-verifier.php:192
712 +msgid "Every script disappeared."
713 +msgstr ""
714 +
715 +#: includes/class-optimize-verifier.php:197
716 +msgid "The page title changed — this may be an error page rather than the site."
717 +msgstr ""
718 +
719 +#: includes/class-optimizer.php:101
720 +msgid "Ran out of time before this step."
721 +msgstr ""
722 +
723 +#: includes/class-optimizer.php:146
724 +msgid "Could not load the page to check it, so the change was undone."
725 +msgstr ""
726 +
727 +#. translators: 1: median render time before, 2: after, 3: percent change.
728 +#: includes/class-optimizer.php:177
729 +#, php-format
730 +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 +msgstr ""
732 +
733 +#. translators: 1: number of URLs, 2: the sitemap failure detail.
734 +#: includes/class-preloader.php:260
735 +#, php-format
736 +msgid "Preloader queued %1$d URLs from the site content — %2$s"
737 +msgstr ""
738 +
739 +#. translators: %s: the sitemap failure detail.
740 +#: includes/class-preloader.php:268
741 +#, php-format
742 +msgid "Preloader could not start — %s"
743 +msgstr ""
744 +
745 +#. translators: 1: number of URLs, 2: plural suffix.
746 +#: includes/class-preloader.php:275
747 +#, php-format
748 +msgid "Preloader queued %1$d URL%2$s for warming."
749 +msgstr ""
750 +
751 +#. translators: 1: sitemap URL, 2: error detail.
752 +#: includes/class-preloader.php:745
753 +#, php-format
754 +msgid "Could not fetch the sitemap at %1$s — %2$s"
755 +msgstr ""
756 +
757 +#. translators: 1: sitemap URL, 2: HTTP status code.
758 +#: includes/class-preloader.php:758
759 +#, php-format
760 +msgid "Could not fetch the sitemap at %1$s — the server returned HTTP %2$d."
761 +msgstr ""
762 +
763 +#. translators: %s: cache store name, e.g. "Cloudflare edge".
764 +#: includes/class-purge-runner.php:147
765 +#, php-format
766 +msgid "%s is not enabled"
767 +msgstr ""
768 +
769 +#: includes/class-purge-runner.php:162
770 +#: assets/admin.js
771 +msgid "the purge was refused"
772 +msgstr ""
773 +
774 +#: includes/class-purge-runner.php:246
775 +msgid "Page cache (HTML, static, REST, minified assets)"
776 +msgstr ""
777 +
778 +#: includes/class-purge-runner.php:257
779 +msgid "Object cache"
780 +msgstr ""
781 +
782 +#: includes/class-purge-runner.php:263
783 +msgid "Cloudflare edge"
784 +msgstr ""
785 +
786 +#: includes/class-purge-runner.php:269
787 +#: includes/modules/Cdn/CdnModule.php:28
788 +#: includes/modules/Migration/MigrationModule.php:556
789 +msgid "CDN"
790 +msgstr ""
791 +
792 +#. translators: 1: what asked for the purge, 2: number of files removed.
793 +#: includes/class-purge-runner.php:335
794 +#, php-format
795 +msgid "Cache purged (%1$s) — %2$d file(s) removed"
796 +msgstr ""
797 +
798 +#: includes/class-purge-runner.php:359
799 +msgid "the object cache engine is unavailable"
800 +msgstr ""
801 +
802 +#: includes/class-purge-runner.php:363
803 +msgid "no persistent object cache drop-in is in use"
804 +msgstr ""
805 +
806 +#: includes/class-purge-runner.php:366
807 +msgid "the drop-in is installed but is not persisting anything"
808 +msgstr ""
809 +
810 +#. translators: %s: what asked for the purge.
811 +#: includes/class-purge-runner.php:388
812 +#, php-format
813 +msgid "Purged object cache (%s)"
814 +msgstr ""
815 +
816 +#: includes/class-purge-runner.php:398
817 +msgid "the backend refused the flush"
818 +msgstr ""
819 +
820 +#: includes/class-purge-runner.php:410
821 +msgid "the Cloudflare module is not available"
822 +msgstr ""
823 +
824 +#: includes/class-purge-runner.php:434
825 +msgid "no CDN with a purge API is configured — xSpeed's CDN module rewrites asset URLs and holds no cache of its own"
826 +msgstr ""
827 +
828 +#: includes/class-purge-ui.php:263
829 +msgid "Purge cache"
830 +msgstr ""
831 +
832 +#: includes/class-purge-ui.php:289
833 +msgid "That URL is not on this site."
834 +msgstr ""
835 +
836 +#: includes/class-purge-ui.php:292
837 +#: includes/class-purge-ui.php:697
838 +msgid "admin"
839 +msgstr ""
840 +
841 +#. translators: 1: URL path of the post, 2: number of OTHER pages also cleared.
842 +#: includes/class-purge-ui.php:414
843 +#, php-format
844 +msgid "%1$s and %2$d page that lists it"
845 +msgid_plural "%1$s and %2$d pages that list it"
846 +msgstr[0] ""
847 +msgstr[1] ""
848 +
849 +#. translators: %s: what was purged.
850 +#: includes/class-purge-ui.php:428
851 +#, php-format
852 +msgid "xSpeed: %s was not cached, so there was nothing to clear."
853 +msgstr ""
854 +
855 +#. translators: 1: what was purged, 2: number of files removed.
856 +#: includes/class-purge-ui.php:435
857 +#, php-format
858 +msgid "xSpeed: cleared the cache for %1$s (%2$d file)."
859 +msgid_plural "xSpeed: cleared the cache for %1$s (%2$d files)."
860 +msgstr[0] ""
861 +msgstr[1] ""
862 +
863 +#: includes/class-purge-ui.php:497
864 +msgid "cleared"
865 +msgstr ""
866 +
867 +#: includes/class-purge-ui.php:498
868 +msgid "was not cached"
869 +msgstr ""
870 +
871 +#: includes/class-purge-ui.php:533
872 +msgid "Purge this post"
873 +msgstr ""
874 +
875 +#: includes/class-purge-ui.php:543
876 +msgid "Purge this URL"
877 +msgstr ""
878 +
879 +#: includes/class-purge-ui.php:684
880 +msgid "That post does not exist."
881 +msgstr ""
882 +
292 883 #: includes/class-recommendations.php:47
293 884 msgid "Enable page caching"
294 885 msgstr ""
295 886
@@ -357,8 +948,9 @@
357 948 msgid "Your hit ratio is %d%% — most visitors hit a cold cache. The preloader crawls your sitemap so pages are warm before anyone asks."
358 949 msgstr ""
359 950
360 951 #: includes/class-recommendations.php:148
952 +#: includes/modules/Preloader/PreloaderModule.php:78
361 953 msgid "Enable preloader"
362 954 msgstr ""
363 955
364 956 #: includes/class-recommendations.php:158
@@ -388,9 +980,9 @@
388 980 #: includes/class-recommendations.php:251
389 981 msgid "This recommendation links to a settings screen; it has no one-click fix."
390 982 msgstr ""
391 983
392 -#: includes/class-recommendations.php:263
984 +#: includes/class-recommendations.php:284
393 985 msgid "Unknown or no-longer-applicable recommendation."
394 986 msgstr ""
395 987
396 988 #: includes/class-rest-api.php:352
@@ -396,20 +988,55 @@
396 988 #: includes/class-rest-api.php:352
397 989 msgid "The id argument is required."
398 990 msgstr ""
399 991
400 -#: includes/class-rest-api.php:463
992 +#: includes/class-rest-api.php:479
401 993 msgid "dashboard"
402 994 msgstr ""
403 995
404 -#: includes/class-rest-manager.php:74
996 +#: includes/class-rest-manager.php:83
405 997 msgid "No route was found matching the URL and request method."
406 998 msgstr ""
407 999
408 -#: includes/class-rest-manager.php:136
1000 +#: includes/class-rest-manager.php:145
409 1001 msgid "The request could not be completed due to a server error."
410 1002 msgstr ""
411 1003
1004 +#: includes/class-scan.php:123
1005 +msgid "That does not look like a public URL the scanner can reach."
1006 +msgstr ""
1007 +
1008 +#: includes/class-scan.php:134
1009 +msgid "A scan is already running for this site."
1010 +msgstr ""
1011 +
1012 +#: includes/class-scan.php:173
1013 +msgid "The scanner is rate limited right now. Try again in a few minutes."
1014 +msgstr ""
1015 +
1016 +#: includes/class-scan.php:185
1017 +#: assets/admin.js
1018 +msgid "The scan could not be started."
1019 +msgstr ""
1020 +
1021 +#: includes/class-scan.php:221
1022 +msgid "That is not a valid scan id."
1023 +msgstr ""
1024 +
1025 +#: includes/class-scan.php:251
1026 +msgid "The scan did not complete."
1027 +msgstr ""
1028 +
1029 +#. translators: %s: transport error message.
1030 +#: includes/class-scan.php:436
1031 +#, php-format
1032 +msgid "Could not reach the scanner: %s"
1033 +msgstr ""
1034 +
1035 +#: includes/class-scan.php:446
1036 +msgid "The scanner returned an unreadable response."
1037 +msgstr ""
1038 +
412 1039 #. translators: %d: HTTP status code.
413 1040 #: includes/class-score.php:194
414 1041 #, php-format
415 1042 msgid "PageSpeed Insights returned HTTP %d."
@@ -414,81 +1041,677 @@
414 1041 #, php-format
415 1042 msgid "PageSpeed Insights returned HTTP %d."
416 1043 msgstr ""
417 1044
418 -#: includes/class-score.php:263
1045 +#: includes/class-score.php:203
1046 +msgid "Google's shared anonymous PageSpeed quota is exhausted right now — this is not a problem with your site. Add a free PageSpeed API key in the Speed Test settings, or connect this site to xSpeed Hub to run tests through it."
1047 +msgstr ""
1048 +
1049 +#: includes/class-score.php:272
419 1050 msgid "GTmetrix reported the test failed."
420 1051 msgstr ""
421 1052
422 -#: includes/class-score.php:321
1053 +#: includes/class-score.php:330
423 1054 msgid "GTmetrix requires an API key — there is no anonymous mode. Add one in the Score settings."
424 1055 msgstr ""
425 1056
426 1057 #. translators: %d: HTTP status code.
427 -#: includes/class-score.php:350
1058 +#: includes/class-score.php:359
428 1059 #, php-format
429 1060 msgid "GTmetrix returned HTTP %d. Check the API key."
430 1061 msgstr ""
431 1062
432 -#: includes/class-score.php:403
1063 +#: includes/class-score.php:412
433 1064 msgid "GTmetrix returned an unreadable response."
434 1065 msgstr ""
435 1066
1067 +#: includes/class-server.php:746
1068 +msgid "an unreadable advanced-cache.php"
1069 +msgstr ""
1070 +
1071 +#: includes/class-server.php:756
1072 +msgid "an unidentified advanced-cache.php"
1073 +msgstr ""
1074 +
1075 +#. translators: %s: setting key.
1076 +#: includes/class-settings-manager.php:563
1077 +#, php-format
1078 +msgid "\"%s\" is not set in wp-config.php by your host, so there is nothing to revert to. Set it to the value you want instead."
1079 +msgstr ""
1080 +
436 1081 #. translators: %s: video title.
437 1082 #: includes/class-video-facade.php:150
1083 +#: includes/class-video-facade.php:196
438 1084 #, php-format
439 1085 msgid "Play video: %s"
440 1086 msgstr ""
441 1087
442 1088 #: includes/class-video-facade.php:153
1089 +#: includes/class-video-facade.php:199
1090 +#: includes/class-video-facade.php:309
443 1091 msgid "Play video"
444 1092 msgstr ""
445 1093
446 -#: includes/modules/Bloat/BloatModule.php:161
1094 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:49
1095 +msgid "AI Privacy"
1096 +msgstr ""
1097 +
1098 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:51
1099 +msgid "Choose whether AI features may use visitor data, with or without Pro."
1100 +msgstr ""
1101 +
1102 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:71
1103 +msgid "Ask visitors for consent"
1104 +msgstr ""
1105 +
1106 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:72
1107 +msgid "When on, AI features only record a visitor's data after they accept the consent banner. Turn it off only where the law does not require consent, as GDPR does."
1108 +msgstr ""
1109 +
1110 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:77
1111 +msgid "Consent banner text"
1112 +msgstr ""
1113 +
1114 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:78
1115 +msgid "The text of the consent banner. Say plainly what you collect, such as page visits and speed data, and why."
1116 +msgstr ""
1117 +
1118 +#: includes/modules/Bloat/BloatModule.php:38
1119 +msgid "Bloat Control"
1120 +msgstr ""
1121 +
1122 +#: includes/modules/Bloat/BloatModule.php:40
1123 +msgid "Turns off WordPress features you do not use, so pages load less."
1124 +msgstr ""
1125 +
1126 +#: includes/modules/Bloat/BloatModule.php:50
1127 +msgid "Disable emojis"
1128 +msgstr ""
1129 +
1130 +#: includes/modules/Bloat/BloatModule.php:51
1131 +msgid "Remove the emoji detection script and its inline styles from every page. Modern browsers draw emojis natively, so visitors still see them. Saves a script and an inline stylesheet per page."
1132 +msgstr ""
1133 +
1134 +#: includes/modules/Bloat/BloatModule.php:56
1135 +msgid "Remove Dashicons for visitors"
1136 +msgstr ""
1137 +
1138 +#: includes/modules/Bloat/BloatModule.php:57
1139 +msgid "Removes the WordPress admin icon font for logged-out visitors. Most themes do not use it, and it saves about 45 KB."
1140 +msgstr ""
1141 +
1142 +#: includes/modules/Bloat/BloatModule.php:62
1143 +msgid "Disable auto-embeds"
1144 +msgstr ""
1145 +
1146 +#: includes/modules/Bloat/BloatModule.php:63
1147 +msgid "Removes the embed script, saving one request per page. A pasted YouTube link no longer turns into a player, so use an embed block."
1148 +msgstr ""
1149 +
1150 +#: includes/modules/Bloat/BloatModule.php:68
1151 +msgid "Disable RSS feeds"
1152 +msgstr ""
1153 +
1154 +#: includes/modules/Bloat/BloatModule.php:69
1155 +msgid "Feed addresses such as /feed/ return \"not found\". Use this if your site has no feed readers."
1156 +msgstr ""
1157 +
1158 +#: includes/modules/Bloat/BloatModule.php:74
1159 +msgid "Disable XML-RPC"
1160 +msgstr ""
1161 +
1162 +#: includes/modules/Bloat/BloatModule.php:75
1163 +msgid "Turns off the old xmlrpc.php file that attackers often target. Leave this off if you use Jetpack or the WordPress mobile app."
1164 +msgstr ""
1165 +
1166 +#: includes/modules/Bloat/BloatModule.php:80
1167 +msgid "Remove jQuery Migrate"
1168 +msgstr ""
1169 +
1170 +#: includes/modules/Bloat/BloatModule.php:81
1171 +msgid "Removes a script that old themes and plugins need, from pages visitors see. Saves about 10 KB and is safe on current themes."
1172 +msgstr ""
1173 +
1174 +#: includes/modules/Bloat/BloatModule.php:86
1175 +msgid "Remove editor styles for visitors"
1176 +msgstr ""
1177 +
1178 +#: includes/modules/Bloat/BloatModule.php:87
1179 +msgid "Removes block editor CSS that some plugins load on public pages by mistake, which can add hundreds of KB. Block styles for visitors stay."
1180 +msgstr ""
1181 +
1182 +#: includes/modules/Bloat/BloatModule.php:92
1183 +msgid "Remove RSD link"
1184 +msgstr ""
1185 +
1186 +#: includes/modules/Bloat/BloatModule.php:93
1187 +msgid "Drop the Really Simple Discovery link from the page head. Only old desktop blogging clients read it."
1188 +msgstr ""
1189 +
1190 +#: includes/modules/Bloat/BloatModule.php:98
1191 +msgid "Remove shortlink"
1192 +msgstr ""
1193 +
1194 +#: includes/modules/Bloat/BloatModule.php:99
1195 +msgid "Drop the ?p=123 shortlink tag and header from posts and pages. The shortlinks keep working; they are just no longer advertised."
1196 +msgstr ""
1197 +
1198 +#: includes/modules/Bloat/BloatModule.php:104
1199 +msgid "Remove REST API links"
1200 +msgstr ""
1201 +
1202 +#: includes/modules/Bloat/BloatModule.php:105
1203 +msgid "Drop the /wp-json/ discovery link tag and Link header. The REST API itself stays on; to block it, use the setting below."
1204 +msgstr ""
1205 +
1206 +#: includes/modules/Bloat/BloatModule.php:110
1207 +msgid "Hide WordPress version"
1208 +msgstr ""
1209 +
1210 +#: includes/modules/Bloat/BloatModule.php:111
1211 +msgid "Remove the WordPress generator tag from pages and feeds, so it no longer states the WordPress version. Other plugins print their own tags; those stay. Script and style URLs still carry ?ver= numbers."
1212 +msgstr ""
1213 +
1214 +#: includes/modules/Bloat/BloatModule.php:116
1215 +msgid "Disable self-pingbacks"
1216 +msgstr ""
1217 +
1218 +#: includes/modules/Bloat/BloatModule.php:117
1219 +msgid "Stop WordPress from sending a pingback to your own site when a post links to another of your posts. Pingbacks to other sites are not affected."
1220 +msgstr ""
1221 +
1222 +#: includes/modules/Bloat/BloatModule.php:122
1223 +msgid "REST API for logged-in users only"
1224 +msgstr ""
1225 +
1226 +#: includes/modules/Bloat/BloatModule.php:123
1227 +msgid "Blocks /wp-json/ for logged-out visitors. This breaks WooCommerce checkout and many contact forms, so keep it off unless you are sure."
1228 +msgstr ""
1229 +
1230 +#: includes/modules/Bloat/BloatModule.php:393
447 1231 msgid "Feeds are disabled."
448 1232 msgstr ""
449 1233
450 -#: includes/modules/Bloat/BloatModule.php:207
1234 +#: includes/modules/Bloat/BloatModule.php:450
451 1235 msgid "Anonymous REST access is disabled on this site."
452 1236 msgstr ""
453 1237
454 -#: includes/modules/BrowserCache/BrowserCacheModule.php:115
455 -msgid "nginx server config required"
1238 +#: includes/modules/BrowserCache/BrowserCacheModule.php:32
1239 +#: includes/modules/Migration/MigrationModule.php:552
1240 +msgid "Browser Cache"
456 1241 msgstr ""
457 1242
458 -#: includes/modules/BrowserCache/BrowserCacheModule.php:116
459 -msgid "Browser-cache headers need to live in your nginx config. Your updated settings are included in the unified server-block snippet on the Cache panel — copy + paste it once into your nginx vhost (or container nginx config), and reload nginx."
1243 +#: includes/modules/BrowserCache/BrowserCacheModule.php:34
1244 +msgid "Tells browsers and CDNs how long to keep your files and pages."
460 1245 msgstr ""
461 1246
462 -#: includes/modules/BrowserCache/BrowserCacheModule.php:120
1247 +#: includes/modules/BrowserCache/BrowserCacheModule.php:44
1248 +msgid "Enable browser cache headers"
1249 +msgstr ""
1250 +
1251 +#: includes/modules/BrowserCache/BrowserCacheModule.php:45
1252 +msgid "On Apache and LiteSpeed, xSpeed adds the rules to .htaccess for you. On nginx, you copy the snippet into your server config."
1253 +msgstr ""
1254 +
1255 +#: includes/modules/BrowserCache/BrowserCacheModule.php:52
1256 +msgid "File lifetime (seconds)"
1257 +msgstr ""
1258 +
1259 +#: includes/modules/BrowserCache/BrowserCacheModule.php:54
1260 +msgid "How long browsers keep CSS, JS, fonts and images. The default is 1 year, which suits files that change name when they change."
1261 +msgstr ""
1262 +
1263 +#: includes/modules/BrowserCache/BrowserCacheModule.php:62
1264 +msgid "Page lifetime (seconds)"
1265 +msgstr ""
1266 +
1267 +#: includes/modules/BrowserCache/BrowserCacheModule.php:64
1268 +msgid "How long browsers keep the page itself. Keep it short (default 1 hour) so visitors see your edits the same day."
1269 +msgstr ""
1270 +
1271 +#: includes/modules/BrowserCache/BrowserCacheModule.php:128
1272 +msgid "Browser cache is enabled but not active on the server"
1273 +msgstr ""
1274 +
1275 +#: includes/modules/BrowserCache/BrowserCacheModule.php:129
1276 +msgid "Browser-cache headers need to live in your nginx config, and the live response shows they are not being sent yet — so this is on in settings but doing nothing. Your settings are included in the unified server-block snippet on the Cache panel: paste it once into your nginx vhost (or container nginx config) and reload nginx."
1277 +msgstr ""
1278 +
1279 +#: includes/modules/BrowserCache/BrowserCacheModule.php:133
1280 +#: includes/modules/Gzip/GzipModule.php:164
463 1281 msgid "Go to the snippet"
464 1282 msgstr ""
465 1283
466 -#: includes/modules/Database/DatabaseModule.php:148
1284 +#: includes/modules/Cache/CacheModule.php:169
1285 +#: includes/modules/Migration/MigrationModule.php:548
1286 +msgid "Page Cache"
1287 +msgstr ""
1288 +
1289 +#: includes/modules/Cache/CacheModule.php:171
1290 +msgid "Saves each page as a file and serves it to logged-out visitors."
1291 +msgstr ""
1292 +
1293 +#: includes/modules/Cache/CacheModule.php:198
1294 +msgid "Cache expiry (hours)"
1295 +msgstr ""
1296 +
1297 +#: includes/modules/Cache/CacheModule.php:200
1298 +msgid "How long a cached page is kept before xSpeed builds it again. 1 to 720 hours (30 days)."
1299 +msgstr ""
1300 +
1301 +#: includes/modules/Cache/CacheModule.php:230
1302 +msgid "Excluded URLs"
1303 +msgstr ""
1304 +
1305 +#: includes/modules/Cache/CacheModule.php:231
1306 +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 +msgstr ""
1308 +
1309 +#: includes/modules/Cache/CacheModule.php:240
1310 +msgid "Excluded cookies"
1311 +msgstr ""
1312 +
1313 +#: includes/modules/Cache/CacheModule.php:241
1314 +msgid "Visitors with a cookie whose name matches a line here always get a fresh page. One per line; * and ~regex work."
1315 +msgstr ""
1316 +
1317 +#: includes/modules/Cache/CacheModule.php:247
1318 +msgid "Excluded browsers and bots"
1319 +msgstr ""
1320 +
1321 +#: includes/modules/Cache/CacheModule.php:248
1322 +msgid "Visitors whose user agent contains a line here always get a fresh page. Useful for screenshot bots and uptime monitors."
1323 +msgstr ""
1324 +
1325 +#: includes/modules/Cache/CacheModule.php:259
1326 +msgid "Ignored query parameters"
1327 +msgstr ""
1328 +
1329 +#: includes/modules/Cache/CacheModule.php:261
1330 +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 +msgstr ""
1332 +
1333 +#: includes/modules/Cache/CacheModule.php:266
1334 +msgid "Clear cache after updates"
1335 +msgstr ""
1336 +
1337 +#: includes/modules/Cache/CacheModule.php:267
1338 +msgid "Clear the page cache when a plugin, theme or WordPress is updated, so visitors never get old pages with broken asset links."
1339 +msgstr ""
1340 +
1341 +#: includes/modules/Cache/CacheModule.php:272
1342 +msgid "Separate mobile cache"
1343 +msgstr ""
1344 +
1345 +#: includes/modules/Cache/CacheModule.php:273
1346 +msgid "Keep a separate cached copy for phones. Turn on only if your theme or plugins show different pages on mobile."
1347 +msgstr ""
1348 +
1349 +#: includes/modules/Cache/CacheModule.php:305
1350 +msgid "CDN or proxy in front"
1351 +msgstr ""
1352 +
1353 +#: includes/modules/Cache/CacheModule.php:306
1354 +msgid "Tells your CDN or proxy not to store pages xSpeed does not cache. Leave on Detect automatically unless you know your provider."
1355 +msgstr ""
1356 +
1357 +#: includes/modules/Cache/CacheModule.php:308
1358 +msgid "Cache in front of this site"
1359 +msgstr ""
1360 +
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."
1363 +msgstr ""
1364 +
1365 +#: includes/modules/Cache/CacheModule.php:315
1366 +msgid "Custom CDN headers"
1367 +msgstr ""
1368 +
1369 +#: includes/modules/Cache/CacheModule.php:318
1370 +msgid "One header per line, as Name: value, for example \"Surrogate-Control: no-store\". Lines starting with # are ignored."
1371 +msgstr ""
1372 +
1373 +#: includes/modules/Cache/CacheModule.php:319
1374 +msgid "Custom edge headers"
1375 +msgstr ""
1376 +
1377 +#: includes/modules/Cache/CacheModule.php:320
1378 +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 +msgstr ""
1380 +
1381 +#: includes/modules/Cache/CacheModule.php:333
1382 +msgid "LiteSpeed static fast path"
1383 +msgstr ""
1384 +
1385 +#: includes/modules/Cache/CacheModule.php:335
1386 +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 +msgstr ""
1388 +
1389 +#: includes/modules/CacheCoverage/CacheCoverageModule.php:36
1390 +msgid "Advanced Cache"
1391 +msgstr ""
1392 +
1393 +#: includes/modules/CacheCoverage/CacheCoverageModule.php:38
1394 +msgid "Caches more page types: 404s, search, feeds and the REST API."
1395 +msgstr ""
1396 +
1397 +#: includes/modules/Cdn/CdnModule.php:30
1398 +msgid "Serve images, fonts, CSS and JS from a CDN such as BunnyCDN or KeyCDN."
1399 +msgstr ""
1400 +
1401 +#: includes/modules/Cdn/CdnModule.php:40
1402 +msgid "Enable CDN"
1403 +msgstr ""
1404 +
1405 +#: includes/modules/Cdn/CdnModule.php:41
1406 +msgid "Load static files from the CDN address below. Set up the CDN to pull files from this site first."
1407 +msgstr ""
1408 +
1409 +#: includes/modules/Cdn/CdnModule.php:46
1410 +msgid "CDN URL"
1411 +msgstr ""
1412 +
1413 +#: includes/modules/Cdn/CdnModule.php:47
1414 +msgid "The CDN address, for example cdn.example.com. xSpeed removes https:// and any trailing slash."
1415 +msgstr ""
1416 +
1417 +#: includes/modules/Cdn/CdnModule.php:54
1418 +msgid "File types to serve"
1419 +msgstr ""
1420 +
1421 +#: includes/modules/Cdn/CdnModule.php:55
1422 +msgid "Only files with these extensions load from the CDN. The defaults cover images, fonts, CSS, JS and common media."
1423 +msgstr ""
1424 +
1425 +#: includes/modules/Cdn/CdnModule.php:62
1426 +msgid "Excluded paths"
1427 +msgstr ""
1428 +
1429 +#: includes/modules/Cdn/CdnModule.php:63
1430 +msgid "Files whose path matches a pattern load from your server, not the CDN. Use * as a wildcard, for example /private/* or *.pdf."
1431 +msgstr ""
1432 +
1433 +#: includes/modules/Cloudflare/CloudflareModule.php:77
1434 +msgid "Cloudflare"
1435 +msgstr ""
1436 +
1437 +#: includes/modules/Cloudflare/CloudflareModule.php:79
1438 +msgid "Clear the Cloudflare cache whenever xSpeed clears its own cache."
1439 +msgstr ""
1440 +
1441 +#: includes/modules/Cloudflare/CloudflareModule.php:103
1442 +msgid "Connect Cloudflare"
1443 +msgstr ""
1444 +
1445 +#: includes/modules/Cloudflare/CloudflareModule.php:104
1446 +msgid "Lets xSpeed clear the Cloudflare cache for your domain, using the details below."
1447 +msgstr ""
1448 +
1449 +#: includes/modules/Cloudflare/CloudflareModule.php:114
1450 +msgid "Authentication"
1451 +msgstr ""
1452 +
1453 +#: includes/modules/Cloudflare/CloudflareModule.php:115
1454 +msgid "An API token is safer and recommended. The older Global API Key also needs your account email."
1455 +msgstr ""
1456 +
1457 +#: includes/modules/Cloudflare/CloudflareModule.php:121
1458 +msgid "API Token"
1459 +msgstr ""
1460 +
1461 +#: includes/modules/Cloudflare/CloudflareModule.php:122
1462 +msgid "Create one at dash.cloudflare.com → My Profile → API Tokens. Give it the \"Zone → Cache Purge\" and \"Zone Settings\" permissions."
1463 +msgstr ""
1464 +
1465 +#: includes/modules/Cloudflare/CloudflareModule.php:130
1466 +msgid "Account email"
1467 +msgstr ""
1468 +
1469 +#: includes/modules/Cloudflare/CloudflareModule.php:131
1470 +msgid "The email address of your Cloudflare account."
1471 +msgstr ""
1472 +
1473 +#: includes/modules/Cloudflare/CloudflareModule.php:137
1474 +msgid "Global API Key"
1475 +msgstr ""
1476 +
1477 +#: includes/modules/Cloudflare/CloudflareModule.php:138
1478 +msgid "Find it at dash.cloudflare.com → My Profile → API Tokens → Global API Key."
1479 +msgstr ""
1480 +
1481 +#: includes/modules/Cloudflare/CloudflareModule.php:144
1482 +msgid "Zone ID"
1483 +msgstr ""
1484 +
1485 +#: includes/modules/Cloudflare/CloudflareModule.php:145
1486 +msgid "The 32-character Zone ID shown on your domain overview page in Cloudflare."
1487 +msgstr ""
1488 +
1489 +#: includes/modules/Cloudflare/CloudflareModule.php:151
1490 +msgid "Clear Cloudflare with xSpeed"
1491 +msgstr ""
1492 +
1493 +#: includes/modules/Cloudflare/CloudflareModule.php:152
1494 +msgid "Clear the Cloudflare cache each time xSpeed clears its own, for example after you save a post."
1495 +msgstr ""
1496 +
1497 +#. translators: %d: number of URLs that changed at once.
1498 +#: includes/modules/Cloudflare/CloudflareModule.php:481
1499 +#, php-format
1500 +msgid "Purging the whole Cloudflare zone: %d URLs changed at once, too many to purge individually"
1501 +msgstr ""
1502 +
1503 +#. translators: %d: number of URLs.
1504 +#: includes/modules/Cloudflare/CloudflareModule.php:542
1505 +#, php-format
1506 +msgid "Skipped a queued Cloudflare purge of %d URL: the connection is no longer available"
1507 +msgid_plural "Skipped a queued Cloudflare purge of %d URLs: the connection is no longer available"
1508 +msgstr[0] ""
1509 +msgstr[1] ""
1510 +
1511 +#. translators: %d: number of URLs purged.
1512 +#: includes/modules/Cloudflare/CloudflareModule.php:573
1513 +#, php-format
1514 +msgid "Purged %d URL from the Cloudflare edge cache"
1515 +msgid_plural "Purged %d URLs from the Cloudflare edge cache"
1516 +msgstr[0] ""
1517 +msgstr[1] ""
1518 +
1519 +#. translators: 1: number of URLs, 2: failure reason.
1520 +#: includes/modules/Cloudflare/CloudflareModule.php:589
1521 +#, php-format
1522 +msgid "Cloudflare URL purge failed (%1$d URL(s)): %2$s"
1523 +msgstr ""
1524 +
1525 +#: includes/modules/Cloudflare/CloudflareModule.php:591
1526 +#: includes/modules/Cloudflare/CloudflareModule.php:658
1527 +msgid "unknown error"
1528 +msgstr ""
1529 +
1530 +#: includes/modules/Cloudflare/CloudflareModule.php:607
1531 +msgid "the Cloudflare integration is switched off"
1532 +msgstr ""
1533 +
1534 +#: includes/modules/Cloudflare/CloudflareModule.php:610
1535 +msgid "no zone ID or API credentials are configured"
1536 +msgstr ""
1537 +
1538 +#. translators: %s: what asked for the purge.
1539 +#: includes/modules/Cloudflare/CloudflareModule.php:646
1540 +#, php-format
1541 +msgid "Purged the Cloudflare edge cache (%s)"
1542 +msgstr ""
1543 +
1544 +#. translators: 1: what asked for the purge, 2: failure reason.
1545 +#: includes/modules/Cloudflare/CloudflareModule.php:656
1546 +#, php-format
1547 +msgid "Cloudflare purge failed (%1$s): %2$s"
1548 +msgstr ""
1549 +
1550 +#: includes/modules/Cloudflare/CloudflareModule.php:728
1551 +msgid "Cloudflare is not fully configured."
1552 +msgstr ""
1553 +
1554 +#: includes/modules/Cloudflare/CloudflareModule.php:729
1555 +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 +msgstr ""
1557 +
1558 +#: includes/modules/Cloudflare/CloudflareModule.php:742
1559 +msgid "Cloudflare purge is failing."
1560 +msgstr ""
1561 +
1562 +#. translators: %s: the Cloudflare API error message, or empty.
1563 +#: includes/modules/Cloudflare/CloudflareModule.php:745
1564 +#, php-format
1565 +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 +msgstr ""
1567 +
1568 +#: includes/modules/Cloudflare/CloudflareModule.php:754
1569 +msgid "Cloudflare credentials were rejected."
1570 +msgstr ""
1571 +
1572 +#. translators: %s: the Cloudflare API error message, or empty.
1573 +#: includes/modules/Cloudflare/CloudflareModule.php:757
1574 +#, php-format
1575 +msgid "The saved credentials could not verify this zone%s. Auto-purge will not work until this is fixed."
1576 +msgstr ""
1577 +
1578 +#: includes/modules/Database/DatabaseModule.php:30
1579 +msgid "Database"
1580 +msgstr ""
1581 +
1582 +#: includes/modules/Database/DatabaseModule.php:32
1583 +msgid "Remove old revisions, spam and other leftovers, and optimize database tables."
1584 +msgstr ""
1585 +
1586 +#: includes/modules/Database/DatabaseModule.php:50
1587 +msgid "Automatic cleanup"
1588 +msgstr ""
1589 +
1590 +#: includes/modules/Database/DatabaseModule.php:51
1591 +msgid "How often xSpeed cleans the database on its own. Manual means it only cleans when you press the button."
1592 +msgstr ""
1593 +
1594 +#: includes/modules/Database/DatabaseModule.php:57
1595 +msgid "What to clean automatically"
1596 +msgstr ""
1597 +
1598 +#: includes/modules/Database/DatabaseModule.php:58
1599 +msgid "The items the scheduled cleanup removes. If you leave this empty, nothing is cleaned, even with a schedule set."
1600 +msgstr ""
1601 +
1602 +#: includes/modules/Database/DatabaseModule.php:70
1603 +msgid "Limit post revisions"
1604 +msgstr ""
1605 +
1606 +#: includes/modules/Database/DatabaseModule.php:71
1607 +msgid "Cap how many revisions WordPress keeps for each post. Cleanup removes revisions that already exist; this stops them piling up again."
1608 +msgstr ""
1609 +
1610 +#: includes/modules/Database/DatabaseModule.php:78
1611 +msgid "Revisions to keep"
1612 +msgstr ""
1613 +
1614 +#: includes/modules/Database/DatabaseModule.php:79
1615 +msgid "0 turns revisions off completely. Older revisions are trimmed the next time each post is saved; to remove the backlog now, clean Post Revisions above."
1616 +msgstr ""
1617 +
1618 +#: includes/modules/Database/DatabaseModule.php:134
1619 +msgid "The revision limit is set outside xSpeed"
1620 +msgstr ""
1621 +
1622 +#. translators: %s: value of WP_POST_REVISIONS, e.g. 5 or false.
1623 +#: includes/modules/Database/DatabaseModule.php:137
1624 +#, php-format
1625 +msgid "WP_POST_REVISIONS is set to %s, usually in wp-config.php, so Limit Post Revisions below has no effect. Remove that definition to manage the limit here."
1626 +msgstr ""
1627 +
1628 +#: includes/modules/Database/DatabaseModule.php:241
467 1629 msgid "Provide at least one cleanup type."
468 1630 msgstr ""
469 1631
470 -#: includes/modules/Gzip/GzipModule.php:116
471 -msgid "GZIP enabled but not active on the server"
1632 +#: includes/modules/Fonts/FontsModule.php:35
1633 +msgid "Fonts"
472 1634 msgstr ""
473 1635
474 -#: includes/modules/Gzip/GzipModule.php:117
475 -msgid "xSpeed wrote the .htaccess rules but the response still isn't gzipped. Your server may have AllowOverride disabled, another caching plugin overriding, or mod_deflate missing. Ask your host to enable GZIP on Apache."
1636 +#: includes/modules/Fonts/FontsModule.php:37
1637 +msgid "Shows text right away while web fonts load, and preloads key fonts."
476 1638 msgstr ""
477 1639
478 -#: includes/modules/Gzip/GzipModule.php:128
1640 +#: includes/modules/Fonts/FontsModule.php:47
1641 +msgid "Show text while fonts load"
1642 +msgstr ""
1643 +
1644 +#: 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."
1646 +msgstr ""
1647 +
1648 +#: includes/modules/Fonts/FontsModule.php:54
1649 +msgid "Fonts to preload"
1650 +msgstr ""
1651 +
1652 +#: includes/modules/Fonts/FontsModule.php:55
1653 +msgid "One full font file URL per line (woff2, woff, ttf or otf). The browser fetches these first, so list only fonts used at the top of the page."
1654 +msgstr ""
1655 +
1656 +#: includes/modules/Gzip/GzipModule.php:35
1657 +#: includes/modules/Migration/MigrationModule.php:554
1658 +msgid "Compression"
1659 +msgstr ""
1660 +
1661 +#: includes/modules/Gzip/GzipModule.php:36
1662 +msgid "GZIP"
1663 +msgstr ""
1664 +
1665 +#: includes/modules/Gzip/GzipModule.php:38
1666 +msgid "Compresses pages and files so they download faster."
1667 +msgstr ""
1668 +
1669 +#: includes/modules/Gzip/GzipModule.php:53
1670 +msgid "Enable Gzip compression"
1671 +msgstr ""
1672 +
1673 +#: includes/modules/Gzip/GzipModule.php:75
1674 +msgid "Compresses pages and files before sending them. xSpeed adds the .htaccess rules for you on this server."
1675 +msgstr ""
1676 +
1677 +#: includes/modules/Gzip/GzipModule.php:78
1678 +msgid "Compresses pages and files before sending them. On nginx you add the rules to your server config yourself. See the notice below."
1679 +msgstr ""
1680 +
1681 +#: includes/modules/Gzip/GzipModule.php:80
1682 +msgid "Compresses pages and files before sending them. On this server you add the rules to your server config yourself. See the notice below."
1683 +msgstr ""
1684 +
1685 +#: includes/modules/Gzip/GzipModule.php:155
479 1686 msgid "GZIP requires server config on nginx"
480 1687 msgstr ""
481 1688
482 -#: includes/modules/Gzip/GzipModule.php:129
1689 +#: includes/modules/Gzip/GzipModule.php:156
1690 +msgid "GZIP is being served by nginx"
1691 +msgstr ""
1692 +
1693 +#: includes/modules/Gzip/GzipModule.php:158
483 1694 msgid "xSpeed can only auto-configure GZIP on Apache and LiteSpeed (via .htaccess). The directives are included in the unified server-block snippet on the Cache panel — copy + paste it once into your nginx vhost (or container nginx config) and reload nginx."
484 1695 msgstr ""
485 1696
486 -#: includes/modules/Gzip/GzipModule.php:138
1697 +#: includes/modules/Gzip/GzipModule.php:159
1698 +msgid "Responses are compressed. xSpeed cannot configure nginx from WordPress, so these directives live in the unified server-block snippet on the Cache panel — that is where to re-copy them if your server config is ever rebuilt."
1699 +msgstr ""
1700 +
1701 +#: includes/modules/Gzip/GzipModule.php:187
1702 +msgid "GZIP enabled but not active on the server"
1703 +msgstr ""
1704 +
1705 +#: includes/modules/Gzip/GzipModule.php:188
1706 +msgid "xSpeed wrote the .htaccess rules but the response still isn't gzipped. Your server may have AllowOverride disabled, another caching plugin overriding, or mod_deflate missing. Ask your host to enable GZIP on Apache."
1707 +msgstr ""
1708 +
1709 +#: includes/modules/Gzip/GzipModule.php:198
487 1710 msgid "GZIP requires server config on this server"
488 1711 msgstr ""
489 1712
490 -#: includes/modules/Gzip/GzipModule.php:139
1713 +#: includes/modules/Gzip/GzipModule.php:199
491 1714 msgid "xSpeed can only auto-configure GZIP on Apache and LiteSpeed (via .htaccess). Paste the snippet below into your server config and reload."
492 1715 msgstr ""
493 1716
494 1717 #: includes/modules/Health/HealthModule.php:66
@@ -494,216 +1717,534 @@
494 1717 #: includes/modules/Health/HealthModule.php:66
495 1718 msgid "xSpeed static-rewrite cache"
496 1719 msgstr ""
497 1720
498 -#: includes/modules/Health/HealthModule.php:81
1721 +#: includes/modules/Health/HealthModule.php:125
499 1722 msgid "xSpeed static-rewrite cache is active"
500 1723 msgstr ""
501 1724
502 -#: includes/modules/Health/HealthModule.php:84
1725 +#: includes/modules/Health/HealthModule.php:128
1726 +#: assets/admin.js
503 1727 msgid "Performance"
504 1728 msgstr ""
505 1729
506 -#: includes/modules/Health/HealthModule.php:87
1730 +#: includes/modules/Health/HealthModule.php:131
507 1731 msgid "Cache hits bypass PHP for ~5-15ms TTFB."
508 1732 msgstr ""
509 1733
510 -#: includes/modules/Health/HealthModule.php:93
1734 +#: includes/modules/Health/HealthModule.php:137
511 1735 msgid "xSpeed cache is disabled"
512 1736 msgstr ""
513 1737
514 -#: includes/modules/Health/HealthModule.php:95
1738 +#: includes/modules/Health/HealthModule.php:139
515 1739 msgid "Enable the page cache in the xSpeed dashboard to start serving cached HTML for non-logged-in visitors."
516 1740 msgstr ""
517 1741
518 -#: includes/modules/Health/HealthModule.php:102
1742 +#: includes/modules/Health/HealthModule.php:155
1743 +msgid "xSpeed is serving cache hits through PHP (LiteSpeed)"
1744 +msgstr ""
1745 +
1746 +#: includes/modules/Health/HealthModule.php:157
1747 +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 +msgstr ""
1749 +
1750 +#: includes/modules/Health/HealthModule.php:159
1751 +msgid "xSpeed is serving cache hits through PHP"
1752 +msgstr ""
1753 +
1754 +#: includes/modules/Health/HealthModule.php:161
1755 +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 +msgstr ""
1757 +
1758 +#: includes/modules/Health/HealthModule.php:163
1759 +#: includes/modules/Health/HealthModule.php:202
1760 +msgid "xSpeed static rewrite is off (Separate Mobile Cache)"
1761 +msgstr ""
1762 +
1763 +#: includes/modules/Health/HealthModule.php:165
1764 +#: includes/modules/Health/HealthModule.php:204
1765 +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 +msgstr ""
1767 +
1768 +#: includes/modules/Health/HealthModule.php:169
519 1769 msgid "xSpeed .htaccess rewrite block is missing"
520 1770 msgstr ""
521 1771
522 -#: includes/modules/Health/HealthModule.php:104
1772 +#: includes/modules/Health/HealthModule.php:171
523 1773 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."
524 1774 msgstr ""
525 1775
526 -#: includes/modules/Health/HealthModule.php:111
1776 +#: includes/modules/Health/HealthModule.php:196
1777 +msgid "xSpeed nginx static rewrite is active"
1778 +msgstr ""
1779 +
1780 +#: includes/modules/Health/HealthModule.php:198
1781 +msgid "nginx is serving cache hits directly — PHP is bypassed (~5-15ms TTFB). No action needed."
1782 +msgstr ""
1783 +
1784 +#: includes/modules/Health/HealthModule.php:208
1785 +msgid "xSpeed is serving cache hits through PHP (pages contain nonces)"
1786 +msgstr ""
1787 +
1788 +#: includes/modules/Health/HealthModule.php:210
1789 +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 +msgstr ""
1791 +
1792 +#: includes/modules/Health/HealthModule.php:219
1793 +msgid "xSpeed could not verify the nginx static rewrite"
1794 +msgstr ""
1795 +
1796 +#. translators: %s: the reason the probe could not complete.
1797 +#: includes/modules/Health/HealthModule.php:224
1798 +#, php-format
1799 +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 +msgstr ""
1801 +
1802 +#: includes/modules/Health/HealthModule.php:232
527 1803 msgid "xSpeed nginx server config required"
528 1804 msgstr ""
529 1805
530 -#: includes/modules/Health/HealthModule.php:113
1806 +#: includes/modules/Health/HealthModule.php:234
531 1807 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:"
532 1808 msgstr ""
533 1809
534 -#: includes/modules/Health/HealthModule.php:122
1810 +#: includes/modules/Health/HealthModule.php:243
535 1811 msgid "xSpeed PHP drop-in cache active"
536 1812 msgstr ""
537 1813
538 -#: includes/modules/Health/HealthModule.php:124
1814 +#: includes/modules/Health/HealthModule.php:245
539 1815 msgid "Static-rewrite caching needs Apache, LiteSpeed, or nginx. The PHP drop-in is still serving cache hits at ~85ms TTFB on this server."
540 1816 msgstr ""
541 1817
1818 +#: includes/modules/Health/HealthModule.php:251
1819 +msgid "Health"
1820 +msgstr ""
1821 +
1822 +#: includes/modules/Health/HealthModule.php:253
1823 +msgid "Checks for problems and shows how often visitors get cached pages."
1824 +msgstr ""
1825 +
1826 +#: includes/modules/Heartbeat/HeartbeatModule.php:38
1827 +msgid "Heartbeat"
1828 +msgstr ""
1829 +
1830 +#: includes/modules/Heartbeat/HeartbeatModule.php:40
1831 +msgid "Controls how often WordPress checks in with your server in the background."
1832 +msgstr ""
1833 +
1834 +#: includes/modules/Heartbeat/HeartbeatModule.php:65
1835 +msgid "Dashboard"
1836 +msgstr ""
1837 +
1838 +#: includes/modules/Heartbeat/HeartbeatModule.php:66
1839 +msgid "Background checks on admin screens, used for notifications."
1840 +msgstr ""
1841 +
1842 +#: includes/modules/Heartbeat/HeartbeatModule.php:73
1843 +msgid "Editor"
1844 +msgstr ""
1845 +
1846 +#: includes/modules/Heartbeat/HeartbeatModule.php:74
1847 +msgid "Background checks in the post editor. Disable only if you do not need autosave or the warning when someone else is editing."
1848 +msgstr ""
1849 +
1850 +#: includes/modules/Heartbeat/HeartbeatModule.php:81
1851 +msgid "Frontend"
1852 +msgstr ""
1853 +
1854 +#: includes/modules/Heartbeat/HeartbeatModule.php:82
1855 +msgid "Background checks on the public site, which only some plugins add. Disable is recommended, as it cuts extra requests to your server."
1856 +msgstr ""
1857 +
1858 +#: includes/modules/Heartbeat/HeartbeatModule.php:89
1859 +msgid "Throttle interval"
1860 +msgstr ""
1861 +
1862 +#: includes/modules/Heartbeat/HeartbeatModule.php:91
1863 +msgid "Seconds between checks where you chose Throttle. 60 suits most sites; a lower number means more requests."
1864 +msgstr ""
1865 +
1866 +#: includes/modules/Lazy/LazyModule.php:42
1867 +msgid "Media Optimization"
1868 +msgstr ""
1869 +
1870 +#: includes/modules/Lazy/LazyModule.php:43
1871 +msgid "Lazy Loading"
1872 +msgstr ""
1873 +
1874 +#: includes/modules/Lazy/LazyModule.php:45
1875 +msgid "Loads images, videos and embeds only when visitors scroll to them."
1876 +msgstr ""
1877 +
1878 +#: includes/modules/Lazy/LazyModule.php:60
1879 +msgid "Lazy-load images"
1880 +msgstr ""
1881 +
1882 +#: includes/modules/Lazy/LazyModule.php:61
1883 +msgid "Images load when the visitor scrolls near them. The first image on the page still loads right away."
1884 +msgstr ""
1885 +
1886 +#: includes/modules/Lazy/LazyModule.php:66
1887 +msgid "Lazy-load embeds"
1888 +msgstr ""
1889 +
1890 +#: includes/modules/Lazy/LazyModule.php:67
1891 +msgid "Embedded content such as YouTube videos and maps loads when the visitor scrolls near it."
1892 +msgstr ""
1893 +
1894 +#: includes/modules/Lazy/LazyModule.php:72
1895 +msgid "Click-to-play videos"
1896 +msgstr ""
1897 +
1898 +#: includes/modules/Lazy/LazyModule.php:73
1899 +msgid "Shows a preview image with a play button in place of YouTube, Vimeo and your own videos that have a poster image. The video loads only when clicked. Autoplaying videos are left alone."
1900 +msgstr ""
1901 +
1902 +#: includes/modules/Lazy/LazyModule.php:78
1903 +msgid "Lazy-load your own videos"
1904 +msgstr ""
1905 +
1906 +#: includes/modules/Lazy/LazyModule.php:79
1907 +msgid "Videos uploaded to your site download only when played. Autoplaying videos are left alone."
1908 +msgstr ""
1909 +
1910 +#: includes/modules/Lazy/LazyModule.php:84
1911 +msgid "Lazy-load background images"
1912 +msgstr ""
1913 +
1914 +#: includes/modules/Lazy/LazyModule.php:85
1915 +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 +msgstr ""
1917 +
1918 +#: includes/modules/Lazy/LazyModule.php:92
1919 +msgid "Images to load right away"
1920 +msgstr ""
1921 +
1922 +#: includes/modules/Lazy/LazyModule.php:93
1923 +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 +msgstr ""
1925 +
1926 +#: includes/modules/Lazy/LazyModule.php:107
1927 +msgid "Add missing image sizes"
1928 +msgstr ""
1929 +
1930 +#: includes/modules/Lazy/LazyModule.php:108
1931 +msgid "Adds width and height to images that lack them, using the media library. This stops the page from jumping as images load."
1932 +msgstr ""
1933 +
1934 +#: includes/modules/Lazy/LazyModule.php:114
1935 +msgid "Excluded images"
1936 +msgstr ""
1937 +
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."
1940 +msgstr ""
1941 +
542 1942 #. translators: %s: command name.
543 -#: includes/modules/Mcp/Cli_Bridge.php:120
1943 +#: includes/modules/Mcp/Cli_Bridge.php:128
544 1944 #, php-format
545 1945 msgid "Unknown command: %s. Call list_commands to see what is available."
546 1946 msgstr ""
547 1947
548 -#: includes/modules/Mcp/McpModule.php:767
1948 +#: includes/modules/Mcp/McpModule.php:149
1949 +#: assets/admin.js
1950 +msgid "MCP Server"
1951 +msgstr ""
1952 +
1953 +#: includes/modules/Mcp/McpModule.php:151
1954 +msgid "Let Claude or another AI assistant clear the cache, check stats and change settings."
1955 +msgstr ""
1956 +
1957 +#: includes/modules/Mcp/McpModule.php:450
1958 +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 +msgstr ""
1960 +
1961 +#: includes/modules/Mcp/McpModule.php:1319
549 1962 msgid "Invalid or expired attach request."
550 1963 msgstr ""
551 1964
552 -#: includes/modules/Mcp/McpModule.php:848
1965 +#: includes/modules/Mcp/McpModule.php:1435
553 1966 msgid "You must be an administrator to authorize an AI agent to control this site."
554 1967 msgstr ""
555 1968
556 -#: includes/modules/Mcp/McpModule.php:855
1969 +#: includes/modules/Mcp/McpModule.php:1442
557 1970 msgid "Security check failed. Please try connecting again."
558 1971 msgstr ""
559 1972
560 -#: includes/modules/Mcp/McpModule.php:982
1973 +#: includes/modules/Mcp/McpModule.php:1538
1974 +#: includes/modules/Mcp/McpModule.php:1557
1975 +msgid "The MCP tool payload is too large."
1976 +msgstr ""
1977 +
1978 +#: includes/modules/Mcp/McpModule.php:1632
561 1979 msgid "Read-only — inspect cache status and settings."
562 1980 msgstr ""
563 1981
564 -#: includes/modules/Mcp/McpModule.php:983
1982 +#: includes/modules/Mcp/McpModule.php:1633
565 1983 msgid "Read & write — purge caches, toggle caching, and change settings."
566 1984 msgstr ""
567 1985
568 -#: includes/modules/Mcp/McpModule.php:984
1986 +#: includes/modules/Mcp/McpModule.php:1634
569 1987 msgid "An AI agent"
570 1988 msgstr ""
571 1989
572 -#: includes/modules/Mcp/McpModule.php:1003
1990 +#: includes/modules/Mcp/McpModule.php:1653
573 1991 msgid "Authorize AI access"
574 1992 msgstr ""
575 1993
576 -#: includes/modules/Mcp/McpModule.php:1014
1994 +#: includes/modules/Mcp/McpModule.php:1664
577 1995 msgid "Connect to xSpeed"
578 1996 msgstr ""
579 1997
580 1998 #. translators: %s: AI client name.
581 -#: includes/modules/Mcp/McpModule.php:1016
1999 +#: includes/modules/Mcp/McpModule.php:1666
582 2000 #, php-format
583 2001 msgid "%s wants to manage the cache on this site."
584 2002 msgstr ""
585 2003
586 -#: includes/modules/Mcp/McpModule.php:1017
2004 +#: includes/modules/Mcp/McpModule.php:1667
587 2005 msgid "Site"
588 2006 msgstr ""
589 2007
590 -#: includes/modules/Mcp/McpModule.php:1018
2008 +#: includes/modules/Mcp/McpModule.php:1668
591 2009 msgid "Signed in as"
592 2010 msgstr ""
593 2011
594 -#: includes/modules/Mcp/McpModule.php:1019
2012 +#: includes/modules/Mcp/McpModule.php:1669
595 2013 msgid "Access"
596 2014 msgstr ""
597 2015
598 -#: includes/modules/Mcp/McpModule.php:1024
2016 +#: includes/modules/Mcp/McpModule.php:1674
599 2017 msgid "Deny"
600 2018 msgstr ""
601 2019
602 -#: includes/modules/Mcp/McpModule.php:1025
2020 +#: includes/modules/Mcp/McpModule.php:1675
603 2021 msgid "Approve"
604 2022 msgstr ""
605 2023
606 -#: includes/modules/Mcp/McpModule.php:1035
2024 +#: includes/modules/Mcp/McpModule.php:1685
607 2025 msgid "Authorization error"
608 2026 msgstr ""
609 2027
610 -#: includes/modules/Mcp/McpModule.php:1038
2028 +#: includes/modules/Mcp/McpModule.php:1688
611 2029 msgid "Could not authorize"
612 2030 msgstr ""
613 2031
2032 +#: includes/modules/Mcp/McpModule.php:1918
2033 +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 +msgstr ""
2035 +
2036 +#: includes/modules/Mcp/McpModule.php:1919
2037 +msgid "No AI assistant is connected. This module counts as on once you connect one."
2038 +msgstr ""
2039 +
614 2040 #: includes/modules/Mcp/Mcp_Auth.php:57
615 2041 msgid "Too many failed attempts. Try again later."
616 2042 msgstr ""
617 2043
618 -#: includes/modules/Mcp/Mcp_OAuth.php:145
2044 +#: includes/modules/Mcp/Mcp_Hub.php:871
2045 +msgid "Connect this site to xSpeed Hub to run a free speed test."
2046 +msgstr ""
2047 +
2048 +#: includes/modules/Mcp/Mcp_Hub.php:897
2049 +msgid "Could not reach xSpeed Hub. Please try again."
2050 +msgstr ""
2051 +
2052 +#: includes/modules/Mcp/Mcp_Hub.php:920
2053 +#: assets/admin.js
2054 +msgid "The test could not be started."
2055 +msgstr ""
2056 +
2057 +#: includes/modules/Mcp/Mcp_OAuth.php:261
2058 +msgid "Too many client registrations. Try again later."
2059 +msgstr ""
2060 +
2061 +#. translators: %d: maximum number of redirect URIs.
2062 +#: includes/modules/Mcp/Mcp_OAuth.php:277
2063 +#, php-format
2064 +msgid "At most %d redirect_uris are allowed."
2065 +msgstr ""
2066 +
2067 +#: includes/modules/Mcp/Mcp_OAuth.php:289
619 2068 msgid "At least one valid redirect_uri is required."
620 2069 msgstr ""
621 2070
622 -#: includes/modules/Mcp/Mcp_OAuth.php:195
2071 +#: includes/modules/Mcp/Mcp_OAuth.php:326
2072 +msgid "Client registration limit reached."
2073 +msgstr ""
2074 +
2075 +#: includes/modules/Mcp/Mcp_OAuth.php:345
2076 +msgid "The client registration could not be stored."
2077 +msgstr ""
2078 +
2079 +#: includes/modules/Mcp/Mcp_OAuth.php:384
623 2080 msgid "Unknown client_id."
624 2081 msgstr ""
625 2082
626 -#: includes/modules/Mcp/Mcp_OAuth.php:199
2083 +#: includes/modules/Mcp/Mcp_OAuth.php:388
627 2084 msgid "redirect_uri does not match a registered value."
628 2085 msgstr ""
629 2086
630 -#: includes/modules/Mcp/Mcp_OAuth.php:202
2087 +#: includes/modules/Mcp/Mcp_OAuth.php:391
631 2088 msgid "Only response_type=code is supported."
632 2089 msgstr ""
633 2090
634 -#: includes/modules/Mcp/Mcp_OAuth.php:206
2091 +#: includes/modules/Mcp/Mcp_OAuth.php:395
635 2092 msgid "PKCE with code_challenge_method=S256 is required."
636 2093 msgstr ""
637 2094
638 -#: includes/modules/Mcp/Mcp_Pairing.php:408
2095 +#: includes/modules/Mcp/Mcp_Pairing.php:474
639 2096 msgid "No active MCP connection to change. Connect first."
640 2097 msgstr ""
641 2098
642 2099 #. translators: %s: tool name.
643 -#: includes/modules/Mcp/Mcp_Tools.php:694
2100 +#: includes/modules/Mcp/Mcp_Tools.php:988
2101 +#: includes/modules/Mcp/Mcp_Tools.php:1026
644 2102 #, php-format
645 2103 msgid "Unknown tool: %s"
646 2104 msgstr ""
647 2105
648 2106 #. translators: %s: tool name.
649 -#: includes/modules/Mcp/Mcp_Tools.php:722
2107 +#: includes/modules/Mcp/Mcp_Tools.php:1047
650 2108 #, php-format
651 2109 msgid "This MCP connection is read-only; the \"%s\" tool changes state and is not permitted. Reconnect with write access to use it."
652 2110 msgstr ""
653 2111
654 2112 #. translators: %s: comma-separated list of valid purge types.
655 -#: includes/modules/Mcp/Mcp_Tools.php:869
2113 +#: includes/modules/Mcp/Mcp_Tools.php:1334
656 2114 #, php-format
657 2115 msgid "Invalid purge type. Expected one of: %s"
658 2116 msgstr ""
659 2117
660 -#: includes/modules/Mcp/Mcp_Tools.php:878
661 -#: includes/modules/Mcp/Mcp_Tools.php:1330
2118 +#: includes/modules/Mcp/Mcp_Tools.php:1343
2119 +#: includes/modules/Mcp/Mcp_Tools.php:2355
662 2120 msgid "AI assistant"
663 2121 msgstr ""
664 2122
665 -#: includes/modules/Mcp/Mcp_Tools.php:896
2123 +#: includes/modules/Mcp/Mcp_Tools.php:1392
666 2124 msgid "The \"enabled\" parameter is required (true or false)."
667 2125 msgstr ""
668 2126
669 -#: includes/modules/Mcp/Mcp_Tools.php:926
670 -#: includes/modules/Mcp/Mcp_Tools.php:948
2127 +#: includes/modules/Mcp/Mcp_Tools.php:1472
2128 +#: includes/modules/Mcp/Mcp_Tools.php:1526
671 2129 msgid "The \"module\" parameter is required."
672 2130 msgstr ""
673 2131
674 -#: includes/modules/Mcp/Mcp_Tools.php:955
2132 +#. translators: %s: module slug.
2133 +#: includes/modules/Mcp/Mcp_Tools.php:1481
2134 +#: includes/modules/Mcp/Mcp_Tools.php:1542
2135 +#, php-format
2136 +msgid "Unknown module \"%s\"."
2137 +msgstr ""
2138 +
2139 +#: includes/modules/Mcp/Mcp_Tools.php:1533
675 2140 msgid "The \"values\" parameter must be an object of setting keys."
676 2141 msgstr ""
677 2142
678 -#: includes/modules/Mcp/Mcp_Tools.php:987
2143 +#. translators: 1: comma-separated field names, 2: module slug.
2144 +#: includes/modules/Mcp/Mcp_Tools.php:1561
2145 +#, php-format
2146 +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 +msgstr ""
2148 +
2149 +#. translators: %s: module slug.
2150 +#: includes/modules/Mcp/Mcp_Tools.php:1593
2151 +#, php-format
2152 +msgid "Refused an MCP settings write to the Pro module \"%s\" — no valid license."
2153 +msgstr ""
2154 +
2155 +#. translators: %s: module slug.
2156 +#: includes/modules/Mcp/Mcp_Tools.php:1603
2157 +#, php-format
2158 +msgid "\"%s\" is a Pro module and this site has no active license, so the write was refused. Nothing was changed."
2159 +msgstr ""
2160 +
2161 +#. translators: 1: setting key, 2: wp-config.php constant name.
2162 +#: includes/modules/Mcp/Mcp_Tools.php:1672
2163 +#, php-format
2164 +msgid "\"%1$s\" is defined in wp-config.php as %2$s and cannot be changed here"
2165 +msgstr ""
2166 +
2167 +#. translators: 1: setting key, 2: module slug.
2168 +#: includes/modules/Mcp/Mcp_Tools.php:1680
2169 +#, php-format
2170 +msgid "\"%1$s\" is not a setting of module \"%2$s\""
2171 +msgstr ""
2172 +
2173 +#. translators: %s: comma-separated setting names.
2174 +#: includes/modules/Mcp/Mcp_Tools.php:1692
2175 +#, php-format
2176 +msgid " — did you mean: %s?"
2177 +msgstr ""
2178 +
2179 +#. translators: %s: setting key.
2180 +#: includes/modules/Mcp/Mcp_Tools.php:1702
2181 +#, php-format
2182 +msgid "\"%s\" was rejected by the schema (wrong type, or outside the allowed range/options)"
2183 +msgstr ""
2184 +
2185 +#. translators: 1: module slug, 2: reasons.
2186 +#: includes/modules/Mcp/Mcp_Tools.php:1711
2187 +#, php-format
2188 +msgid "Refused to update %1$s — nothing was written. %2$s"
2189 +msgstr ""
2190 +
2191 +#: includes/modules/Mcp/Mcp_Tools.php:1747
679 2192 msgid "The \"command\" parameter is required."
680 2193 msgstr ""
681 2194
682 -#: includes/modules/Mcp/Mcp_Tools.php:1157
683 -#: includes/modules/Mcp/Mcp_Tools.php:1197
2195 +#: includes/modules/Mcp/Mcp_Tools.php:1798
2196 +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 +msgstr ""
2198 +
2199 +#: includes/modules/Mcp/Mcp_Tools.php:1892
2200 +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 +msgstr ""
2202 +
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."
2205 +msgstr ""
2206 +
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."
2209 +msgstr ""
2210 +
2211 +#: includes/modules/Mcp/Mcp_Tools.php:2175
2212 +#: includes/modules/Mcp/Mcp_Tools.php:2215
684 2213 msgid "The enabled argument is required."
685 2214 msgstr ""
686 2215
687 -#: includes/modules/Mcp/Mcp_Tools.php:1161
688 -#: includes/modules/Mcp/Mcp_Tools.php:1201
2216 +#: includes/modules/Mcp/Mcp_Tools.php:2179
2217 +#: includes/modules/Mcp/Mcp_Tools.php:2219
689 2218 msgid "The enabled argument must be true or false."
690 2219 msgstr ""
691 2220
692 -#: includes/modules/Mcp/Mcp_Tools.php:1215
2221 +#: includes/modules/Mcp/Mcp_Tools.php:2233
693 2222 msgid "The action argument must be \"list\" or \"clear\"."
694 2223 msgstr ""
695 2224
696 -#: includes/modules/Mcp/Mcp_Tools.php:1254
2225 +#: includes/modules/Mcp/Mcp_Tools.php:2272
697 2226 msgid "External scores are not available on this site."
698 2227 msgstr ""
699 2228
700 -#: includes/modules/Mcp/Mcp_Tools.php:1328
2229 +#: includes/modules/Mcp/Mcp_Tools.php:2353
701 2230 msgid "The url argument is required."
702 2231 msgstr ""
703 2232
2233 +#: includes/modules/Mcp/Mcp_Tools.php:2494
2234 +msgid "The url argument must be a page on this site, as a full http(s) URL or a path starting with /."
2235 +msgstr ""
2236 +
2237 +#: includes/modules/Migration/MigrationModule.php:30
2238 +msgid "Migration"
2239 +msgstr ""
2240 +
2241 +#: includes/modules/Migration/MigrationModule.php:32
2242 +msgid "Import settings from WP Rocket, W3 Total Cache, WP Super Cache or LiteSpeed Cache."
2243 +msgstr ""
2244 +
704 2245 #. translators: %d: number of detected caching plugins.
705 -#: includes/modules/Migration/MigrationModule.php:142
2246 +#: includes/modules/Migration/MigrationModule.php:211
706 2247 #, php-format
707 2248 msgid "Migrate to %1$s — %2$d caching plugin detected"
708 2249 msgid_plural "Migrate to %1$s — %2$d caching plugins detected"
709 2250 msgstr[0] ""
@@ -708,872 +2249,2913 @@
708 2249 msgid_plural "Migrate to %1$s — %2$d caching plugins detected"
709 2250 msgstr[0] ""
710 2251 msgstr[1] ""
711 2252
712 -#: includes/modules/Migration/MigrationModule.php:175
713 -msgid "Import your existing settings in one click instead of configuring everything by hand. Pick a source to migrate:"
2253 +#: includes/modules/Migration/MigrationModule.php:266
2254 +msgid "Speed guarantee"
714 2255 msgstr ""
715 2256
716 -#. translators: %d: number of settings xSpeed will actually import.
717 -#: includes/modules/Migration/MigrationModule.php:190
2257 +#: includes/modules/Migration/MigrationModule.php:311
2258 +msgid "Dismiss this notice"
2259 +msgstr ""
2260 +
2261 +#: includes/modules/Migration/MigrationModule.php:332
2262 +msgid "Guaranteed faster load times — or we'll tune it for you, free."
2263 +msgstr ""
2264 +
2265 +#: includes/modules/Migration/MigrationModule.php:333
2266 +msgid "Faster load times, without configuring anything by hand."
2267 +msgstr ""
2268 +
2269 +#. translators: %s: brand name, e.g. xSpeed Cache.
2270 +#: includes/modules/Migration/MigrationModule.php:346
718 2271 #, php-format
2272 +msgid "%s imports your settings in one click, then handles caching and optimization with AI-powered control."
2273 +msgstr ""
2274 +
2275 +#. translators: 1: detected plugin name, 2: number of settings.
2276 +#: includes/modules/Migration/MigrationModule.php:356
2277 +#, php-format
2278 +msgid "%1$s detected · %2$d setting ready to import"
2279 +msgid_plural "%1$s detected · %2$d settings ready to import"
2280 +msgstr[0] ""
2281 +msgstr[1] ""
2282 +
2283 +#: includes/modules/Migration/MigrationModule.php:376
2284 +msgid "Prefer we handle it? Book a call"
2285 +msgstr ""
2286 +
2287 +#. translators: %s: brand name.
2288 +#: includes/modules/Migration/MigrationModule.php:384
2289 +#, php-format
2290 +msgid "Migrate to %s"
2291 +msgstr ""
2292 +
2293 +#. translators: %s: detected plugin name.
2294 +#: includes/modules/Migration/MigrationModule.php:400
2295 +#, php-format
2296 +msgid "Migrating deactivates %s"
2297 +msgstr ""
2298 +
2299 +#: includes/modules/Migration/MigrationModule.php:405
2300 +msgid "View migration details"
2301 +msgstr ""
2302 +
2303 +#. translators: %d: number of settings imported.
2304 +#: includes/modules/Migration/MigrationModule.php:423
2305 +#, php-format
719 2306 msgid "imports %d setting"
720 2307 msgid_plural "imports %d settings"
721 2308 msgstr[0] ""
722 2309 msgstr[1] ""
723 2310
724 -#: includes/modules/Migration/MigrationModule.php:196
725 -msgid "Import"
2311 +#: includes/modules/Migration/MigrationModule.php:429
2312 +msgid "Migrate"
726 2313 msgstr ""
727 2314
728 -#: includes/modules/Migration/MigrationModule.php:203
729 -msgid "Open Migration panel"
2315 +#: includes/modules/Migration/MigrationModule.php:549
2316 +#: includes/modules/Minify/MinifyModule.php:36
2317 +msgid "Minify"
730 2318 msgstr ""
731 2319
732 -#: includes/modules/Migration/MigrationModule.php:204
733 -msgid "Dismiss"
2320 +#: includes/modules/Migration/MigrationModule.php:550
2321 +msgid "Lazy Load"
734 2322 msgstr ""
735 2323
736 -#: includes/modules/Preloader/PreloaderModule.php:243
2324 +#: includes/modules/Migration/MigrationModule.php:551
2325 +#: includes/modules/Preloader/PreloaderModule.php:32
2326 +msgid "Preloader"
2327 +msgstr ""
2328 +
2329 +#: includes/modules/Migration/MigrationModule.php:553
2330 +#: includes/modules/ObjectCache/ObjectCacheModule.php:32
2331 +msgid "Object Cache"
2332 +msgstr ""
2333 +
2334 +#: includes/modules/Migration/MigrationModule.php:555
2335 +msgid "Bloat Removal"
2336 +msgstr ""
2337 +
2338 +#: includes/modules/Migration/MigrationModule.php:580
2339 +msgid "You do not have permission to migrate settings."
2340 +msgstr ""
2341 +
2342 +#: includes/modules/Migration/MigrationModule.php:586
2343 +msgid "No source selected."
2344 +msgstr ""
2345 +
2346 +#: includes/modules/Migration/MigrationModule.php:618
2347 +msgid "it could not be enabled"
2348 +msgstr ""
2349 +
2350 +#: includes/modules/Migration/MigrationModule.php:703
2351 +msgid "Migrating…"
2352 +msgstr ""
2353 +
2354 +#: includes/modules/Migration/MigrationModule.php:720
2355 +msgid "Migration failed."
2356 +msgstr ""
2357 +
2358 +#: includes/modules/Migration/MigrationModule.php:723
2359 +msgid "the source plugin"
2360 +msgstr ""
2361 +
2362 +#: includes/modules/Migration/MigrationModule.php:724
2363 +msgid "Review imported settings"
2364 +msgstr ""
2365 +
2366 +#: includes/modules/Migration/MigrationModule.php:735
2367 +#: includes/modules/Migration/MigrationModule.php:746
2368 +#: includes/modules/Migration/MigrationModule.php:754
2369 +msgid "settings are now running in xSpeed."
2370 +msgstr ""
2371 +
2372 +#: includes/modules/Migration/MigrationModule.php:737
2373 +#: includes/modules/Migration/MigrationModule.php:747
2374 +msgid "It has been switched off, so the two page caches cannot conflict."
2375 +msgstr ""
2376 +
2377 +#: includes/modules/Migration/MigrationModule.php:738
2378 +msgid "It is still active — switch it off when you are ready."
2379 +msgstr ""
2380 +
2381 +#: includes/modules/Migration/MigrationModule.php:739
2382 +msgid "Skipped:"
2383 +msgstr ""
2384 +
2385 +#: includes/modules/Migration/MigrationModule.php:755
2386 +msgid "It is still active — running two page caches conflicts, so switch it off when you are ready."
2387 +msgstr ""
2388 +
2389 +#: includes/modules/Migration/MigrationModule.php:764
2390 +msgid "Migration could not finish."
2391 +msgstr ""
2392 +
2393 +#: includes/modules/Migration/MigrationModule.php:765
2394 +msgid "Nothing was changed — you can try again."
2395 +msgstr ""
2396 +
2397 +#. translators: %s: source plugin label.
2398 +#: includes/modules/Migration/MigrationModule.php:998
2399 +#, php-format
2400 +msgid "%s is activated across the whole network, so only a network administrator can switch it off. Your settings were imported — ask a network administrator to deactivate it."
2401 +msgstr ""
2402 +
2403 +#. translators: %s: source plugin label.
2404 +#: includes/modules/Migration/MigrationModule.php:1003
2405 +#, php-format
2406 +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 +msgstr ""
2408 +
2409 +#: includes/modules/Minify/MinifyModule.php:35
2410 +msgid "CSS & JavaScript"
2411 +msgstr ""
2412 +
2413 +#: includes/modules/Minify/MinifyModule.php:38
2414 +msgid "Makes HTML, CSS and JavaScript files smaller and loads scripts later."
2415 +msgstr ""
2416 +
2417 +#: includes/modules/Minify/MinifyModule.php:52
2418 +msgid "Minify HTML"
2419 +msgstr ""
2420 +
2421 +#: includes/modules/Minify/MinifyModule.php:57
2422 +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 +msgstr ""
2424 +
2425 +#: includes/modules/Minify/MinifyModule.php:62
2426 +msgid "Minify CSS"
2427 +msgstr ""
2428 +
2429 +#: includes/modules/Minify/MinifyModule.php:63
2430 +msgid "Makes your site's own CSS files smaller. CSS from other domains is left alone."
2431 +msgstr ""
2432 +
2433 +#: includes/modules/Minify/MinifyModule.php:68
2434 +msgid "Minify JavaScript"
2435 +msgstr ""
2436 +
2437 +#: includes/modules/Minify/MinifyModule.php:69
2438 +msgid "Makes your site's own JavaScript files smaller. Turn off if a script on your site stops working."
2439 +msgstr ""
2440 +
2441 +#: includes/modules/Minify/MinifyModule.php:74
2442 +msgid "Defer JavaScript"
2443 +msgstr ""
2444 +
2445 +#: includes/modules/Minify/MinifyModule.php:75
2446 +msgid "Runs scripts after the page has loaded, so content shows sooner. jQuery and scripts that need it are skipped."
2447 +msgstr ""
2448 +
2449 +#: includes/modules/Minify/MinifyModule.php:80
2450 +msgid "Delay JavaScript"
2451 +msgstr ""
2452 +
2453 +#: includes/modules/Minify/MinifyModule.php:81
2454 +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 +msgstr ""
2456 +
2457 +#: includes/modules/Minify/MinifyModule.php:86
2458 +msgid "Load CSS without blocking"
2459 +msgstr ""
2460 +
2461 +#: includes/modules/Minify/MinifyModule.php:87
2462 +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 +msgstr ""
2464 +
2465 +#: includes/modules/Minify/MinifyModule.php:92
2466 +msgid "Remove version from file URLs"
2467 +msgstr ""
2468 +
2469 +#: includes/modules/Minify/MinifyModule.php:93
2470 +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 +msgstr ""
2472 +
2473 +#: includes/modules/Minify/MinifyModule.php:100
2474 +msgid "Scripts to never defer or delay"
2475 +msgstr ""
2476 +
2477 +#: includes/modules/Minify/MinifyModule.php:101
2478 +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 +msgstr ""
2480 +
2481 +#: includes/modules/Minify/MinifyModule.php:115
2482 +msgid "Delay only these scripts"
2483 +msgstr ""
2484 +
2485 +#: includes/modules/Minify/MinifyModule.php:116
2486 +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 +msgstr ""
2488 +
2489 +#: includes/modules/Minify/MinifyModule.php:117
2490 +msgid "Consent banners and Delay JS"
2491 +msgstr ""
2492 +
2493 +#. translators: %s: comma-separated list of consent plugins, each followed by the word to type in parentheses.
2494 +#: includes/modules/Minify/MinifyModule.php:120
2495 +#, php-format
2496 +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 +msgstr ""
2498 +
2499 +#: includes/modules/Minify/MinifyModule.php:128
2500 +msgid "Smart delay"
2501 +msgstr ""
2502 +
2503 +#: includes/modules/Minify/MinifyModule.php:129
2504 +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 +msgstr ""
2506 +
2507 +#: includes/modules/Minify/MinifyModule.php:137
2508 +msgid "Delay timeout (ms)"
2509 +msgstr ""
2510 +
2511 +#: includes/modules/Minify/MinifyModule.php:139
2512 +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 +msgstr ""
2514 +
2515 +#: includes/modules/Minify/MinifyModule.php:146
2516 +msgid "Combine CSS files"
2517 +msgstr ""
2518 +
2519 +#: includes/modules/Minify/MinifyModule.php:147
2520 +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 +msgstr ""
2522 +
2523 +#: includes/modules/Minify/MinifyModule.php:153
2524 +msgid "Combine JavaScript files"
2525 +msgstr ""
2526 +
2527 +#: includes/modules/Minify/MinifyModule.php:154
2528 +msgid "Joins your site's own scripts into one file. Turn off if a script stops working after you enable it."
2529 +msgstr ""
2530 +
2531 +#: includes/modules/Minify/MinifyModule.php:292
2532 +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 +msgstr ""
2534 +
2535 +#: includes/modules/Minify/MinifyModule.php:293
2536 +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 +msgstr ""
2538 +
2539 +#: includes/modules/Minify/MinifyModule.php:298
2540 +msgid "HTML minification is on but currently paused"
2541 +msgstr ""
2542 +
2543 +#: includes/modules/ObjectCache/ObjectCacheModule.php:34
2544 +msgid "Stores database query results in Redis or Memcached so pages build faster."
2545 +msgstr ""
2546 +
2547 +#: includes/modules/ObjectCache/ObjectCacheModule.php:62
2548 +msgid "Cache server"
2549 +msgstr ""
2550 +
2551 +#: includes/modules/ObjectCache/ObjectCacheModule.php:63
2552 +msgid "The cache server your host provides. Ask your host if you are not sure."
2553 +msgstr ""
2554 +
2555 +#: includes/modules/ObjectCache/ObjectCacheModule.php:69
2556 +msgid "Redis host"
2557 +msgstr ""
2558 +
2559 +#: includes/modules/ObjectCache/ObjectCacheModule.php:70
2560 +msgid "Address of the Redis server. Use 127.0.0.1 when Redis runs on the same server as your site."
2561 +msgstr ""
2562 +
2563 +#: includes/modules/ObjectCache/ObjectCacheModule.php:79
2564 +msgid "Redis port"
2565 +msgstr ""
2566 +
2567 +#: includes/modules/ObjectCache/ObjectCacheModule.php:80
2568 +msgid "The default Redis port is 6379."
2569 +msgstr ""
2570 +
2571 +#: includes/modules/ObjectCache/ObjectCacheModule.php:94
2572 +msgid "Redis username"
2573 +msgstr ""
2574 +
2575 +#: includes/modules/ObjectCache/ObjectCacheModule.php:95
2576 +msgid "Only needed if your host gave you a Redis username along with the password. Leave blank otherwise."
2577 +msgstr ""
2578 +
2579 +#: includes/modules/ObjectCache/ObjectCacheModule.php:104
2580 +msgid "Leave blank if your Redis server has no password."
2581 +msgstr ""
2582 +
2583 +#: includes/modules/ObjectCache/ObjectCacheModule.php:113
2584 +msgid "Redis database"
2585 +msgstr ""
2586 +
2587 +#: includes/modules/ObjectCache/ObjectCacheModule.php:114
2588 +msgid "Database number, 0 to 15. If several sites share one Redis server, give each site its own number."
2589 +msgstr ""
2590 +
2591 +#: includes/modules/ObjectCache/ObjectCacheModule.php:143
2592 +msgid "Memcached host"
2593 +msgstr ""
2594 +
2595 +#: includes/modules/ObjectCache/ObjectCacheModule.php:144
2596 +msgid "Address of the Memcached server. Use 127.0.0.1 when it runs on the same server as your site."
2597 +msgstr ""
2598 +
2599 +#: includes/modules/ObjectCache/ObjectCacheModule.php:166
2600 +msgid "Memcached port"
2601 +msgstr ""
2602 +
2603 +#: includes/modules/ObjectCache/ObjectCacheModule.php:167
2604 +msgid "The default Memcached port is 11211."
2605 +msgstr ""
2606 +
2607 +#: includes/modules/ObjectCache/ObjectCacheModule.php:195
2608 +msgid "Cache key prefix"
2609 +msgstr ""
2610 +
2611 +#: includes/modules/ObjectCache/ObjectCacheModule.php:196
2612 +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 +msgstr ""
2614 +
2615 +#: includes/modules/ObjectCache/ObjectCacheModule.php:206
2616 +msgid "Connection timeout (seconds)"
2617 +msgstr ""
2618 +
2619 +#: includes/modules/ObjectCache/ObjectCacheModule.php:208
2620 +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 +msgstr ""
2622 +
2623 +#: includes/modules/ObjectCache/ObjectCacheModule.php:215
2624 +msgid "Persistent connections"
2625 +msgstr ""
2626 +
2627 +#: includes/modules/ObjectCache/ObjectCacheModule.php:216
2628 +msgid "Keep the connection open between page loads. Turn off only if your cache server reports too many idle connections."
2629 +msgstr ""
2630 +
2631 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1013
2632 +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 +msgstr ""
2634 +
2635 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1016
2636 +msgid "The drop-in is installed but is not storing anything, so this counts as off. Check the connection settings below."
2637 +msgstr ""
2638 +
2639 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1018
2640 +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 +msgstr ""
2642 +
2643 +#: includes/modules/Preloader/PreloaderModule.php:33
2644 +msgid "Crawl Now"
2645 +msgstr ""
2646 +
2647 +#: includes/modules/Preloader/PreloaderModule.php:35
2648 +msgid "Visits your pages ahead of time so visitors get fast cached pages."
2649 +msgstr ""
2650 +
2651 +#: includes/modules/Preloader/PreloaderModule.php:62
2652 +msgid "Your server is blocking the xSpeed cache warmer"
2653 +msgstr ""
2654 +
2655 +#. translators: 1: HTTP status code, 2: the user-agent xSpeed sends.
2656 +#: includes/modules/Preloader/PreloaderModule.php:65
2657 +#, php-format
2658 +msgid "A warm request was refused with HTTP %1$d, which is how a firewall answers when it judges a request by its user-agent. Pages are not being warmed, so the first visitor to each new page waits for an uncached render. Allow the user-agent \"%2$s\" in your server's bad-bot rules — on xCloud this is the 8G firewall — or change it with the xspeed_preloader_user_agent filter. This notice clears itself once a warm gets through."
2659 +msgstr ""
2660 +
2661 +#: includes/modules/Preloader/PreloaderModule.php:79
2662 +msgid "xSpeed visits every page in your sitemap on the schedule below, so each page is cached before a visitor asks for it."
2663 +msgstr ""
2664 +
2665 +#: includes/modules/Preloader/PreloaderModule.php:91
2666 +msgid "Schedule"
2667 +msgstr ""
2668 +
2669 +#: includes/modules/Preloader/PreloaderModule.php:92
2670 +msgid "How often to visit all pages again. Manual means you start it from the dashboard."
2671 +msgstr ""
2672 +
2673 +#: includes/modules/Preloader/PreloaderModule.php:100
2674 +msgid "Pages per run"
2675 +msgstr ""
2676 +
2677 +#: includes/modules/Preloader/PreloaderModule.php:101
2678 +msgid "How many pages are cached on each run. A higher number finishes sooner but puts more load on your server."
2679 +msgstr ""
2680 +
2681 +#: includes/modules/Preloader/PreloaderModule.php:108
2682 +msgid "Sitemap URL (optional)"
2683 +msgstr ""
2684 +
2685 +#: includes/modules/Preloader/PreloaderModule.php:109
2686 +msgid "Use a different sitemap than the WordPress one (/wp-sitemap.xml). Leave blank for the default."
2687 +msgstr ""
2688 +
2689 +#: includes/modules/Preloader/PreloaderModule.php:115
2690 +msgid "Warm new content immediately"
2691 +msgstr ""
2692 +
2693 +#: includes/modules/Preloader/PreloaderModule.php:116
2694 +msgid "Cache a post or page as soon as you publish it, so the first visitor gets the fast cached page."
2695 +msgstr ""
2696 +
2697 +#: includes/modules/Preloader/PreloaderModule.php:122
2698 +msgid "Re-warm after comments"
2699 +msgstr ""
2700 +
2701 +#: includes/modules/Preloader/PreloaderModule.php:123
2702 +msgid "A new comment clears the page from the cache. This caches the page again right away."
2703 +msgstr ""
2704 +
2705 +#: includes/modules/Preloader/PreloaderModule.php:299
737 2706 msgid "Enable the preloader before starting a crawl."
738 2707 msgstr ""
739 2708
740 -#: includes/modules/Score/ScoreModule.php:147
741 -msgid "External scores are turned off. Enable them first — this is the only feature that contacts a third party."
2709 +#: includes/modules/Privacy/PrivacyModule.php:47
2710 +msgid "Privacy & usage data"
742 2711 msgstr ""
743 2712
744 -#: includes/modules/Score/ScoreModule.php:156
2713 +#: includes/modules/Privacy/PrivacyModule.php:49
2714 +msgid "Change the usage data choice you made in the setup wizard."
2715 +msgstr ""
2716 +
2717 +#: includes/modules/Privacy/PrivacyModule.php:59
2718 +msgid "Share usage data"
2719 +msgstr ""
2720 +
2721 +#: includes/modules/Privacy/PrivacyModule.php:60
2722 +msgid "Sends your WordPress and PHP versions, theme, plugins, server type and the features you use, never page content. Turn it off to stop all sending."
2723 +msgstr ""
2724 +
2725 +#: includes/modules/ResourceHints/ResourceHintsModule.php:60
2726 +msgid "Resource Hints"
2727 +msgstr ""
2728 +
2729 +#: includes/modules/ResourceHints/ResourceHintsModule.php:61
2730 +msgid "Hints"
2731 +msgstr ""
2732 +
2733 +#: includes/modules/ResourceHints/ResourceHintsModule.php:63
2734 +msgid "Tells the browser to fetch the main image and fonts early."
2735 +msgstr ""
2736 +
2737 +#: includes/modules/ResourceHints/ResourceHintsModule.php:78
2738 +msgid "Enable resource hints"
2739 +msgstr ""
2740 +
2741 +#: includes/modules/ResourceHints/ResourceHintsModule.php:79
2742 +msgid "Turns on all the hints below. They are safe on every theme, so this is on by default."
2743 +msgstr ""
2744 +
2745 +#: includes/modules/ResourceHints/ResourceHintsModule.php:84
2746 +msgid "Preload the main image"
2747 +msgstr ""
2748 +
2749 +#: includes/modules/ResourceHints/ResourceHintsModule.php:85
2750 +msgid "Finds the largest image at the top of the page and tells the browser to fetch it first. This usually gives the biggest LCP gain."
2751 +msgstr ""
2752 +
2753 +#: includes/modules/ResourceHints/ResourceHintsModule.php:93
2754 +msgid "Images to preload"
2755 +msgstr ""
2756 +
2757 +#: includes/modules/ResourceHints/ResourceHintsModule.php:94
2758 +msgid "How many images at the top of the page to preload. 1 suits most sites; raise it only if the top shows a small gallery."
2759 +msgstr ""
2760 +
2761 +#: includes/modules/ResourceHints/ResourceHintsModule.php:102
2762 +msgid "Excluded from preload"
2763 +msgstr ""
2764 +
2765 +#: includes/modules/ResourceHints/ResourceHintsModule.php:103
2766 +msgid "Images whose tag contains a line here, such as a file name or class, are never picked as the main image. Useful for tracking pixels and spacers."
2767 +msgstr ""
2768 +
2769 +#: includes/modules/ResourceHints/ResourceHintsModule.php:110
2770 +msgid "Always preload these images"
2771 +msgstr ""
2772 +
2773 +#: includes/modules/ResourceHints/ResourceHintsModule.php:111
2774 +msgid "Image URLs to fetch first on every page, such as a hero background set in CSS. Keep it to one or two; only the first three are used."
2775 +msgstr ""
2776 +
2777 +#: includes/modules/ResourceHints/ResourceHintsModule.php:117
2778 +msgid "Connect early to Google Fonts"
2779 +msgstr ""
2780 +
2781 +#: includes/modules/ResourceHints/ResourceHintsModule.php:118
2782 +msgid "When the page uses Google Fonts, the browser connects to Google's servers early, so fonts arrive sooner."
2783 +msgstr ""
2784 +
2785 +#: includes/modules/ResourceHints/ResourceHintsModule.php:125
2786 +msgid "Other domains to connect early"
2787 +msgstr ""
2788 +
2789 +#: includes/modules/ResourceHints/ResourceHintsModule.php:126
2790 +msgid "One address per line, such as https://cdn.example.com. Use for a CDN or other domain that serves files at the top of the page."
2791 +msgstr ""
2792 +
2793 +#: includes/modules/Score/ScoreModule.php:58
2794 +msgid "Speed Test"
2795 +msgstr ""
2796 +
2797 +#: includes/modules/Score/ScoreModule.php:64
2798 +msgid "Run a PageSpeed Insights or GTmetrix test and keep a history of the scores."
2799 +msgstr ""
2800 +
2801 +#: includes/modules/Score/ScoreModule.php:78
2802 +msgid "Allow speed tests"
2803 +msgstr ""
2804 +
2805 +#: includes/modules/Score/ScoreModule.php:84
2806 +msgid "Turns on the first time you run a speed test. Switch it off and no feature, not even an optimize run, contacts a test provider."
2807 +msgstr ""
2808 +
2809 +#: includes/modules/Score/ScoreModule.php:99
2810 +msgid "Test provider"
2811 +msgstr ""
2812 +
2813 +#: includes/modules/Score/ScoreModule.php:100
2814 +msgid "PageSpeed Insights works without an API key. GTmetrix needs one."
2815 +msgstr ""
2816 +
2817 +#: includes/modules/Score/ScoreModule.php:105
2818 +msgid "PageSpeed API key (optional)"
2819 +msgstr ""
2820 +
2821 +#: includes/modules/Score/ScoreModule.php:106
2822 +msgid "Only needed if Google starts refusing tests without a key. You can get a free key at cloud.google.com."
2823 +msgstr ""
2824 +
2825 +#: includes/modules/Score/ScoreModule.php:119
2826 +msgid "GTmetrix API key"
2827 +msgstr ""
2828 +
2829 +#: includes/modules/Score/ScoreModule.php:120
2830 +msgid "GTmetrix does not run tests without a key. Find it in your GTmetrix account settings."
2831 +msgstr ""
2832 +
2833 +#: includes/modules/Score/ScoreModule.php:129
2834 +msgid "URL to test"
2835 +msgstr ""
2836 +
2837 +#: includes/modules/Score/ScoreModule.php:130
2838 +msgid "Leave empty to test your home page."
2839 +msgstr ""
2840 +
2841 +#: includes/modules/Score/ScoreModule.php:136
2842 +msgid "Device"
2843 +msgstr ""
2844 +
2845 +#: includes/modules/Score/ScoreModule.php:137
2846 +msgid "Test as a phone or a desktop visitor. Google ranks sites on the mobile result."
2847 +msgstr ""
2848 +
2849 +#: includes/modules/Score/ScoreModule.php:336
2850 +#: includes/modules/Score/ScoreModule.php:382
2851 +msgid "Hub-run speed tests are not enabled on this site."
2852 +msgstr ""
2853 +
2854 +#: includes/modules/Score/ScoreModule.php:445
745 2855 msgid "No URL to test."
746 2856 msgstr ""
747 2857
748 -#: src/onboarding/steps/Connect.tsx:146
2858 +#: includes/modules/Score/ScoreModule.php:542
2859 +msgid "xSpeed Hub accepted the test but returned no run id. Please try again."
2860 +msgstr ""
2861 +
2862 +#: includes/modules/Score/ScoreModule.php:621
2863 +msgid "The audit did not produce a result."
2864 +msgstr ""
2865 +
2866 +#. translators: %s: module slug.
2867 +#: includes/modules/Settings/SettingsModule.php:324
2868 +#, php-format
2869 +msgid "Refused a CLI settings write to the Pro module \"%s\" — no valid license."
2870 +msgstr ""
2871 +
2872 +#: includes/modules/Support/SupportModule.php:28
2873 +msgid "Help & Support"
2874 +msgstr ""
2875 +
2876 +#: includes/modules/Support/SupportModule.php:30
2877 +msgid "Open a support ticket with a one-click system snapshot already attached."
2878 +msgstr ""
2879 +
2880 +#: includes/modules/Support/SupportModule.php:41
2881 +msgid "Support URL"
2882 +msgstr ""
2883 +
2884 +#: includes/modules/Support/SupportModule.php:42
2885 +msgid "The page the \"Open ticket\" button opens. Leave the default to reach xSpeed support."
2886 +msgstr ""
2887 +
2888 +#: includes/modules/TurboRender/TurboRenderModule.php:89
2889 +msgid "Turbo Render"
2890 +msgstr ""
2891 +
2892 +#: includes/modules/TurboRender/TurboRenderModule.php:91
2893 +msgid "Shows the top of each page first and the rest as visitors scroll."
2894 +msgstr ""
2895 +
2896 +#: includes/modules/TurboRender/TurboRenderModule.php:101
2897 +msgid "Render as visitors scroll"
2898 +msgstr ""
2899 +
2900 +#: includes/modules/TurboRender/TurboRenderModule.php:102
2901 +msgid "The browser draws what visitors see first and draws lower sections just before they scroll to them. Your content does not change."
2902 +msgstr ""
2903 +
2904 +#: includes/modules/TurboRender/TurboRenderModule.php:109
2905 +msgid "Sections to render immediately"
2906 +msgstr ""
2907 +
2908 +#: includes/modules/TurboRender/TurboRenderModule.php:110
2909 +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 +msgstr ""
2911 +
2912 +#: includes/modules/TurboRender/TurboRenderModule.php:116
2913 +msgid "Section classes"
2914 +msgstr ""
2915 +
2916 +#: includes/modules/TurboRender/TurboRenderModule.php:117
2917 +msgid "CSS classes that mark a section. The defaults cover the main page builders, and other themes are detected on their own."
2918 +msgstr ""
2919 +
2920 +#: includes/modules/TurboRender/TurboRenderModule.php:124
2921 +msgid "Excluded classes"
2922 +msgstr ""
2923 +
2924 +#: includes/modules/TurboRender/TurboRenderModule.php:125
2925 +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 +msgstr ""
2927 +
2928 +#: xspeed.php:220
2929 +msgid "is missing files and could not start, so no new pages are being cached. Pages already in the cache are still being served, and while the plugin is in this state nothing clears them automatically. Deactivating xSpeed empties the cache; reinstalling the plugin restores it. Deactivating alone will not repair the installation."
2930 +msgstr ""
2931 +
2932 +#: xspeed.php:300
2933 +msgid "xSpeed Cache could not start."
2934 +msgstr ""
2935 +
2936 +#: xspeed.php:301
2937 +msgid "Some of its files are missing, so it stopped rather than take the site down with it. No new pages are being cached, but pages already in the cache are still being served and nothing clears them while the plugin is in this state. Re-install or re-upload the plugin to restore it, then purge the cache."
2938 +msgstr ""
2939 +
2940 +#. Source: src/onboarding/steps/Connect.tsx:154
2941 +#: assets/admin.js
749 2942 msgid "“clear the cache on my store,” “warm up the homepage,” “how fast is my blog?”"
750 2943 msgstr ""
751 2944
752 -#: src/components/cache/ImpactHero.tsx:76
2945 +#. Source: src/components/score/ScorePanel.tsx:96
2946 +#. Source: src/components/score/SpeedTestCard.tsx:135
2947 +#: assets/admin.js
2948 +msgid "%1$d of %2$d left"
2949 +msgstr ""
2950 +
2951 +#. Source: src/components/dropinNotice.ts:34
2952 +#: assets/admin.js
2953 +msgid "%s currently owns the page-cache file. xSpeed will replace it and serve the cached pages itself."
2954 +msgstr ""
2955 +
2956 +#. Source: src/components/purgeOutcome.ts:45
2957 +#: assets/admin.js
2958 +msgid "%s: %s"
2959 +msgstr ""
2960 +
2961 +#. Source: src/components/health/HealthCard.tsx:172
2962 +#: assets/admin.js
2963 +msgid "24-hour cache request volume"
2964 +msgstr ""
2965 +
2966 +#. Source: src/components/cache/ImpactHero.tsx:76
2967 +#: assets/admin.js
753 2968 msgid "30 days"
754 2969 msgstr ""
755 2970
756 -#: src/components/cache/ImpactHero.tsx:75
2971 +#. Source: src/components/cache/ImpactHero.tsx:75
2972 +#: assets/admin.js
757 2973 msgid "7 days"
758 2974 msgstr ""
759 2975
760 -#: src/upsell/LockedPanel.tsx:117
761 -#: src/upsell/LockedSection.tsx:99
762 -#: src/upsell/ProDemo.tsx:105
2976 +#. Source: src/components/score/ScanCard.tsx:197
2977 +#: assets/admin.js
2978 +msgid "A full graded report: Core Web Vitals, caching, assets and platform."
2979 +msgstr ""
2980 +
2981 +#. Source: src/components/SecretField.tsx:95
2982 +#: assets/admin.js
2983 +msgid "A key is saved. Type to replace it; use ✕ to remove it."
2984 +msgstr ""
2985 +
2986 +#. Source: src/components/cache/CacheHero.tsx:245
2987 +#: assets/admin.js
2988 +msgid "Absorbed"
2989 +msgstr ""
2990 +
2991 +#. Source: src/components/CommandPalette.tsx:236
2992 +#: assets/admin.js
2993 +msgid "Action"
2994 +msgstr ""
2995 +
2996 +#. Source: src/components/Sidebar.tsx:424
2997 +#. Source: src/components/Sidebar.tsx:445
2998 +#. Source: src/upsell/ProOverview.tsx:73
2999 +#: assets/admin.js
3000 +msgid "Activate License"
3001 +msgstr ""
3002 +
3003 +#. Source: src/upsell/LockedPanel.tsx:104
3004 +#. Source: src/upsell/LockedSection.tsx:88
3005 +#. Source: src/upsell/ProDemo.tsx:92
3006 +#: assets/admin.js
763 3007 msgid "Activate your license"
764 3008 msgstr ""
765 3009
766 -#: src/upsell/LockedPanel.tsx:164
767 -#: src/upsell/LockedPanel.tsx:43
3010 +#. Source: src/upsell/LockedPanel.tsx:151
3011 +#. Source: src/upsell/LockedPanel.tsx:40
3012 +#: assets/admin.js
768 3013 msgid "Activating your license unlocks this module + every other locked row in the sidebar. Your current settings stay unchanged."
769 3014 msgstr ""
770 3015
771 -#: src/onboarding/steps/Connect.tsx:225
3016 +#. Source: src/onboarding/steps/Connect.tsx:233
3017 +#: assets/admin.js
772 3018 msgid "Add site form"
773 3019 msgstr ""
774 3020
775 -#: src/components/cache/StatDrilldown.tsx:183
3021 +#. Source: src/components/cache/StatDrilldown.tsx:192
3022 +#: assets/admin.js
776 3023 msgid "Address not recorded"
777 3024 msgstr ""
778 3025
779 -#: src/components/cache/StatDrilldown.tsx:154
3026 +#. Source: src/components/score/ScorePanel.tsx:660
3027 +#: assets/admin.js
3028 +msgid "After"
3029 +msgstr ""
3030 +
3031 +#. Source: src/components/cache/StatDrilldown.tsx:163
3032 +#: assets/admin.js
780 3033 msgid "Age"
781 3034 msgstr ""
782 3035
783 -#: src/components/score/ScorePanel.tsx:102
784 -#: src/components/score/ScorePanel.tsx:103
785 -#: src/components/score/ScorePanel.tsx:104
3036 +#. Source: src/components/score/ScorePanel.tsx:202
3037 +#. Source: src/components/score/ScorePanel.tsx:203
3038 +#. Source: src/components/score/ScorePanel.tsx:204
3039 +#: assets/admin.js
786 3040 msgid "ago"
787 3041 msgstr ""
788 3042
789 -#: src/components/overview/Recommendations.tsx:151
3043 +#. Source: src/components/overview/AiControlCard.tsx:237
3044 +#: assets/admin.js
3045 +msgid "AI connection active"
3046 +msgstr ""
3047 +
3048 +#. Source: src/components/TopBar.tsx:175
3049 +#: assets/admin.js
3050 +msgid "Already empty"
3051 +msgstr ""
3052 +
3053 +#. Source: src/components/purgeOutcome.ts:57
3054 +#: assets/admin.js
3055 +msgid "Also cleared: %s."
3056 +msgstr ""
3057 +
3058 +#. Source: src/components/overview/Recommendations.tsx:184
3059 +#: assets/admin.js
790 3060 msgid "Also worth a look"
791 3061 msgstr ""
792 3062
793 -#: src/onboarding/steps/Connect.tsx:148
3063 +#. Source: src/components/cache/CacheHero.tsx:231
3064 +#: assets/admin.js
3065 +msgid "An edge cache (Cloudflare) is in front, so this hit ratio is origin-layer only — hits served at the edge never reach the origin and aren’t counted here."
3066 +msgstr ""
3067 +
3068 +#. Source: src/components/overview/McpSessionDemo.tsx:216
3069 +#: assets/admin.js
3070 +msgid "Analyzing site…"
3071 +msgstr ""
3072 +
3073 +#. Source: src/onboarding/steps/Connect.tsx:156
3074 +#: assets/admin.js
794 3075 msgid "and it happens."
795 3076 msgstr ""
796 3077
797 -#: src/components/cache/NextBestAction.tsx:122
798 -#: src/components/overview/Recommendations.tsx:79
3078 +#. Source: src/components/dropinNotice.ts:43
3079 +#: assets/admin.js
3080 +msgid "Another page-cache file is already in wp-content. xSpeed will replace it with its own to serve cached pages."
3081 +msgstr ""
3082 +
3083 +#. Source: src/components/overview/HeroStatus.tsx:44
3084 +#: assets/admin.js
3085 +msgid "Another plugin owns the page cache on this site, so xSpeed is serving nothing."
3086 +msgstr ""
3087 +
3088 +#. Source: src/components/cache/NextBestAction.tsx:122
3089 +#. Source: src/components/overview/Recommendations.tsx:96
3090 +#: assets/admin.js
799 3091 msgid "Applied"
800 3092 msgstr ""
801 3093
802 -#: src/components/FieldSuggestionStrip.tsx:125
3094 +#. Source: src/components/overview/McpSessionDemo.tsx:211
3095 +#: assets/admin.js
3096 +msgid "Applied 3 optimizations"
3097 +msgstr ""
3098 +
3099 +#. Source: src/components/FieldSuggestionStrip.tsx:125
3100 +#: assets/admin.js
803 3101 msgid "Apply"
804 3102 msgstr ""
805 3103
806 -#: src/upsell/ProAudit.tsx:46
3104 +#. Source: src/components/score/ScanCard.tsx:84
3105 +#: assets/admin.js
3106 +msgid "Assets"
3107 +msgstr ""
3108 +
3109 +#. Source: src/upsell/ProAudit.tsx:46
3110 +#: assets/admin.js
807 3111 msgid "Audit failed"
808 3112 msgstr ""
809 3113
810 -#: src/components/cache/CacheBenchmark.tsx:36
3114 +#. Source: src/components/cache/StatDrilldown.tsx:325
3115 +#: assets/admin.js
3116 +msgid "Automatic cleanup has not run yet — first sweep in %s."
3117 +msgstr ""
3118 +
3119 +#. Source: src/components/cache/StatDrilldown.tsx:317
3120 +#: assets/admin.js
3121 +msgid "Automatic cleanup ran %1$s ago — %2$d file(s) removed, %3$d in total."
3122 +msgstr ""
3123 +
3124 +#. Source: src/components/overview/MetricGrid.tsx:57
3125 +#: assets/admin.js
3126 +msgid "Avg saved"
3127 +msgstr ""
3128 +
3129 +#. Source: src/components/score/ScorePanel.tsx:659
3130 +#: assets/admin.js
3131 +msgid "Before"
3132 +msgstr ""
3133 +
3134 +#. Source: src/components/cache/CacheBenchmark.tsx:36
3135 +#: assets/admin.js
811 3136 msgid "Benchmark failed"
812 3137 msgstr ""
813 3138
814 -#: src/components/cache/TrendCharts.tsx:258
3139 +#. Source: src/components/cache/TrendCharts.tsx:263
3140 +#: assets/admin.js
815 3141 msgid "Benchmark trend"
816 3142 msgstr ""
817 3143
818 -#: src/components/cache/TrendCharts.tsx:134
3144 +#. Source: src/components/cache/TrendCharts.tsx:139
3145 +#: assets/admin.js
819 3146 msgid "Benchmark: cached vs uncached (ms)"
820 3147 msgstr ""
821 3148
822 -#: src/components/overview/Recommendations.tsx:191
823 -msgid "Book a free performance review and our engineers will hand-configure xSpeed Cache for your site, applying proven best practices for maximum speed, stability, and compatibility."
3149 +#. Source: src/components/overview/Recommendations.tsx:233
3150 +#: assets/admin.js
3151 +msgid "Book"
824 3152 msgstr ""
825 3153
826 -#: src/components/overview/Recommendations.tsx:200
827 -msgid "Book expert setup"
3154 +#. Source: src/components/overview/Recommendations.tsx:224
3155 +#: assets/admin.js
3156 +msgid "Book a free setup review with our team."
828 3157 msgstr ""
829 3158
830 -#: src/components/overview/FeatureMap.tsx:73
3159 +#. Source: src/components/cache/CacheHero.tsx:249
3160 +#: assets/admin.js
3161 +msgid "bot, 404 and cache-warming requests in 24h — excluded from the hit ratio."
3162 +msgstr ""
3163 +
3164 +#. Source: src/components/TopBar.tsx:81
3165 +#: assets/admin.js
3166 +msgid "Breadcrumb"
3167 +msgstr ""
3168 +
3169 +#. Source: src/components/overview/FeatureMap.tsx:104
3170 +#: assets/admin.js
831 3171 msgid "Browse all"
832 3172 msgstr ""
833 3173
834 -#: src/components/overview/HeroStatus.tsx:38
835 -msgid "bypassing PHP"
3174 +#. Source: src/components/sidebarGroups.ts:79
3175 +#: assets/admin.js
3176 +msgid "Cache"
836 3177 msgstr ""
837 3178
838 -#: src/components/overview/HeroStatus.tsx:77
839 -msgid "Cache active"
3179 +#. Source: src/components/purgeOutcome.ts:84
3180 +#: assets/admin.js
3181 +msgid "Cache cleared: %d file (%s)."
3182 +msgid_plural "Cache cleared: %d files (%s)."
3183 +msgstr[0] ""
3184 +msgstr[1] ""
3185 +
3186 +#. Source: src/components/purgeOutcome.ts:91
3187 +#: assets/admin.js
3188 +msgid "Cache cleared: %d file."
3189 +msgid_plural "Cache cleared: %d files."
3190 +msgstr[0] ""
3191 +msgstr[1] ""
3192 +
3193 +#. Source: src/components/purgeOutcome.ts:80
3194 +#: assets/admin.js
3195 +msgid "Cache cleared."
840 3196 msgstr ""
841 3197
842 -#: src/components/cache/CacheBenchmark.tsx:49
3198 +#. Source: src/App.tsx:331
3199 +#: assets/admin.js
3200 +msgid "Cache could not be enabled."
3201 +msgstr ""
3202 +
3203 +#. Source: src/components/health/HealthHero.tsx:28
3204 +#: assets/admin.js
3205 +msgid "Cache coverage"
3206 +msgstr ""
3207 +
3208 +#. Source: src/App.tsx:343
3209 +#: assets/admin.js
3210 +msgid "Cache disabled"
3211 +msgstr ""
3212 +
3213 +#. Source: src/App.tsx:343
3214 +#: assets/admin.js
3215 +msgid "Cache enabled"
3216 +msgstr ""
3217 +
3218 +#. Source: src/App.tsx:337
3219 +#: assets/admin.js
3220 +msgid "Cache enabled, but nothing will be cached until WP_CACHE is added to wp-config.php — copy the line from Health."
3221 +msgstr ""
3222 +
3223 +#. Source: src/components/cache/CacheBenchmark.tsx:49
3224 +#: assets/admin.js
843 3225 msgid "Cache impact benchmark"
844 3226 msgstr ""
845 3227
846 -#: src/components/overview/HeroStatus.tsx:77
3228 +#. Source: src/components/overview/HeroStatus.tsx:77
3229 +#: assets/admin.js
847 3230 msgid "Cache inactive"
848 3231 msgstr ""
849 3232
850 -#: src/components/cache/CacheBenchmark.tsx:99
3233 +#. Source: src/components/cache/CacheBenchmark.tsx:99
3234 +#: assets/admin.js
851 3235 msgid "Cache is"
852 3236 msgstr ""
853 3237
854 -#: src/components/cache/CacheBenchmark.tsx:112
3238 +#. Source: src/components/cache/CacheBenchmark.tsx:112
3239 +#: assets/admin.js
855 3240 msgid "Cache is disabled — both runs hit the same uncached path. Enable Cache to see a real difference."
856 3241 msgstr ""
857 3242
858 -#: src/components/overview/MetricGrid.tsx:23
3243 +#. Source: src/components/overview/HeroStatus.tsx:77
3244 +#: assets/admin.js
3245 +msgid "Cache on, but not serving"
3246 +msgstr ""
3247 +
3248 +#. Source: src/components/overview/McpSessionDemo.tsx:228
3249 +#: assets/admin.js
3250 +msgid "Cache optimized"
3251 +msgstr ""
3252 +
3253 +#. Source: src/components/purgeOutcome.ts:53
3254 +#: assets/admin.js
3255 +msgid "Cache partly cleared."
3256 +msgstr ""
3257 +
3258 +#. Source: src/components/purgeOutcome.ts:29
3259 +#: assets/admin.js
3260 +msgid "Cache purged"
3261 +msgstr ""
3262 +
3263 +#. Source: src/components/health/HealthHero.tsx:30
3264 +#. Source: src/components/overview/MetricGrid.tsx:56
3265 +#: assets/admin.js
859 3266 msgid "Cache size"
860 3267 msgstr ""
861 3268
862 -#: src/components/overview/HeroStatus.tsx:69
3269 +#. Source: src/components/overview/HeroStatus.tsx:49
3270 +#: assets/admin.js
863 3271 msgid "Cache status"
864 3272 msgstr ""
865 3273
866 -#: src/components/cache/TrendCharts.tsx:270
3274 +#. Source: src/components/overview/AiControlCard.tsx:67
3275 +#: assets/admin.js
3276 +msgid "Cache, compression & more"
3277 +msgstr ""
3278 +
3279 +#. Source: src/components/cache/TrendCharts.tsx:275
3280 +#: assets/admin.js
867 3281 msgid "cached"
868 3282 msgstr ""
869 3283
870 -#: src/components/cache/StatDrilldown.tsx:131
871 -#: src/components/overview/MetricGrid.tsx:18
3284 +#. Source: src/components/cache/StatDrilldown.tsx:140
3285 +#. Source: src/components/health/HealthHero.tsx:29
3286 +#. Source: src/components/overview/MetricGrid.tsx:55
3287 +#: assets/admin.js
872 3288 msgid "Cached pages"
873 3289 msgstr ""
874 3290
875 -#: src/components/cache/ImpactHero.tsx:90
3291 +#. Source: src/components/cache/ImpactHero.tsx:90
3292 +#: assets/admin.js
876 3293 msgid "cached pages in 24h — saving your visitors"
877 3294 msgstr ""
878 3295
879 -#: src/components/SettingsSearch.tsx:251
880 -msgid "Clear search"
3296 +#. Source: src/components/CacheSwitch.tsx:180
3297 +#: assets/admin.js
3298 +msgid "Caching"
881 3299 msgstr ""
882 3300
883 -#: src/components/cache/CacheBenchmark.tsx:126
3301 +#. Source: src/components/CacheSwitch.tsx:174
3302 +#: assets/admin.js
3303 +msgid "Caching — loading"
3304 +msgstr ""
3305 +
3306 +#. Source: src/components/CacheSwitch.tsx:261
3307 +#. Source: src/components/cache/CacheHero.tsx:177
3308 +#: assets/admin.js
3309 +msgid "Cancel"
3310 +msgstr ""
3311 +
3312 +#. Source: src/components/sidebarGroups.ts:95
3313 +#: assets/admin.js
3314 +msgid "CDN and Cloudflare edge delivery."
3315 +msgstr ""
3316 +
3317 +#. Source: src/components/score/ScorePanel.tsx:661
3318 +#: assets/admin.js
3319 +msgid "Change"
3320 +msgstr ""
3321 +
3322 +#. Source: src/components/score/ScorePanel.tsx:190
3323 +#: assets/admin.js
3324 +msgid "Change across the runs shown"
3325 +msgstr ""
3326 +
3327 +#. Source: src/components/overview/AiControlCard.tsx:240
3328 +#: assets/admin.js
3329 +msgid "Checking your AI connection…"
3330 +msgstr ""
3331 +
3332 +#. Source: src/components/overview/ScoreCard.tsx:195
3333 +#: assets/admin.js
3334 +msgid "Checking your score"
3335 +msgstr ""
3336 +
3337 +#. Source: src/components/database/DatabaseCleanerPanel.tsx:297
3338 +#: assets/admin.js
3339 +msgid "Cleaning"
3340 +msgstr ""
3341 +
3342 +#. Source: src/components/score/ScorePanel.tsx:652
3343 +#: assets/admin.js
3344 +msgid "Clear"
3345 +msgstr ""
3346 +
3347 +#. Source: src/components/TopBar.tsx:173
3348 +#: assets/admin.js
3349 +msgid "Cleared"
3350 +msgstr ""
3351 +
3352 +#. Source: src/components/purgeOutcome.ts:62
3353 +#: assets/admin.js
3354 +msgid "Cleared: %s."
3355 +msgstr ""
3356 +
3357 +#. Source: src/components/cache/CacheBenchmark.tsx:126
3358 +#: assets/admin.js
884 3359 msgid "Click \"Run benchmark\" to compare load times."
885 3360 msgstr ""
886 3361
887 -#: src/components/Sidebar.tsx:192
888 -msgid "Cmd/Ctrl + K"
3362 +#. Source: src/components/Sidebar.tsx:219
3363 +#. Source: src/components/Sidebar.tsx:266
3364 +#: assets/admin.js
3365 +msgid "Close navigation"
889 3366 msgstr ""
890 3367
891 -#: src/components/Sidebar.tsx:497
892 -msgid "Collapse"
3368 +#. Source: src/components/Sidebar.tsx:284
3369 +#. Source: src/components/Sidebar.tsx:289
3370 +#: assets/admin.js
3371 +msgid "Collapse sidebar"
893 3372 msgstr ""
894 3373
895 -#: src/components/Sidebar.tsx:482
896 -#: src/components/Sidebar.tsx:488
897 -#: src/components/Sidebar.tsx:489
898 -msgid "Collapse sidebar"
3374 +#. Source: src/components/CommandPalette.tsx:172
3375 +#: assets/admin.js
3376 +msgid "Command palette"
899 3377 msgstr ""
900 3378
901 -#: src/upsell/LockedPanel.tsx:138
3379 +#. Source: src/components/score/ScorePanel.tsx:724
3380 +#: assets/admin.js
3381 +msgid "Compare"
3382 +msgstr ""
3383 +
3384 +#. Source: src/upsell/LockedPanel.tsx:125
3385 +#: assets/admin.js
902 3386 msgid "Compare plans"
903 3387 msgstr ""
904 3388
905 -#: src/components/cache/CacheBenchmark.tsx:52
3389 +#. Source: src/components/score/ScorePanel.tsx:754
3390 +#: assets/admin.js
3391 +msgid "Compare this run"
3392 +msgstr ""
3393 +
3394 +#. Source: src/components/cache/CacheBenchmark.tsx:52
3395 +#: assets/admin.js
906 3396 msgid "Compare your homepage with and without cache."
907 3397 msgstr ""
908 3398
909 -#: src/onboarding/steps/Connect.tsx:116
3399 +#. Source: src/components/overview/McpSessionDemo.tsx:229
3400 +#: assets/admin.js
3401 +msgid "Compression enabled"
3402 +msgstr ""
3403 +
3404 +#. Source: src/components/score/ConnectHubModal.tsx:151
3405 +#: assets/admin.js
3406 +msgid "Connect"
3407 +msgstr ""
3408 +
3409 +#. Source: src/components/sidebarGroups.ts:120
3410 +#: assets/admin.js
3411 +msgid "Connect an AI agent to this site, and control what AI features may use."
3412 +msgstr ""
3413 +
3414 +#. Source: src/components/TopBar.tsx:138
3415 +#: assets/admin.js
3416 +msgid "Connect Hub"
3417 +msgstr ""
3418 +
3419 +#. Source: src/components/score/ConnectHubModal.tsx:113
3420 +#: assets/admin.js
3421 +msgid "Connect this site to xSpeed Hub to run GTmetrix tests from here."
3422 +msgstr ""
3423 +
3424 +#. Source: src/onboarding/steps/Connect.tsx:124
3425 +#: assets/admin.js
910 3426 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."
911 3427 msgstr ""
912 3428
913 -#: src/components/overview/HubCard.tsx:126
3429 +#. Source: src/components/overview/HubCard.tsx:126
3430 +#: assets/admin.js
914 3431 msgid "Connect to control caching remotely, drive it from AI agents, and manage all your sites in one place."
915 3432 msgstr ""
916 3433
917 -#: src/components/overview/HubCard.tsx:133
918 -#: src/components/overview/HubCard.tsx:140
3434 +#. Source: src/components/overview/HubCard.tsx:133
3435 +#. Source: src/components/overview/HubCard.tsx:140
3436 +#: assets/admin.js
919 3437 msgid "Connect to Hub"
920 3438 msgstr ""
921 3439
922 -#: src/onboarding/steps/Connect.tsx:187
3440 +#. Source: src/onboarding/steps/Connect.tsx:195
3441 +#: assets/admin.js
923 3442 msgid "Connect to xSpeed Hub"
924 3443 msgstr ""
925 3444
926 -#: src/components/overview/HubCard.tsx:104
3445 +#. Source: src/components/overview/AiControlCard.tsx:325
3446 +#: assets/admin.js
3447 +msgid "Connect with MCP"
3448 +msgstr ""
3449 +
3450 +#. Source: src/components/overview/AiControlCard.tsx:291
3451 +#: assets/admin.js
3452 +msgid "Connect your AI agent through MCP — then just ask it to analyze and optimize your site."
3453 +msgstr ""
3454 +
3455 +#. Source: src/components/overview/HubCard.tsx:104
3456 +#: assets/admin.js
927 3457 msgid "Connected"
928 3458 msgstr ""
929 3459
930 -#: src/components/overview/HubCard.tsx:113
3460 +#. Source: src/components/score/ConnectHubModal.tsx:105
3461 +#: assets/admin.js
3462 +msgid "Connected — starting your test…"
3463 +msgstr ""
3464 +
3465 +#. Source: src/components/overview/HubCard.tsx:113
3466 +#: assets/admin.js
931 3467 msgid "Connected as"
932 3468 msgstr ""
933 3469
934 -#: src/onboarding/steps/Connect.tsx:60
3470 +#. Source: src/onboarding/steps/Connect.tsx:68
3471 +#: assets/admin.js
935 3472 msgid "Connected as %s. Your caching is ready to manage from anywhere."
936 3473 msgstr ""
937 3474
938 -#: src/onboarding/steps/Connect.tsx:57
3475 +#. Source: src/onboarding/steps/Connect.tsx:65
3476 +#: assets/admin.js
939 3477 msgid "Connected to xSpeed Hub"
940 3478 msgstr ""
941 3479
942 -#: src/components/overview/HubCard.tsx:113
3480 +#. Source: src/components/score/ScanCard.tsx:233
3481 +#: assets/admin.js
3482 +msgid "Connected to xSpeed Hub — this report stays unlisted, not published under your domain."
3483 +msgstr ""
3484 +
3485 +#. Source: src/components/RewriteAlert.tsx:102
3486 +#: assets/admin.js
3487 +msgid "Containerized nginx detected — paste into your container config"
3488 +msgstr ""
3489 +
3490 +#. Source: src/components/overview/AiControlCard.tsx:286
3491 +#: assets/admin.js
3492 +msgid "Control and optimize your site with AI"
3493 +msgstr ""
3494 +
3495 +#. Source: src/components/overview/HubCard.tsx:113
3496 +#: assets/admin.js
943 3497 msgid "Control caching remotely and from AI agents."
944 3498 msgstr ""
945 3499
946 -#: src/components/overview/HubCard.tsx:114
3500 +#. Source: src/components/overview/HubCard.tsx:114
3501 +#: assets/admin.js
947 3502 msgid "Control caching remotely, drive it from AI agents, and manage your sites in one place."
948 3503 msgstr ""
949 3504
950 -#: src/components/overview/Recommendations.tsx:81
3505 +#. Source: src/components/overview/AiControlCard.tsx:237
3506 +#: assets/admin.js
3507 +msgid "Control xSpeed with AI"
3508 +msgstr ""
3509 +
3510 +#. Source: src/components/score/ScanCard.tsx:80
3511 +#: assets/admin.js
3512 +msgid "Core Web Vitals"
3513 +msgstr ""
3514 +
3515 +#. Source: src/components/overview/McpSessionDemo.tsx:230
3516 +#: assets/admin.js
3517 +msgid "Core Web Vitals checked"
3518 +msgstr ""
3519 +
3520 +#. Source: src/components/overview/Recommendations.tsx:98
3521 +#: assets/admin.js
951 3522 msgid "Could not apply that fix"
952 3523 msgstr ""
953 3524
954 -#: src/components/cache/NextBestAction.tsx:68
3525 +#. Source: src/components/cache/NextBestAction.tsx:68
3526 +#: assets/admin.js
955 3527 msgid "Could not apply the fix."
956 3528 msgstr ""
957 3529
958 -#: src/components/score/ScorePanel.tsx:142
3530 +#. Source: src/components/score/ScorePanel.tsx:283
3531 +#: assets/admin.js
959 3532 msgid "Could not check the test status."
960 3533 msgstr ""
961 3534
962 -#: src/components/Sidebar.tsx:477
963 -msgid "Dark Mode"
3535 +#. Source: src/components/sidebarGroups.ts:109
3536 +#: assets/admin.js
3537 +msgid "Database cleanup, migration and logs."
964 3538 msgstr ""
965 3539
966 -#: src/components/overview/OverviewFooter.tsx:24
3540 +#. Source: src/components/DefinedInConfig.tsx:71
3541 +#: assets/admin.js
3542 +msgid "Defined in wp-config.php as"
3543 +msgstr ""
3544 +
3545 +#. Source: src/components/overview/ScoreCard.tsx:185
3546 +#: assets/admin.js
3547 +msgid "desktop"
3548 +msgstr ""
3549 +
3550 +#. Source: src/components/overview/ScoreCard.tsx:90
3551 +#. Source: src/components/score/ScanCard.tsx:293
3552 +#: assets/admin.js
3553 +msgid "Desktop"
3554 +msgstr ""
3555 +
3556 +#. Source: src/components/FieldSuggestionStrip.tsx:132
3557 +#: assets/admin.js
3558 +msgid "Dismiss"
3559 +msgstr ""
3560 +
3561 +#. Source: src/components/MobileSeparateAlert.tsx:72
3562 +#. Source: src/components/RewriteAlert.tsx:116
3563 +#: assets/admin.js
3564 +msgid "Dismiss banner"
3565 +msgstr ""
3566 +
3567 +#. Source: src/components/overview/OverviewFooter.tsx:24
3568 +#: assets/admin.js
967 3569 msgid "Documentation"
968 3570 msgstr ""
969 3571
970 -#: src/components/overview/HeroStatus.tsx:98
971 -msgid "Enable the cache to preload pages."
3572 +#. Source: src/components/cache/NextBestAction.tsx:85
3573 +#: assets/admin.js
3574 +msgid "Every deterministic check passes — your configuration looks healthy."
972 3575 msgstr ""
973 3576
974 -#: src/components/cache/NextBestAction.tsx:85
975 -msgid "Every deterministic check passes — your configuration looks healthy."
3577 +#. Source: src/upsell/ProOverview.tsx:51
3578 +#: assets/admin.js
3579 +msgid "Every feature below is unlocked and available from its own page. This screen stays as a reference for what Pro adds — manage your license from the License page."
976 3580 msgstr ""
977 3581
978 -#: src/components/Sidebar.tsx:482
979 -#: src/components/Sidebar.tsx:488
980 -#: src/components/Sidebar.tsx:489
3582 +#. Source: src/components/CacheSwitch.tsx:232
3583 +#: assets/admin.js
3584 +msgid "Every page will be served uncached until you turn it back on."
3585 +msgstr ""
3586 +
3587 +#. Source: src/upsell/ProOverview.tsx:47
3588 +#: assets/admin.js
3589 +msgid "Everything in Free, plus the heavy lifting."
3590 +msgstr ""
3591 +
3592 +#. Source: src/components/overview/McpSessionDemo.tsx:221
3593 +#: assets/admin.js
3594 +msgid "Example session"
3595 +msgstr ""
3596 +
3597 +#. Source: src/components/Sidebar.tsx:284
3598 +#. Source: src/components/Sidebar.tsx:289
3599 +#: assets/admin.js
981 3600 msgid "Expand sidebar"
982 3601 msgstr ""
983 3602
984 -#: src/components/score/ScorePanel.tsx:185
985 -msgid "External score"
3603 +#. Source: src/components/mcp/McpActivity.tsx:181
3604 +#: assets/admin.js
3605 +msgid "failed"
986 3606 msgstr ""
987 3607
988 -#: src/components/score/ScorePanel.tsx:209
989 -msgid "External scores are off. Turning them on lets you run an audit from here — nothing is sent anywhere until you press Test."
3608 +#. Source: src/App.tsx:347
3609 +#: assets/admin.js
3610 +msgid "Failed to disable cache"
990 3611 msgstr ""
991 3612
992 -#: src/components/cache/CacheBenchmark.tsx:99
3613 +#. Source: src/App.tsx:347
3614 +#: assets/admin.js
3615 +msgid "Failed to enable cache"
3616 +msgstr ""
3617 +
3618 +#. Source: src/App.tsx:286
3619 +#: assets/admin.js
3620 +msgid "Failed to load"
3621 +msgstr ""
3622 +
3623 +#. Source: src/components/cache/CacheBenchmark.tsx:99
3624 +#: assets/admin.js
993 3625 msgid "faster"
994 3626 msgstr ""
995 3627
996 -#: src/components/cache/ImpactHero.tsx:96
3628 +#. Source: src/components/cache/ImpactHero.tsx:96
3629 +#: assets/admin.js
997 3630 msgid "faster per page"
998 3631 msgstr ""
999 3632
1000 -#: src/components/overview/FeatureMap.tsx:73
3633 +#. Source: src/components/overview/FeatureMap.tsx:104
3634 +#: assets/admin.js
1001 3635 msgid "features"
1002 3636 msgstr ""
1003 3637
1004 -#: src/components/overview/FeatureMap.tsx:61
1005 -msgid "Features"
3638 +#. Source: src/components/score/ConnectHubModal.tsx:157
3639 +#: assets/admin.js
3640 +msgid "Finish in the tab that opened, then come back here."
1006 3641 msgstr ""
1007 3642
1008 -#: src/onboarding/steps/Connect.tsx:190
3643 +#. Source: src/onboarding/steps/Connect.tsx:198
3644 +#: assets/admin.js
1009 3645 msgid "Free forever"
1010 3646 msgstr ""
1011 3647
1012 -#: src/onboarding/steps/Connect.tsx:162
3648 +#. Source: src/components/score/ScorePanel.tsx:466
3649 +#: assets/admin.js
3650 +msgid "Free tests included with your plan"
3651 +msgstr ""
3652 +
3653 +#. Source: src/components/DefinedInConfig.tsx:50
3654 +#: assets/admin.js
3655 +msgid "from wp-config.php"
3656 +msgstr ""
3657 +
3658 +#. Source: src/components/score/ScanCard.tsx:370
3659 +#: assets/admin.js
3660 +msgid "Full report"
3661 +msgstr ""
3662 +
3663 +#. Source: src/onboarding/steps/Connect.tsx:170
3664 +#: assets/admin.js
1013 3665 msgid "Get more over time"
1014 3666 msgstr ""
1015 3667
1016 -#: src/onboarding/steps/Connect.tsx:126
1017 -#: src/onboarding/steps/Connect.tsx:73
3668 +#. Source: src/onboarding/steps/Connect.tsx:134
3669 +#. Source: src/onboarding/steps/Connect.tsx:81
3670 +#: assets/admin.js
1018 3671 msgid "Go to Dashboard"
1019 3672 msgstr ""
1020 3673
1021 -#: src/components/overview/OverviewFooter.tsx:20
3674 +#. Source: src/onboarding/OnboardingApp.tsx:165
3675 +#: assets/admin.js
3676 +msgid "Go to the dashboard"
3677 +msgstr ""
3678 +
3679 +#. Source: src/components/overview/ScoreCard.tsx:277
3680 +#: assets/admin.js
3681 +msgid "good"
3682 +msgstr ""
3683 +
3684 +#. Source: src/components/score/ScanCard.tsx:273
3685 +#. Source: src/components/score/ScanCard.tsx:314
3686 +#: assets/admin.js
3687 +msgid "Grade"
3688 +msgstr ""
3689 +
3690 +#. Source: src/components/score/SpeedTestCard.tsx:122
3691 +#: assets/admin.js
3692 +msgid "GTmetrix test"
3693 +msgstr ""
3694 +
3695 +#. Source: src/components/sidebarGroups.ts:100
3696 +#: assets/admin.js
3697 +msgid "Health & insights"
3698 +msgstr ""
3699 +
3700 +#. Source: src/components/health/HealthHero.tsx:35
3701 +#: assets/admin.js
3702 +msgid "Health summary"
3703 +msgstr ""
3704 +
3705 +#. Source: src/components/overview/OverviewFooter.tsx:20
3706 +#: assets/admin.js
1022 3707 msgid "Help and resources"
1023 3708 msgstr ""
1024 3709
1025 -#: src/components/overview/OverviewFooter.tsx:28
3710 +#. Source: src/components/overview/OverviewFooter.tsx:28
3711 +#: assets/admin.js
1026 3712 msgid "Help and support"
1027 3713 msgstr ""
1028 3714
1029 -#: src/upsell/ProAudit.tsx:82
3715 +#. Source: src/upsell/ProAudit.tsx:82
3716 +#: assets/admin.js
1030 3717 msgid "Hide"
1031 3718 msgstr ""
1032 3719
1033 -#: src/components/cache/TrendCharts.tsx:120
1034 -#: src/components/overview/MetricGrid.tsx:13
3720 +#. Source: src/components/cache/TrendCharts.tsx:125
3721 +#. Source: src/components/health/HealthHero.tsx:42
3722 +#. Source: src/components/overview/MetricGrid.tsx:45
3723 +#: assets/admin.js
1035 3724 msgid "Hit ratio"
1036 3725 msgstr ""
1037 3726
1038 -#: src/components/cache/TrendCharts.tsx:83
3727 +#. Source: src/components/cache/CacheHero.tsx:217
3728 +#: assets/admin.js
3729 +msgid "Hit Ratio · 24h"
3730 +msgstr ""
3731 +
3732 +#. Source: src/components/cache/CacheHero.tsx:217
3733 +#: assets/admin.js
3734 +msgid "Hit Ratio · 24h · origin"
3735 +msgstr ""
3736 +
3737 +#. Source: src/components/health/HealthHero.tsx:42
3738 +#: assets/admin.js
3739 +msgid "Hit ratio (PHP-served only)"
3740 +msgstr ""
3741 +
3742 +#. Source: src/components/cache/TrendCharts.tsx:83
3743 +#: assets/admin.js
1039 3744 msgid "Hit ratio and benchmark history, with your settings changes marked."
1040 3745 msgstr ""
1041 3746
1042 -#: src/components/cache/TrendCharts.tsx:222
3747 +#. Source: src/components/cache/TrendCharts.tsx:227
3748 +#: assets/admin.js
1043 3749 msgid "Hit ratio trend"
1044 3750 msgstr ""
1045 3751
1046 -#: src/components/cache/ImpactHero.tsx:107
3752 +#. Source: src/components/cache/ImpactHero.tsx:107
3753 +#: assets/admin.js
1047 3754 msgid "hits"
1048 3755 msgstr ""
1049 3756
1050 -#: src/components/cache/ImpactHero.tsx:30
3757 +#. Source: src/components/health/HealthHero.tsx:31
3758 +#: assets/admin.js
3759 +msgid "hits + misses"
3760 +msgstr ""
3761 +
3762 +#. Source: src/components/cache/ImpactHero.tsx:30
3763 +#: assets/admin.js
1051 3764 msgid "hrs"
1052 3765 msgstr ""
1053 3766
1054 -#: src/onboarding/steps/Connect.tsx:124
3767 +#. Source: src/components/TopBar.tsx:138
3768 +#: assets/admin.js
3769 +msgid "Hub connected"
3770 +msgstr ""
3771 +
3772 +#. Source: src/onboarding/steps/Connect.tsx:132
3773 +#: assets/admin.js
1055 3774 msgid "I'll connect later"
1056 3775 msgstr ""
1057 3776
1058 -#: src/components/Sidebar.tsx:278
1059 -msgid "in"
3777 +#. Source: src/components/overview/AiControlCard.tsx:63
3778 +#: assets/admin.js
3779 +msgid "Improve performance"
1060 3780 msgstr ""
1061 3781
1062 -#: src/components/cache/CacheHero.tsx:114
3782 +#. Source: src/components/OverrideConfirm.tsx:33
3783 +#: assets/admin.js
3784 +msgid "in wp-config.php — usually written by your host. If you manage it here, later changes your host makes to it will be ignored."
3785 +msgstr ""
3786 +
3787 +#. Source: src/components/score/ConnectHubModal.tsx:116
3788 +#: assets/admin.js
3789 +msgid "It takes a few seconds."
3790 +msgstr ""
3791 +
3792 +#. Source: src/components/cache/CacheHero.tsx:220
3793 +#: assets/admin.js
1063 3794 msgid "jump to the hit-ratio trend"
1064 3795 msgstr ""
1065 3796
1066 -#: src/components/score/ScorePanel.tsx:101
3797 +#. Source: src/components/overview/AiControlCard.tsx:71
3798 +#: assets/admin.js
3799 +msgid "Just ask"
3800 +msgstr ""
3801 +
3802 +#. Source: src/components/score/ScorePanel.tsx:201
3803 +#: assets/admin.js
1067 3804 msgid "just now"
1068 3805 msgstr ""
1069 3806
1070 -#: src/onboarding/steps/Connect.tsx:144
3807 +#. Source: src/onboarding/steps/Connect.tsx:152
3808 +#: assets/admin.js
1071 3809 msgid "Just say what you want"
1072 3810 msgstr ""
1073 3811
1074 -#: src/components/overview/MetricGrid.tsx:30
3812 +#. Source: src/components/overview/MetricGrid.tsx:61
3813 +#: assets/admin.js
1075 3814 msgid "Key metrics"
1076 3815 msgstr ""
1077 3816
1078 -#: src/components/overview/MetricGrid.tsx:15
3817 +#. Source: src/components/overview/MetricGrid.tsx:53
3818 +#: assets/admin.js
1079 3819 msgid "last 24 hours"
1080 3820 msgstr ""
1081 3821
1082 -#: src/components/cache/ImpactHero.tsx:74
3822 +#. Source: src/components/cache/ImpactHero.tsx:74
3823 +#: assets/admin.js
1083 3824 msgid "last 24h"
1084 3825 msgstr ""
1085 3826
1086 -#: src/components/cache/TrendCharts.tsx:236
3827 +#. Source: src/components/overview/HeroStatus.tsx:87
3828 +#: assets/admin.js
3829 +msgid "Last purged"
3830 +msgstr ""
3831 +
3832 +#. Source: src/components/cache/TrendCharts.tsx:241
3833 +#: assets/admin.js
1087 3834 msgid "Latest"
1088 3835 msgstr ""
1089 3836
1090 -#: src/upsell/ProTeaser.tsx:65
3837 +#. Source: src/upsell/ProTeaser.tsx:65
3838 +#: assets/admin.js
1091 3839 msgid "Learn more about Pro"
1092 3840 msgstr ""
1093 3841
1094 -#: src/components/overview/Recommendations.tsx:188
1095 -msgid "Let our cache experts optimize your site"
3842 +#. Source: src/upsell/LockedSection.tsx:70
3843 +#. Source: src/upsell/ProDemo.tsx:60
3844 +#: assets/admin.js
3845 +msgid "License"
1096 3846 msgstr ""
1097 3847
1098 -#: src/upsell/LockedSection.tsx:81
1099 -#: src/upsell/ProDemo.tsx:73
1100 -msgid "License"
3848 +#. Source: src/components/sidebarGroups.ts:128
3849 +#: assets/admin.js
3850 +msgid "License, branding, multisite and support."
1101 3851 msgstr ""
1102 3852
1103 -#: src/components/Sidebar.tsx:477
1104 -msgid "Light Mode"
3853 +#. Source: src/components/overview/ScoreCard.tsx:205
3854 +#: assets/admin.js
3855 +msgid "Lighthouse performance, from your latest xSpeed Scan."
1105 3856 msgstr ""
1106 3857
1107 -#: src/onboarding/steps/Connect.tsx:87
3858 +#. Source: src/components/score/ScanCard.tsx:296
3859 +#: assets/admin.js
3860 +msgid "Lighthouse performance, out of 100"
3861 +msgstr ""
3862 +
3863 +#. Source: src/components/cache/CacheHero.tsx:238
3864 +#: assets/admin.js
3865 +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 +msgstr ""
3867 +
3868 +#. Source: src/App.tsx:456
3869 +#. Source: src/components/GroupLanding.tsx:67
3870 +#. Source: src/components/LogsView.tsx:35
3871 +#: assets/admin.js
3872 +msgid "Logs"
3873 +msgstr ""
3874 +
3875 +#. Source: src/components/OverrideConfirm.tsx:41
3876 +#: assets/admin.js
3877 +msgid "Manage here"
3878 +msgstr ""
3879 +
3880 +#. Source: src/upsell/ProOverview.tsx:65
3881 +#: assets/admin.js
3882 +msgid "Manage license"
3883 +msgstr ""
3884 +
3885 +#. Source: src/components/overview/AiControlCard.tsx:249
3886 +#: assets/admin.js
3887 +msgid "Manage MCP"
3888 +msgstr ""
3889 +
3890 +#. Source: src/components/DefinedInConfig.tsx:81
3891 +#. Source: src/components/DefinedInConfig.tsx:82
3892 +#: assets/admin.js
3893 +msgid "Manage this setting here instead"
3894 +msgstr ""
3895 +
3896 +#. Source: src/components/OverrideConfirm.tsx:28
3897 +#: assets/admin.js
3898 +msgid "Manage this setting here?"
3899 +msgstr ""
3900 +
3901 +#. Source: src/onboarding/steps/Connect.tsx:95
3902 +#: assets/admin.js
1108 3903 msgid "Manage this site from the central xSpeed Hub dashboard"
1109 3904 msgstr ""
1110 3905
1111 -#: src/components/SettingsSearch.tsx:274
1112 -msgid "match"
3906 +#. Source: src/components/overview/AiControlCard.tsx:72
3907 +#: assets/admin.js
3908 +msgid "Manage xSpeed through conversation"
1113 3909 msgstr ""
1114 3910
1115 -#: src/components/SettingsSearch.tsx:274
1116 -msgid "matches"
3911 +#. Source: src/components/Sidebar.tsx:395
3912 +#. Source: src/components/Sidebar.tsx:402
3913 +#: assets/admin.js
3914 +msgid "Manage your license"
1117 3915 msgstr ""
1118 3916
1119 -#: src/components/cache/ImpactHero.tsx:29
3917 +#. Source: src/components/overview/AiControlCard.tsx:242
3918 +#: assets/admin.js
3919 +msgid "MCP is connected and ready — your AI agent can purge, tune and benchmark this site."
3920 +msgstr ""
3921 +
3922 +#. Source: src/components/overview/ScoreCard.tsx:210
3923 +#: assets/admin.js
3924 +msgid "Measured on your home page by an external audit."
3925 +msgstr ""
3926 +
3927 +#. Source: src/components/score/ScorePanel.tsx:658
3928 +#: assets/admin.js
3929 +msgid "Metric"
3930 +msgstr ""
3931 +
3932 +#. Source: src/components/cache/ImpactHero.tsx:29
3933 +#: assets/admin.js
1120 3934 msgid "min"
1121 3935 msgstr ""
1122 3936
1123 -#: src/components/cache/NextBestAction.tsx:101
3937 +#. Source: src/components/sidebarGroups.ts:88
3938 +#: assets/admin.js
3939 +msgid "Minify, compress, lazy-load, fonts and hints."
3940 +msgstr ""
3941 +
3942 +#. Source: src/components/overview/ScoreCard.tsx:185
3943 +#. Source: src/components/score/ScanCard.tsx:306
3944 +#: assets/admin.js
3945 +msgid "mobile"
3946 +msgstr ""
3947 +
3948 +#. Source: src/components/overview/ScoreCard.tsx:91
3949 +#. Source: src/components/score/ScanCard.tsx:293
3950 +#: assets/admin.js
3951 +msgid "Mobile"
3952 +msgstr ""
3953 +
3954 +#. Source: src/components/Sidebar.tsx:334
3955 +#. Source: src/components/Sidebar.tsx:370
3956 +#: assets/admin.js
3957 +msgid "module on"
3958 +msgstr ""
3959 +
3960 +#. Source: src/components/Sidebar.tsx:335
3961 +#. Source: src/components/Sidebar.tsx:371
3962 +#: assets/admin.js
3963 +msgid "modules on"
3964 +msgstr ""
3965 +
3966 +#. Source: src/components/cache/NextBestAction.tsx:101
3967 +#: assets/admin.js
1124 3968 msgid "more after this"
1125 3969 msgstr ""
1126 3970
1127 -#: src/components/overview/HubCard.tsx:148
3971 +#. Source: src/components/overview/HubCard.tsx:148
3972 +#: assets/admin.js
1128 3973 msgid "More options"
1129 3974 msgstr ""
1130 3975
1131 -#: src/components/cache/CacheBenchmark.tsx:104
3976 +#. Source: src/components/cache/CacheBenchmark.tsx:104
3977 +#: assets/admin.js
1132 3978 msgid "Negligible difference — page is cheap to render or cache is cold."
1133 3979 msgstr ""
1134 3980
1135 -#: src/onboarding/steps/Connect.tsx:164
3981 +#. Source: src/components/sidebarGroups.ts:93
3982 +#: assets/admin.js
3983 +msgid "Network"
3984 +msgstr ""
3985 +
3986 +#. Source: src/components/overview/HeroStatus.tsx:87
3987 +#: assets/admin.js
3988 +msgid "never"
3989 +msgstr ""
3990 +
3991 +#. Source: src/components/overview/ScoreCard.tsx:181
3992 +#: assets/admin.js
3993 +msgid "Never scanned"
3994 +msgstr ""
3995 +
3996 +#. Source: src/onboarding/steps/Connect.tsx:172
3997 +#: assets/admin.js
1136 3998 msgid "new Hub features arrive automatically, free."
1137 3999 msgstr ""
1138 4000
1139 -#: src/components/cache/NextBestAction.tsx:98
4001 +#. Source: src/components/cache/NextBestAction.tsx:98
4002 +#: assets/admin.js
1140 4003 msgid "Next best action"
1141 4004 msgstr ""
1142 4005
1143 -#: src/components/score/ScorePanel.tsx:190
4006 +#. Source: src/components/RewriteAlert.tsx:98
4007 +#: assets/admin.js
4008 +msgid "nginx detected — configure for max cache speed"
4009 +msgstr ""
4010 +
4011 +#. Source: src/components/LogsView.tsx:45
4012 +#: assets/admin.js
4013 +msgid "No activity recorded yet."
4014 +msgstr ""
4015 +
4016 +#. Source: src/components/score/ScorePanel.tsx:449
4017 +#: assets/admin.js
1144 4018 msgid "No audit run yet."
1145 4019 msgstr ""
1146 4020
1147 -#: src/onboarding/steps/Connect.tsx:190
4021 +#. Source: src/onboarding/steps/Connect.tsx:198
4022 +#: assets/admin.js
1148 4023 msgid "No card, no catch"
1149 4024 msgstr ""
1150 4025
1151 -#: src/onboarding/steps/Connect.tsx:156
4026 +#. Source: src/components/score/ScorePanel.tsx:193
4027 +#. Source: src/components/score/ScorePanel.tsx:696
4028 +#: assets/admin.js
4029 +msgid "no change"
4030 +msgstr ""
4031 +
4032 +#. Source: src/components/overview/ScoreCard.tsx:181
4033 +#: assets/admin.js
4034 +msgid "No completed scan"
4035 +msgstr ""
4036 +
4037 +#. Source: src/onboarding/steps/Connect.tsx:164
4038 +#: assets/admin.js
1152 4039 msgid "no logging into each dashboard separately."
1153 4040 msgstr ""
1154 4041
1155 -#: src/components/SettingsSearch.tsx:275
1156 -#: src/components/Sidebar.tsx:257
4042 +#. Source: src/components/CommandPalette.tsx:203
4043 +#: assets/admin.js
1157 4044 msgid "No matches"
1158 4045 msgstr ""
1159 4046
1160 -#: src/components/cache/StatDrilldown.tsx:305
4047 +#. Source: src/components/overview/ScoreCard.tsx:224
4048 +#: assets/admin.js
4049 +msgid "No performance score measured yet"
4050 +msgstr ""
4051 +
4052 +#. Source: src/components/cache/StatDrilldown.tsx:338
4053 +#: assets/admin.js
1161 4054 msgid "No purges recorded yet."
1162 4055 msgstr ""
1163 4056
1164 -#: src/components/cache/NextBestAction.tsx:82
4057 +#. Source: src/components/cache/NextBestAction.tsx:82
4058 +#: assets/admin.js
1165 4059 msgid "No recommendations right now"
1166 4060 msgstr ""
1167 4061
1168 -#: src/onboarding/steps/Connect.tsx:213
4062 +#. Source: src/onboarding/steps/Connect.tsx:221
4063 +#: assets/admin.js
1169 4064 msgid "No redirect? Connect with a token instead."
1170 4065 msgstr ""
1171 4066
1172 -#: src/components/score/ScorePanel.tsx:242
1173 -msgid "Not reported by this provider."
4067 +#. Source: src/components/ScoreRing.tsx:60
4068 +#: assets/admin.js
4069 +msgid "No score measured yet"
1174 4070 msgstr ""
1175 4071
1176 -#: src/components/cache/StatDrilldown.tsx:135
4072 +#. Source: src/components/overview/ScoreCard.tsx:196
4073 +#: assets/admin.js
4074 +msgid "No score yet"
4075 +msgstr ""
4076 +
4077 +#. Source: src/components/score/SpeedTestCard.tsx:126
4078 +#: assets/admin.js
4079 +msgid "No tests left this month."
4080 +msgstr ""
4081 +
4082 +#. Source: src/components/score/ConnectHubModal.tsx:142
4083 +#: assets/admin.js
4084 +msgid "Not now"
4085 +msgstr ""
4086 +
4087 +#. Source: src/components/cache/StatDrilldown.tsx:144
4088 +#: assets/admin.js
1177 4089 msgid "Nothing cached yet. Visit a page as a logged-out visitor to warm the cache."
1178 4090 msgstr ""
1179 4091
1180 -#: src/components/cache/StatDrilldown.tsx:238
4092 +#. Source: src/components/score/ScorePanel.tsx:495
4093 +#: assets/admin.js
4094 +msgid "Nothing is sent anywhere until you press this."
4095 +msgstr ""
4096 +
4097 +#. Source: src/components/cache/StatDrilldown.tsx:247
4098 +#: assets/admin.js
1181 4099 msgid "Nothing on disk yet."
1182 4100 msgstr ""
1183 4101
1184 -#: src/onboarding/steps/Connect.tsx:81
4102 +#. Source: src/components/overview/ScoreCard.tsx:271
4103 +#: assets/admin.js
4104 +msgid "now"
4105 +msgstr ""
4106 +
4107 +#. Source: src/onboarding/steps/Connect.tsx:89
4108 +#: assets/admin.js
1185 4109 msgid "Now unlocked"
1186 4110 msgstr ""
1187 4111
1188 -#: src/components/cache/StatDrilldown.tsx:202
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
4117 +#. Source: src/components/cache/StatDrilldown.tsx:211
4118 +#: assets/admin.js
1189 4119 msgid "of"
1190 4120 msgstr ""
1191 4121
1192 -#: src/components/cache/ImpactHero.tsx:94
4122 +#. Source: src/components/health/HealthHero.tsx:28
4123 +#: assets/admin.js
4124 +msgid "of cache features on"
4125 +msgstr ""
4126 +
4127 +#. Source: src/components/cache/ImpactHero.tsx:94
4128 +#: assets/admin.js
1193 4129 msgid "of combined wait time"
1194 4130 msgstr ""
1195 4131
1196 -#: src/components/overview/FeatureMap.tsx:38
4132 +#. Source: src/components/GroupLanding.tsx:42
4133 +#. Source: src/components/ModuleHeader.tsx:33
4134 +#. Source: src/components/overview/FeatureMap.tsx:51
4135 +#: assets/admin.js
1197 4136 msgid "Off"
1198 4137 msgstr ""
1199 4138
1200 -#: src/components/overview/FeatureMap.tsx:33
4139 +#. Source: src/components/GroupLanding.tsx:92
4140 +#: assets/admin.js
4141 +msgid "on"
4142 +msgstr ""
4143 +
4144 +#. Source: src/components/GroupLanding.tsx:38
4145 +#. Source: src/components/ModuleHeader.tsx:29
4146 +#. Source: src/components/overview/FeatureMap.tsx:46
4147 +#: assets/admin.js
1201 4148 msgid "On"
1202 4149 msgstr ""
1203 4150
1204 -#: src/components/overview/MetricGrid.tsx:25
4151 +#. Source: src/components/OverrideConfirm.tsx:36
4152 +#: assets/admin.js
4153 +msgid "On a managed host (xCloud, Cloudways and similar), changing it in their control panel is usually the better route. You can revert at any time."
4154 +msgstr ""
4155 +
4156 +#. Source: src/components/health/HealthHero.tsx:30
4157 +#. Source: src/components/overview/MetricGrid.tsx:56
4158 +#: assets/admin.js
1205 4159 msgid "on disk"
1206 4160 msgstr ""
1207 4161
1208 -#: src/onboarding/steps/Connect.tsx:227
4162 +#. Source: src/onboarding/steps/Connect.tsx:235
4163 +#: assets/admin.js
1209 4164 msgid "on your xSpeed Hub account."
1210 4165 msgstr ""
1211 4166
1212 -#: src/onboarding/steps/Connect.tsx:85
4167 +#. Source: src/onboarding/OnboardingApp.tsx:156
4168 +#: assets/admin.js
4169 +msgid "Onboarding data unavailable"
4170 +msgstr ""
4171 +
4172 +#. Source: src/onboarding/steps/Connect.tsx:93
4173 +#: assets/admin.js
1213 4174 msgid "One AI connection controls the cache on every site you connect"
1214 4175 msgstr ""
1215 4176
1216 -#: src/components/overview/HubCard.tsx:118
4177 +#. Source: src/components/overview/HubCard.tsx:118
4178 +#: assets/admin.js
1217 4179 msgid "Open Hub dashboard"
1218 4180 msgstr ""
1219 4181
1220 -#: src/components/score/ScorePanel.tsx:303
1221 -msgid "Open the tested page"
4182 +#. Source: src/components/overview/AiControlCard.tsx:249
4183 +#: assets/admin.js
4184 +msgid "Open MCP"
1222 4185 msgstr ""
1223 4186
1224 -#: src/components/cache/StatDrilldown.tsx:152
4187 +#. Source: src/components/TopBar.tsx:88
4188 +#: assets/admin.js
4189 +msgid "Open navigation"
4190 +msgstr ""
4191 +
4192 +#. Source: src/components/score/ScorePanel.tsx:785
4193 +#: assets/admin.js
4194 +msgid "Open the full report"
4195 +msgstr ""
4196 +
4197 +#. Source: src/components/sidebarGroups.ts:86
4198 +#: assets/admin.js
4199 +msgid "Optimization"
4200 +msgstr ""
4201 +
4202 +#. Source: src/components/overview/AiControlCard.tsx:66
4203 +#: assets/admin.js
4204 +msgid "Optimize automatically"
4205 +msgstr ""
4206 +
4207 +#. Source: src/components/overview/McpSessionDemo.tsx:197
4208 +#: assets/admin.js
4209 +msgid "Optimize my site for better PageSpeed."
4210 +msgstr ""
4211 +
4212 +#. Source: src/components/ScoreRing.tsx:61
4213 +#. Source: src/components/overview/ScoreCard.tsx:225
4214 +#: assets/admin.js
4215 +msgid "out of 100"
4216 +msgstr ""
4217 +
4218 +#. Source: src/components/overview/ScoreCard.tsx:209
4219 +#: assets/admin.js
4220 +msgid "Over a month old — may not reflect the site now."
4221 +msgstr ""
4222 +
4223 +#. Source: src/components/cache/StatDrilldown.tsx:161
4224 +#: assets/admin.js
1225 4225 msgid "Page"
1226 4226 msgstr ""
1227 4227
1228 -#: src/components/overview/HeroStatus.tsx:38
1229 -#: src/components/overview/HeroStatus.tsx:40
1230 -msgid "pages cached"
4228 +#. Source: src/components/sidebarGroups.ts:81
4229 +#: assets/admin.js
4230 +msgid "Page, object and browser caching, plus preload."
1231 4231 msgstr ""
1232 4232
1233 -#: src/components/cache/StatDrilldown.tsx:269
4233 +#. Source: src/components/cache/StatDrilldown.tsx:278
4234 +#: assets/admin.js
1234 4235 msgid "Pages without one are compressed by the server when requested."
1235 4236 msgstr ""
1236 4237
1237 -#: src/onboarding/steps/Connect.tsx:218
4238 +#. Source: src/components/overview/McpSessionDemo.tsx:286
4239 +#: assets/admin.js
4240 +msgid "PageSpeed"
4241 +msgstr ""
4242 +
4243 +#. Source: src/components/overview/AiControlCard.tsx:63
4244 +#: assets/admin.js
4245 +msgid "PageSpeed & Core Web Vitals"
4246 +msgstr ""
4247 +
4248 +#. Source: src/components/score/ScanCard.tsx:326
4249 +#: assets/admin.js
4250 +msgid "Partial scan — some checks could not run, so the score covers less than the full rubric."
4251 +msgstr ""
4252 +
4253 +#. Source: src/components/TopBar.tsx:177
4254 +#: assets/admin.js
4255 +msgid "Partly cleared"
4256 +msgstr ""
4257 +
4258 +#. Source: src/components/migration/MigrationPanel.tsx:800
4259 +#: assets/admin.js
4260 +msgid "Paste an xSpeed profile JSON here, or choose a .json file below."
4261 +msgstr ""
4262 +
4263 +#. Source: src/onboarding/steps/Connect.tsx:226
4264 +#: assets/admin.js
1238 4265 msgid "Paste this site’s URL + token into the"
1239 4266 msgstr ""
1240 4267
1241 -#: src/components/cache/StatDrilldown.tsx:268
4268 +#. Source: src/components/overview/MetricGrid.tsx:57
4269 +#: assets/admin.js
4270 +msgid "per page load"
4271 +msgstr ""
4272 +
4273 +#. Source: src/components/ScoreRing.tsx:61
4274 +#. Source: src/components/overview/ScoreCard.tsx:225
4275 +#. Source: src/components/overview/ScoreCard.tsx:254
4276 +#. Source: src/components/score/ScorePanel.tsx:442
4277 +#: assets/admin.js
4278 +msgid "Performance score"
4279 +msgstr ""
4280 +
4281 +#. Source: src/components/score/SpeedTestCard.tsx:127
4282 +#: assets/admin.js
4283 +msgid "Performance score and Core Web Vitals for your home page."
4284 +msgstr ""
4285 +
4286 +#. Source: src/components/score/ScorePanel.tsx:448
4287 +#: assets/admin.js
4288 +msgid "Performance score and Core Web Vitals."
4289 +msgstr ""
4290 +
4291 +#. Source: src/components/overview/MetricGrid.tsx:52
4292 +#: assets/admin.js
4293 +msgid "PHP-served only — static fast path hits are not counted"
4294 +msgstr ""
4295 +
4296 +#. Source: src/components/score/ScorePanel.tsx:713
4297 +#: assets/admin.js
4298 +msgid "Pick one more run to compare."
4299 +msgstr ""
4300 +
4301 +#. Source: src/components/score/ScorePanel.tsx:714
4302 +#: assets/admin.js
4303 +msgid "Pick two runs to compare them."
4304 +msgstr ""
4305 +
4306 +#. Source: src/components/score/ScanCard.tsx:86
4307 +#: assets/admin.js
4308 +msgid "Platform"
4309 +msgstr ""
4310 +
4311 +#. Source: src/components/cache/StatDrilldown.tsx:277
4312 +#: assets/admin.js
1242 4313 msgid "Precompressed copies on disk:"
1243 4314 msgstr ""
1244 4315
1245 -#: src/components/overview/HeroStatus.tsx:102
4316 +#. Source: src/components/CommandPalette.tsx:59
4317 +#: assets/admin.js
1246 4318 msgid "Preload"
1247 4319 msgstr ""
1248 4320
1249 -#: src/components/overview/HeroStatus.tsx:60
4321 +#. Source: src/App.tsx:423
4322 +#: assets/admin.js
1250 4323 msgid "Preload could not start"
1251 4324 msgstr ""
1252 4325
1253 -#: src/components/overview/HeroStatus.tsx:58
1254 -msgid "Preload started"
4326 +#. Source: src/App.tsx:422
4327 +#: assets/admin.js
4328 +msgid "Preload could not start: %s"
1255 4329 msgstr ""
1256 4330
1257 -#: src/upsell/ProDemo.tsx:131
4331 +#. Source: src/App.tsx:410
4332 +#: assets/admin.js
4333 +msgid "Preload found no pages to warm"
4334 +msgstr ""
4335 +
4336 +#. Source: src/App.tsx:409
4337 +#: assets/admin.js
4338 +msgid "Preload found no pages to warm: %s"
4339 +msgstr ""
4340 +
4341 +#. Source: src/App.tsx:399
4342 +#: assets/admin.js
4343 +msgid "Preloading %d page"
4344 +msgid_plural "Preloading %d pages"
4345 +msgstr[0] ""
4346 +msgstr[1] ""
4347 +
4348 +#. Source: src/upsell/ProDemo.tsx:118
4349 +#: assets/admin.js
1258 4350 msgid "Preview"
1259 4351 msgstr ""
1260 4352
1261 -#: src/components/overview/FeatureMap.tsx:25
1262 -#: src/upsell/LockedSection.tsx:81
1263 -#: src/upsell/ProAudit.tsx:66
1264 -#: src/upsell/ProDemo.tsx:73
1265 -#: src/upsell/ProTeaser.tsx:45
4353 +#. Source: src/components/Sidebar.tsx:300
4354 +#: assets/admin.js
4355 +msgid "Primary"
4356 +msgstr ""
4357 +
4358 +#. Source: src/components/GroupLanding.tsx:32
4359 +#. Source: src/components/ModuleHeader.tsx:23
4360 +#. Source: src/components/Tabs.tsx:97
4361 +#. Source: src/components/migration/MigrationPanel.tsx:650
4362 +#. Source: src/components/overview/FeatureMap.tsx:38
4363 +#. Source: src/upsell/LockedSection.tsx:70
4364 +#. Source: src/upsell/ProAudit.tsx:66
4365 +#. Source: src/upsell/ProDemo.tsx:60
4366 +#. Source: src/upsell/ProTeaser.tsx:45
4367 +#: assets/admin.js
1266 4368 msgid "Pro"
1267 4369 msgstr ""
1268 4370
1269 -#: src/upsell/LockedPanel.tsx:95
4371 +#. Source: src/upsell/LockedPanel.tsx:82
4372 +#. Source: src/upsell/ProOverview.tsx:40
4373 +#: assets/admin.js
1270 4374 msgid "Pro — license needed"
1271 4375 msgstr ""
1272 4376
1273 -#: src/components/Sidebar.tsx:329
1274 -#: src/components/Sidebar.tsx:428
1275 -#: src/upsell/LockedPanel.tsx:95
4377 +#. Source: src/upsell/LockedPanel.tsx:82
4378 +#: assets/admin.js
1276 4379 msgid "Pro feature"
1277 4380 msgstr ""
1278 4381
1279 -#: src/upsell/LockedPanel.tsx:165
1280 -#: src/upsell/LockedPanel.tsx:44
4382 +#. Source: src/upsell/ProOverview.tsx:46
4383 +#: assets/admin.js
4384 +msgid "Pro is licensed on this site."
4385 +msgstr ""
4386 +
4387 +#. Source: src/upsell/ProOverview.tsx:54
4388 +#: assets/admin.js
4389 +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 +msgstr ""
4391 +
4392 +#. Source: src/components/Sidebar.tsx:395
4393 +#. Source: src/components/Sidebar.tsx:411
4394 +#. Source: src/upsell/ProOverview.tsx:38
4395 +#: assets/admin.js
4396 +msgid "Pro Licensed"
4397 +msgstr ""
4398 +
4399 +#. Source: src/upsell/LockedPanel.tsx:152
4400 +#. Source: src/upsell/LockedPanel.tsx:41
4401 +#: assets/admin.js
1281 4402 msgid "Pro unlocks this module + every other locked row in the sidebar. Your current Free settings stay unchanged."
1282 4403 msgstr ""
1283 4404
1284 -#: src/components/overview/HeroStatus.tsx:92
4405 +#. Source: src/components/migration/MigrationPanel.tsx:802
4406 +#: assets/admin.js
4407 +msgid "Profile JSON to import"
4408 +msgstr ""
4409 +
4410 +#. Source: src/components/score/ScorePanel.tsx:727
4411 +#: assets/admin.js
4412 +msgid "Provider"
4413 +msgstr ""
4414 +
4415 +#. Source: src/components/score/ScanCard.tsx:107
4416 +#: assets/admin.js
4417 +msgid "pts"
4418 +msgstr ""
4419 +
4420 +#. Source: src/components/CommandPalette.tsx:58
4421 +#. Source: src/components/TopBar.tsx:180
4422 +#: assets/admin.js
1285 4423 msgid "Purge all"
1286 4424 msgstr ""
1287 4425
1288 -#: src/components/cache/StatDrilldown.tsx:301
4426 +#. Source: src/App.tsx:370
4427 +#. Source: src/components/TopBar.tsx:179
4428 +#: assets/admin.js
4429 +msgid "Purge failed"
4430 +msgstr ""
4431 +
4432 +#. Source: src/App.tsx:370
4433 +#: assets/admin.js
4434 +msgid "Purge failed: %s"
4435 +msgstr ""
4436 +
4437 +#. Source: src/components/purgeOutcome.ts:54
4438 +#: assets/admin.js
4439 +msgid "Purge failed."
4440 +msgstr ""
4441 +
4442 +#. Source: src/components/cache/StatDrilldown.tsx:331
4443 +#: assets/admin.js
1289 4444 msgid "Purge history"
1290 4445 msgstr ""
1291 4446
1292 -#: src/onboarding/steps/Connect.tsx:86
4447 +#. Source: src/onboarding/steps/Connect.tsx:94
4448 +#: assets/admin.js
1293 4449 msgid "Purge, benchmark, preload and tune settings by asking your AI"
1294 4450 msgstr ""
1295 4451
1296 -#: src/components/cache/CacheBenchmark.tsx:67
1297 -#: src/upsell/ProAudit.tsx:92
4452 +#. Source: src/components/score/ScanCard.tsx:341
4453 +#: assets/admin.js
4454 +msgid "ranked by points recovered"
4455 +msgstr ""
4456 +
4457 +#. Source: src/components/cache/CacheBenchmark.tsx:67
4458 +#. Source: src/upsell/ProAudit.tsx:92
4459 +#: assets/admin.js
1298 4460 msgid "Re-run"
1299 4461 msgstr ""
1300 4462
1301 -#: src/components/cache/ImpactHero.tsx:84
4463 +#. Source: src/components/mcp/McpActivity.tsx:194
4464 +#: assets/admin.js
4465 +msgid "read-only call"
4466 +msgstr ""
4467 +
4468 +#. Source: src/components/overview/ScoreCard.tsx:202
4469 +#: assets/admin.js
4470 +msgid "Reading your latest result."
4471 +msgstr ""
4472 +
4473 +#. Source: src/components/cache/ImpactHero.tsx:84
4474 +#: assets/admin.js
1302 4475 msgid "Real visitor impact"
1303 4476 msgstr ""
1304 4477
1305 -#: src/components/overview/ActivityStrip.tsx:49
1306 -#: src/components/overview/ActivityStrip.tsx:51
4478 +#. Source: src/components/overview/ActivityStrip.tsx:49
4479 +#. Source: src/components/overview/ActivityStrip.tsx:51
4480 +#: assets/admin.js
1307 4481 msgid "Recent activity"
1308 4482 msgstr ""
1309 4483
1310 -#: src/components/cache/TrendCharts.tsx:148
4484 +#. Source: src/components/LogsView.tsx:36
4485 +#: assets/admin.js
4486 +msgid "Recent cache and settings activity on this site."
4487 +msgstr ""
4488 +
4489 +#. Source: src/components/GroupLanding.tsx:67
4490 +#: assets/admin.js
4491 +msgid "Recent cache and settings activity."
4492 +msgstr ""
4493 +
4494 +#. Source: src/components/cache/TrendCharts.tsx:153
4495 +#: assets/admin.js
1311 4496 msgid "Recent changes"
1312 4497 msgstr ""
1313 4498
1314 -#: src/components/overview/Recommendations.tsx:102
1315 -#: src/components/overview/Recommendations.tsx:99
1316 -msgid "Recommendations"
4499 +#. Source: src/components/overview/Recommendations.tsx:119
4500 +#. Source: src/components/overview/Recommendations.tsx:123
4501 +#: assets/admin.js
4502 +msgid "Recommended for your site"
1317 4503 msgstr ""
1318 4504
1319 -#: src/components/FieldSuggestionStrip.tsx:116
4505 +#. Source: src/components/FieldSuggestionStrip.tsx:116
4506 +#: assets/admin.js
1320 4507 msgid "Recommended:"
1321 4508 msgstr ""
1322 4509
1323 -#: src/components/cache/StatDrilldown.tsx:95
4510 +#. Source: src/components/cache/StatDrilldown.tsx:104
4511 +#: assets/admin.js
1324 4512 msgid "Refresh"
1325 4513 msgstr ""
1326 4514
1327 -#: src/components/cache/TrendCharts.tsx:108
4515 +#. Source: src/components/mcp/McpActivity.tsx:137
4516 +#: assets/admin.js
4517 +msgid "Refresh activity log"
4518 +msgstr ""
4519 +
4520 +#. Source: src/components/cache/TrendCharts.tsx:113
4521 +#: assets/admin.js
1328 4522 msgid "Refresh trends"
1329 4523 msgstr ""
1330 4524
1331 -#: src/components/overview/OverviewFooter.tsx:32
4525 +#. Source: src/components/SecretField.tsx:116
4526 +#: assets/admin.js
4527 +msgid "Remove"
4528 +msgstr ""
4529 +
4530 +#. Source: src/components/SecretField.tsx:115
4531 +#: assets/admin.js
4532 +msgid "Remove the saved key"
4533 +msgstr ""
4534 +
4535 +#. Source: src/components/dropinNotice.ts:46
4536 +#: assets/admin.js
4537 +msgid "Replace and enable"
4538 +msgstr ""
4539 +
4540 +#. Source: src/components/dropinNotice.ts:42
4541 +#: assets/admin.js
4542 +msgid "Replace the existing cache file?"
4543 +msgstr ""
4544 +
4545 +#. Source: src/components/health/HealthHero.tsx:31
4546 +#: assets/admin.js
4547 +msgid "Requests (24h)"
4548 +msgstr ""
4549 +
4550 +#. Source: src/components/CommandPalette.tsx:210
4551 +#: assets/admin.js
4552 +msgid "Results"
4553 +msgstr ""
4554 +
4555 +#. Source: src/components/overview/OverviewFooter.tsx:32
4556 +#: assets/admin.js
1332 4557 msgid "Review us on WordPress.org"
1333 4558 msgstr ""
1334 4559
1335 -#: src/components/cache/CacheBenchmark.tsx:67
4560 +#. Source: src/components/overview/ScoreCard.tsx:198
4561 +#: assets/admin.js
4562 +msgid "Room to go faster"
4563 +msgstr ""
4564 +
4565 +#. Source: src/components/score/ConnectHubModal.tsx:101
4566 +#: assets/admin.js
4567 +msgid "Run a GTmetrix test"
4568 +msgstr ""
4569 +
4570 +#. Source: src/components/score/ScorePanel.tsx:478
4571 +#: assets/admin.js
4572 +msgid "Run a GTmetrix test on this site"
4573 +msgstr ""
4574 +
4575 +#. Source: src/components/overview/ScoreCard.tsx:295
4576 +#. Source: src/components/score/ScanCard.tsx:209
4577 +#: assets/admin.js
4578 +msgid "Run a scan"
4579 +msgstr ""
4580 +
4581 +#. Source: src/components/cache/CacheBenchmark.tsx:67
4582 +#: assets/admin.js
1336 4583 msgid "Run benchmark"
1337 4584 msgstr ""
1338 4585
1339 -#: src/onboarding/steps/Connect.tsx:154
4586 +#. Source: src/onboarding/steps/Connect.tsx:162
4587 +#: assets/admin.js
1340 4588 msgid "Run every site from one place"
1341 4589 msgstr ""
1342 4590
1343 -#: src/components/score/ScorePanel.tsx:277
4591 +#. Source: src/components/score/ScorePanel.tsx:620
4592 +#: assets/admin.js
1344 4593 msgid "Run history"
1345 4594 msgstr ""
1346 4595
1347 -#: src/upsell/ProAudit.tsx:92
4596 +#. Source: src/upsell/ProAudit.tsx:92
4597 +#: assets/admin.js
1348 4598 msgid "Run Pro audit"
1349 4599 msgstr ""
1350 4600
1351 -#: src/components/cache/TrendCharts.tsx:139
4601 +#. Source: src/components/score/SpeedTestCard.tsx:147
4602 +#: assets/admin.js
4603 +msgid "Run test"
4604 +msgstr ""
4605 +
4606 +#. Source: src/components/cache/TrendCharts.tsx:144
4607 +#: assets/admin.js
1352 4608 msgid "Run the benchmark at least twice to see a trend."
1353 4609 msgstr ""
1354 4610
1355 -#: src/components/cache/ImpactHero.tsx:65
4611 +#. Source: src/components/cache/ImpactHero.tsx:65
4612 +#: assets/admin.js
1356 4613 msgid "Run the benchmark once and this card shows how much combined wait time the cache saves your visitors."
1357 4614 msgstr ""
1358 4615
1359 -#: src/onboarding/steps/Connect.tsx:115
4616 +#. Source: src/onboarding/steps/Connect.tsx:123
4617 +#: assets/admin.js
1360 4618 msgid "Run your site just by asking"
1361 4619 msgstr ""
1362 4620
1363 -#: src/components/score/ScorePanel.tsx:203
4621 +#. Source: src/components/score/ScorePanel.tsx:499
4622 +#: assets/admin.js
1364 4623 msgid "Running…"
1365 4624 msgstr ""
1366 4625
1367 -#: src/components/cache/ImpactHero.tsx:107
4626 +#. Source: src/components/SaveIndicator.tsx:108
4627 +#: assets/admin.js
4628 +msgid "Save failed — your change was not saved"
4629 +msgstr ""
4630 +
4631 +#. Source: src/components/cache/ImpactHero.tsx:107
4632 +#: assets/admin.js
1368 4633 msgid "saved across"
1369 4634 msgstr ""
1370 4635
1371 -#: src/components/cache/CacheBenchmark.tsx:100
4636 +#. Source: src/components/cache/CacheBenchmark.tsx:100
4637 +#: assets/admin.js
1372 4638 msgid "saved per request"
1373 4639 msgstr ""
1374 4640
1375 -#: src/components/SaveIndicator.tsx:93
4641 +#. Source: src/components/SaveIndicator.tsx:118
4642 +#: assets/admin.js
1376 4643 msgid "Saving changes…"
1377 4644 msgstr ""
1378 4645
1379 -#: src/upsell/ProAudit.tsx:70
4646 +#. Source: src/components/score/ScanCard.tsx:209
4647 +#: assets/admin.js
4648 +msgid "Scan again"
4649 +msgstr ""
4650 +
4651 +#. Source: src/components/score/ScanCard.tsx:209
4652 +#: assets/admin.js
4653 +msgid "Scanning…"
4654 +msgstr ""
4655 +
4656 +#. Source: src/upsell/ProAudit.tsx:70
4657 +#: assets/admin.js
1380 4658 msgid "Scans your current settings + 24h cache stats and shows exactly which Pro features would help."
1381 4659 msgstr ""
1382 4660
1383 -#: src/components/SettingsSearch.tsx:243
1384 -#: src/components/SettingsSearch.tsx:244
1385 -#: src/components/Sidebar.tsx:192
1386 -#: src/components/Sidebar.tsx:201
1387 -msgid "Search settings"
4661 +#. Source: src/components/overview/ScoreCard.tsx:229
4662 +#. Source: src/components/score/ScorePanel.tsx:728
4663 +#: assets/admin.js
4664 +msgid "Score"
1388 4665 msgstr ""
1389 4666
1390 -#: src/onboarding/steps/Connect.tsx:175
4667 +#. Source: src/components/score/ScorePanel.tsx:525
4668 +#: assets/admin.js
4669 +msgid "score out of 100"
4670 +msgstr ""
4671 +
4672 +#. Source: src/components/overview/ScoreCard.tsx:98
4673 +#: assets/admin.js
4674 +msgid "Score strategy"
4675 +msgstr ""
4676 +
4677 +#. Source: src/components/TopBar.tsx:114
4678 +#. Source: src/components/TopBar.tsx:119
4679 +#: assets/admin.js
4680 +msgid "Search"
4681 +msgstr ""
4682 +
4683 +#. Source: src/components/CommandPalette.tsx:186
4684 +#: assets/admin.js
4685 +msgid "Search settings, modules, actions"
4686 +msgstr ""
4687 +
4688 +#. Source: src/components/CommandPalette.tsx:192
4689 +#: assets/admin.js
4690 +msgid "Search settings, modules, actions…"
4691 +msgstr ""
4692 +
4693 +#. Source: src/onboarding/steps/Connect.tsx:183
4694 +#: assets/admin.js
1391 4695 msgid "See everything it does."
1392 4696 msgstr ""
1393 4697
1394 -#: src/components/overview/MetricGrid.tsx:20
4698 +#. Source: src/components/overview/ScoreCard.tsx:206
4699 +#: assets/admin.js
4700 +msgid "See how this site performs for real visitors."
4701 +msgstr ""
4702 +
4703 +#. Source: src/components/health/HealthHero.tsx:29
4704 +#. Source: src/components/overview/MetricGrid.tsx:55
4705 +#: assets/admin.js
1395 4706 msgid "served without PHP"
1396 4707 msgstr ""
1397 4708
1398 -#: src/components/cache/ImpactHero.tsx:66
1399 -msgid "Serving cached pages… impact numbers appear once today’s hits accumulate."
4709 +#. Source: src/components/score/ScanCard.tsx:82
4710 +#: assets/admin.js
4711 +msgid "Server & caching"
1400 4712 msgstr ""
1401 4713
1402 -#: src/components/overview/HeroStatus.tsx:38
1403 -msgid "Serving from"
4714 +#. Source: src/components/RewriteAlert.tsx:106
4715 +#: assets/admin.js
4716 +msgid "Server config missing — cache running on PHP fallback"
1404 4717 msgstr ""
1405 4718
1406 -#: src/components/overview/HeroStatus.tsx:40
1407 -msgid "Serving from the PHP cache"
4719 +#. Source: src/components/cache/ImpactHero.tsx:66
4720 +#: assets/admin.js
4721 +msgid "Serving cached pages… impact numbers appear once today’s hits accumulate."
1408 4722 msgstr ""
1409 4723
1410 -#: src/components/SaveIndicator.tsx:88
4724 +#. Source: src/components/SecretField.tsx:89
4725 +#: assets/admin.js
4726 +msgid "Set in wp-config.php"
4727 +msgstr ""
4728 +
4729 +#. Source: src/components/SaveIndicator.tsx:113
4730 +#: assets/admin.js
1411 4731 msgid "Settings saved"
1412 4732 msgstr ""
1413 4733
1414 -#: src/upsell/ProAudit.tsx:82
4734 +#. Source: src/upsell/ProAudit.tsx:82
4735 +#: assets/admin.js
1415 4736 msgid "Show"
1416 4737 msgstr ""
1417 4738
1418 -#: src/components/overview/FeatureMap.tsx:73
4739 +#. Source: src/components/overview/FeatureMap.tsx:104
4740 +#: assets/admin.js
1419 4741 msgid "Show less"
1420 4742 msgstr ""
1421 4743
1422 -#: src/components/cache/CacheHero.tsx:108
4744 +#. Source: src/components/cache/CacheHero.tsx:214
4745 +#: assets/admin.js
1423 4746 msgid "show what cleared the cache and why"
1424 4747 msgstr ""
1425 4748
1426 -#: src/components/cache/CacheHero.tsx:101
4749 +#. Source: src/components/cache/CacheHero.tsx:207
4750 +#: assets/admin.js
1427 4751 msgid "show what is taking the space"
1428 4752 msgstr ""
1429 4753
1430 -#: src/components/cache/CacheHero.tsx:94
4754 +#. Source: src/components/cache/CacheHero.tsx:200
4755 +#: assets/admin.js
1431 4756 msgid "show which pages are cached"
1432 4757 msgstr ""
1433 4758
1434 -#: src/components/cache/StatDrilldown.tsx:202
4759 +#. Source: src/components/cache/StatDrilldown.tsx:211
4760 +#: assets/admin.js
1435 4761 msgid "Showing"
1436 4762 msgstr ""
1437 4763
1438 -#: src/onboarding/steps/Connect.tsx:230
4764 +#. Source: src/components/overview/ScoreCard.tsx:208
4765 +#: assets/admin.js
4766 +msgid "Showing your last completed scan."
4767 +msgstr ""
4768 +
4769 +#. Source: src/onboarding/steps/Connect.tsx:238
4770 +#: assets/admin.js
1439 4771 msgid "Site URL"
1440 4772 msgstr ""
1441 4773
1442 -#: src/components/cache/StatDrilldown.tsx:153
4774 +#. Source: src/components/cache/StatDrilldown.tsx:162
4775 +#: assets/admin.js
1443 4776 msgid "Size"
1444 4777 msgstr ""
1445 4778
1446 -#: src/components/cache/StatDrilldown.tsx:155
4779 +#. Source: src/components/sidebarGroups.ts:102
4780 +#: assets/admin.js
4781 +msgid "Speed score, diagnostics and analytics."
4782 +msgstr ""
4783 +
4784 +#. Source: src/components/score/ScorePanel.tsx:427
4785 +#: assets/admin.js
4786 +msgid "Speed test"
4787 +msgstr ""
4788 +
4789 +#. Source: src/components/RewriteAlert.tsx:92
4790 +#: assets/admin.js
4791 +msgid "Static rewrite may not be available on this host"
4792 +msgstr ""
4793 +
4794 +#. Source: src/components/cache/StatDrilldown.tsx:164
4795 +#: assets/admin.js
1447 4796 msgid "Stored"
1448 4797 msgstr ""
1449 4798
1450 -#: src/components/Sidebar.tsx:466
1451 -#: src/components/Sidebar.tsx:473
1452 -msgid "Switch to dark"
4799 +#. Source: src/components/mcp/McpActivity.tsx:175
4800 +#: assets/admin.js
4801 +msgid "succeeded"
1453 4802 msgstr ""
1454 4803
1455 -#: src/components/Sidebar.tsx:466
1456 -#: src/components/Sidebar.tsx:473
1457 -msgid "Switch to light"
4804 +#. Source: src/components/TopBar.tsx:144
4805 +#: assets/admin.js
4806 +msgid "Switch to dark mode"
1458 4807 msgstr ""
1459 4808
1460 -#: src/components/cache/TrendCharts.tsx:240
4809 +#. Source: src/components/TopBar.tsx:144
4810 +#: assets/admin.js
4811 +msgid "Switch to light mode"
4812 +msgstr ""
4813 +
4814 +#. Source: src/components/dropinNotice.ts:37
4815 +#: assets/admin.js
4816 +msgid "Take over and enable"
4817 +msgstr ""
4818 +
4819 +#. Source: src/components/dropinNotice.ts:33
4820 +#: assets/admin.js
4821 +msgid "Take over the page cache from %s?"
4822 +msgstr ""
4823 +
4824 +#. Source: src/components/cache/TrendCharts.tsx:245
4825 +#: assets/admin.js
1461 4826 msgid "target ≥80%"
1462 4827 msgstr ""
1463 4828
1464 -#: src/components/score/ScorePanel.tsx:203
4829 +#. Source: src/components/score/ScorePanel.tsx:499
4830 +#: assets/admin.js
1465 4831 msgid "Test now"
1466 4832 msgstr ""
1467 4833
1468 -#: src/components/score/ScorePanel.tsx:168
1469 -msgid "The test could not be started."
4834 +#. Source: src/components/score/ScorePanel.tsx:485
4835 +#: assets/admin.js
4836 +msgid "Test with GTmetrix"
1470 4837 msgstr ""
1471 4838
1472 -#: src/components/cache/StatDrilldown.tsx:142
4839 +#. Source: src/components/score/ScorePanel.tsx:485
4840 +#. Source: src/components/score/SpeedTestCard.tsx:147
4841 +#: assets/admin.js
4842 +msgid "Testing…"
4843 +msgstr ""
4844 +
4845 +#. Source: src/components/purgeOutcome.ts:70
4846 +#: assets/admin.js
4847 +msgid "The cache was already empty, so there was nothing to clear."
4848 +msgstr ""
4849 +
4850 +#. Source: src/components/overview/ScoreCard.tsx:207
4851 +#: assets/admin.js
4852 +msgid "The last scan did not complete."
4853 +msgstr ""
4854 +
4855 +#. Source: src/components/purgeOutcome.ts:78
4856 +#: assets/admin.js
4857 +msgid "The page cache was already empty."
4858 +msgstr ""
4859 +
4860 +#. Source: src/components/purgeOutcome.ts:63
4861 +#: assets/admin.js
4862 +msgid "There was nothing to clear."
4863 +msgstr ""
4864 +
4865 +#. Source: src/components/cache/StatDrilldown.tsx:151
4866 +#: assets/admin.js
1473 4867 msgid "This cache is large enough that the scan stopped early — the list below is a recent sample, not every page."
1474 4868 msgstr ""
1475 4869
1476 -#: src/components/Sidebar.tsx:472
1477 -msgid "Toggle theme"
4870 +#. Source: src/components/SecretField.tsx:93
4871 +#: assets/admin.js
4872 +msgid "This credential is defined in wp-config.php and cannot be changed here."
1478 4873 msgstr ""
1479 4874
1480 -#: src/onboarding/steps/Connect.tsx:234
4875 +#. Source: src/components/score/ScanCard.tsx:234
4876 +#: assets/admin.js
4877 +msgid "This report will be publicly visible at xspeedcache.com, listed under your domain. Connect xSpeed Hub to keep your reports unlisted."
4878 +msgstr ""
4879 +
4880 +#. Source: src/components/score/ConnectHubModal.tsx:127
4881 +#: assets/admin.js
4882 +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 +msgstr ""
4884 +
4885 +#. Source: src/components/OverrideConfirm.tsx:31
4886 +#: assets/admin.js
4887 +msgid "This value comes from"
4888 +msgstr ""
4889 +
4890 +#. Source: src/onboarding/steps/Connect.tsx:242
4891 +#: assets/admin.js
1481 4892 msgid "Token"
1482 4893 msgstr ""
1483 4894
1484 -#: src/components/cache/TrendCharts.tsx:81
4895 +#. Source: src/components/LogsView.tsx:34
4896 +#. Source: src/components/sidebarGroups.ts:107
4897 +#: assets/admin.js
4898 +msgid "Tools"
4899 +msgstr ""
4900 +
4901 +#. Source: src/components/cache/TrendCharts.tsx:81
4902 +#: assets/admin.js
1485 4903 msgid "Trends"
1486 4904 msgstr ""
1487 4905
1488 -#: src/components/cache/TrendCharts.tsx:126
4906 +#. Source: src/components/cache/TrendCharts.tsx:131
4907 +#: assets/admin.js
1489 4908 msgid "Trends appear after a couple of days of traffic. The daily series is being collected now."
1490 4909 msgstr ""
1491 4910
1492 -#: src/components/score/ScorePanel.tsx:199
1493 -msgid "Turn on external scores below first."
4911 +#. Source: src/components/CacheSwitch.tsx:176
4912 +#: assets/admin.js
4913 +msgid "Turn caching off"
1494 4914 msgstr ""
1495 4915
1496 -#: src/components/overview/HeroStatus.tsx:32
4916 +#. Source: src/components/CacheSwitch.tsx:223
4917 +#: assets/admin.js
4918 +msgid "Turn caching off?"
4919 +msgstr ""
4920 +
4921 +#. Source: src/components/CacheSwitch.tsx:177
4922 +#: assets/admin.js
4923 +msgid "Turn caching on"
4924 +msgstr ""
4925 +
4926 +#. Source: src/components/CacheSwitch.tsx:250
4927 +#: assets/admin.js
4928 +msgid "Turn off"
4929 +msgstr ""
4930 +
4931 +#. Source: src/components/overview/HeroStatus.tsx:42
4932 +#: assets/admin.js
1497 4933 msgid "Turn on the page cache to start serving pages instantly."
1498 4934 msgstr ""
1499 4935
1500 -#: src/components/cache/TrendCharts.tsx:273
4936 +#. Source: src/components/cache/TrendCharts.tsx:278
4937 +#: assets/admin.js
1501 4938 msgid "uncached"
1502 4939 msgstr ""
1503 4940
1504 -#: src/onboarding/steps/Connect.tsx:190
4941 +#. Source: src/onboarding/steps/Connect.tsx:198
4942 +#: assets/admin.js
1505 4943 msgid "Under a minute"
1506 4944 msgstr ""
1507 4945
1508 -#: src/upsell/LockedPanel.tsx:129
1509 -#: src/upsell/LockedSection.tsx:109
1510 -#: src/upsell/ProAudit.tsx:113
1511 -#: src/upsell/ProDemo.tsx:115
4946 +#. Source: src/components/Sidebar.tsx:424
4947 +#. Source: src/components/Sidebar.tsx:445
4948 +#. Source: src/upsell/LockedPanel.tsx:116
4949 +#. Source: src/upsell/LockedSection.tsx:98
4950 +#. Source: src/upsell/ProAudit.tsx:113
4951 +#. Source: src/upsell/ProDemo.tsx:102
4952 +#. Source: src/upsell/ProOverview.tsx:83
4953 +#: assets/admin.js
1512 4954 msgid "Upgrade to Pro"
1513 4955 msgstr ""
1514 4956
1515 -#: src/upsell/LockedPanel.tsx:152
4957 +#. Source: src/components/DefinedInConfig.tsx:60
4958 +#: assets/admin.js
4959 +msgid "Use the host value"
4960 +msgstr ""
4961 +
4962 +#. Source: src/components/overview/ScoreCard.tsx:295
4963 +#: assets/admin.js
4964 +msgid "View details"
4965 +msgstr ""
4966 +
4967 +#. Source: src/components/score/ScorePanel.tsx:566
4968 +#: assets/admin.js
4969 +msgid "View on GTmetrix"
4970 +msgstr ""
4971 +
4972 +#. Source: src/components/score/SpeedTestCard.tsx:164
4973 +#: assets/admin.js
4974 +msgid "View the result"
4975 +msgstr ""
4976 +
4977 +#. Source: src/components/score/ConnectHubModal.tsx:151
4978 +#: assets/admin.js
4979 +msgid "Waiting for connection…"
4980 +msgstr ""
4981 +
4982 +#. Source: src/components/overview/Recommendations.tsx:221
4983 +#: assets/admin.js
4984 +msgid "Want a hand?"
4985 +msgstr ""
4986 +
4987 +#. Source: src/onboarding/OnboardingApp.tsx:159
4988 +#: assets/admin.js
4989 +msgid "We couldn't load the setup wizard. Your site is unaffected — you can configure everything from the dashboard."
4990 +msgstr ""
4991 +
4992 +#. Source: src/components/overview/AiControlCard.tsx:247
4993 +#: assets/admin.js
4994 +msgid "We couldn't read this site's AI connection status. Open MCP to check."
4995 +msgstr ""
4996 +
4997 +#. Source: src/upsell/LockedPanel.tsx:139
4998 +#: assets/admin.js
1516 4999 msgid "What this adds"
1517 5000 msgstr ""
1518 5001
1519 -#: src/upsell/ProAudit.tsx:62
5002 +#. Source: src/components/score/ScanCard.tsx:339
5003 +#: assets/admin.js
5004 +msgid "What to fix next"
5005 +msgstr ""
5006 +
5007 +#. Source: src/components/score/ScorePanel.tsx:578
5008 +#: assets/admin.js
5009 +msgid "What to improve"
5010 +msgstr ""
5011 +
5012 +#. Source: src/upsell/ProAudit.tsx:62
5013 +#: assets/admin.js
1520 5014 msgid "What would Pro do for your site?"
1521 5015 msgstr ""
1522 5016
1523 -#: src/components/cache/StatDrilldown.tsx:234
5017 +#. Source: src/components/score/ScorePanel.tsx:726
5018 +#: assets/admin.js
5019 +msgid "When"
5020 +msgstr ""
5021 +
5022 +#. Source: src/components/cache/StatDrilldown.tsx:243
5023 +#: assets/admin.js
1524 5024 msgid "Where the cache size goes"
1525 5025 msgstr ""
1526 5026
1527 -#: src/components/cache/CacheBenchmark.tsx:88
5027 +#. Source: src/components/ModuleHeader.tsx:55
5028 +#: assets/admin.js
5029 +msgid "Why this is off"
5030 +msgstr ""
5031 +
5032 +#. Source: src/components/ModuleHeader.tsx:55
5033 +#: assets/admin.js
5034 +msgid "Why this is on"
5035 +msgstr ""
5036 +
5037 +#. Source: src/components/cache/CacheBenchmark.tsx:88
5038 +#: assets/admin.js
1528 5039 msgid "With cache"
1529 5040 msgstr ""
1530 5041
1531 -#: src/components/cache/CacheBenchmark.tsx:82
5042 +#. Source: src/components/cache/CacheBenchmark.tsx:82
5043 +#: assets/admin.js
1532 5044 msgid "Without cache"
1533 5045 msgstr ""
1534 5046
1535 -#: src/components/overview/HubCard.tsx:79
1536 -#: src/components/overview/HubCard.tsx:95
1537 -#: src/components/overview/HubCard.tsx:99
5047 +#. Source: src/components/mcp/McpActivity.tsx:200
5048 +#: assets/admin.js
5049 +msgid "write call"
5050 +msgstr ""
5051 +
5052 +#. Source: src/components/overview/HubCard.tsx:79
5053 +#. Source: src/components/overview/HubCard.tsx:95
5054 +#. Source: src/components/overview/HubCard.tsx:99
5055 +#: assets/admin.js
1538 5056 msgid "xSpeed Hub"
1539 5057 msgstr ""
1540 5058
1541 -#: src/onboarding/steps/Connect.tsx:132
5059 +#. Source: src/onboarding/steps/Connect.tsx:140
5060 +#: assets/admin.js
1542 5061 msgid "xSpeed Hub error"
1543 5062 msgstr ""
1544 5063
1545 -#: src/upsell/LockedPanel.tsx:109
5064 +#. Source: src/upsell/ProOverview.tsx:41
5065 +#: assets/admin.js
5066 +msgid "xSpeed Pro"
5067 +msgstr ""
5068 +
5069 +#. Source: src/upsell/ProOverview.tsx:53
5070 +#: assets/admin.js
5071 +msgid "xSpeed Pro is installed — activate your license to unlock every feature below. Your current settings stay exactly as they are."
5072 +msgstr ""
5073 +
5074 +#. Source: src/upsell/LockedPanel.tsx:96
5075 +#: assets/admin.js
1546 5076 msgid "xSpeed Pro is installed — activate your license to unlock this module and every other Pro feature."
1547 5077 msgstr ""
1548 5078
1549 -#: src/components/cache/ImpactHero.tsx:88
5079 +#. Source: src/components/score/ScanCard.tsx:185
5080 +#. Source: src/components/score/ScanCard.tsx:195
5081 +#. Source: src/components/score/ScanCard.tsx:316
5082 +#. Source: src/components/score/ScorePanel.tsx:426
5083 +#: assets/admin.js
5084 +msgid "xSpeed Scan"
5085 +msgstr ""
5086 +
5087 +#. Source: src/components/score/ScanCard.tsx:276
5088 +#: assets/admin.js
5089 +msgid "xSpeed Scan, out of 100"
5090 +msgstr ""
5091 +
5092 +#. Source: src/components/cache/ImpactHero.tsx:88
5093 +#: assets/admin.js
1550 5094 msgid "xSpeed served"
1551 5095 msgstr ""
1552 5096
1553 -#: src/onboarding/steps/Connect.tsx:68
5097 +#. Source: src/components/score/ScorePanel.tsx:477
5098 +#: assets/admin.js
5099 +msgid "You have used this month’s free tests."
5100 +msgstr ""
5101 +
5102 +#. Source: src/onboarding/steps/Connect.tsx:76
5103 +#: assets/admin.js
1554 5104 msgid "You're all set"
1555 5105 msgstr ""
1556 5106
1557 -#: src/components/overview/Recommendations.tsx:113
5107 +#. Source: src/components/overview/Recommendations.tsx:134
5108 +#: assets/admin.js
1558 5109 msgid "You're all set — no recommendations right now."
1559 5110 msgstr ""
1560 5111
1561 -#: src/onboarding/steps/Connect.tsx:61
5112 +#. Source: src/components/RewriteAlert.tsx:94
5113 +#: assets/admin.js
5114 +msgid "Your cache still works on every request — xSpeed's PHP drop-in is serving cached HTML, so nothing is broken. But this site sits behind a reverse proxy or CDN, which usually means a managed/containerized host where the nginx that serves requests isn't one you can edit. The extra-fast server-level rewrite (5–15ms static hits) needs that nginx, so it likely can't be enabled here — and that's also why the cache HIT log stays empty (nginx never serves the static file, so there's nothing to log). If you DO control the request-terminating nginx, use the snippet in the \"Server config\" panel below."
5115 +msgstr ""
5116 +
5117 +#. Source: src/components/RewriteAlert.tsx:103
5118 +#: assets/admin.js
5119 +msgid "Your cache works on every request — xSpeed's PHP drop-in is serving cached HTML. For the full server-level rewrite, copy the snippet from the \"Server config\" panel below into your container's nginx config (typically docker/nginx.conf next to your docker-compose.yml). The host nginx in front of your container only proxies traffic; pasting there has no effect."
5120 +msgstr ""
5121 +
5122 +#. Source: src/components/RewriteAlert.tsx:107
5123 +#: assets/admin.js
5124 +msgid "Your cache works on every request — xSpeed's PHP drop-in is serving cached HTML. To engage the faster server-level rewrite, toggle Cache off and on to reinstall the .htaccess block, and confirm AllowOverride is enabled for your site."
5125 +msgstr ""
5126 +
5127 +#. Source: src/components/RewriteAlert.tsx:99
5128 +#: assets/admin.js
5129 +msgid "Your cache works on every request — xSpeed's PHP drop-in is serving cached HTML. To shave additional latency, copy the snippet from the \"Server config\" panel below into your nginx vhost (typically /etc/nginx/sites-enabled/<your-site>) and reload nginx so cached pages skip PHP entirely."
5130 +msgstr ""
5131 +
5132 +#. Source: src/onboarding/steps/Connect.tsx:69
5133 +#: assets/admin.js
1562 5134 msgid "Your caching is ready to manage from anywhere."
1563 5135 msgstr ""
1564 5136
1565 -#: src/components/overview/FeatureMap.tsx:64
1566 -msgid "Your features"
5137 +#. Source: src/upsell/ProOverview.tsx:113
5138 +#: assets/admin.js
5139 +msgid "Your Free tier keeps working exactly as it does today."
1567 5140 msgstr ""
1568 5141
1569 -#: src/onboarding/steps/Connect.tsx:138
5142 +#. Source: src/onboarding/steps/Connect.tsx:146
5143 +#: assets/admin.js
1570 5144 msgid "Your Hub is home base for all your sites. Once connected, you can:"
1571 5145 msgstr ""
1572 5146
1573 -#: src/App.tsx:352
1574 -msgid "Your site at a glance"
5147 +#. Source: src/components/overview/FeatureMap.tsx:92
5148 +#. Source: src/components/overview/FeatureMap.tsx:95
5149 +#: assets/admin.js
5150 +msgid "Your setup"
1575 5151 msgstr ""
1576 5152
1577 -#: src/components/overview/HeroStatus.tsx:36
1578 -msgid "your web server"
5153 +#. Source: src/components/overview/ScoreCard.tsx:197
5154 +#: assets/admin.js
5155 +msgid "Your site is fast"
5156 +msgstr ""
5157 +
5158 +#. Source: src/components/DefinedInConfig.tsx:46
5159 +#: assets/admin.js
5160 +msgid "Your value is used instead of"
1579 5161 msgstr ""