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 +855 -649 1.3.4 → 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.3.4\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-09-20T11:23:49+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:8726
19 +#: includes/class-cache.php:8967
20 20 #: includes/class-deactivation-feedback.php:189
21 21 msgid "xSpeed Cache"
22 22 msgstr ""
23 23
@@ -37,9 +37,9 @@
37 37 msgstr ""
38 38
39 39 #: includes/class-admin.php:153
40 40 #: includes/class-admin.php:243
41 -#: includes/class-cache.php:8740
41 +#: includes/class-cache.php:8981
42 42 #: assets/admin.js
43 43 msgid "Settings"
44 44 msgstr ""
45 45
@@ -129,185 +129,185 @@
129 129 msgid "Clears this post and the pages that list it — the homepage, its archive and the neighbouring posts. The rest of the site keeps its cache."
130 130 msgstr ""
131 131
132 132 #. translators: 1: cause of the purge, 2: URL or path, 3: number of files removed.
133 -#: includes/class-cache.php:4163
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:5116
138 +#: includes/class-cache.php:5268
139 139 msgid "Purge All"
140 140 msgstr ""
141 141
142 -#: includes/class-cache.php:5120
142 +#: includes/class-cache.php:5272
143 143 msgid "Purge Page / Static Cache"
144 144 msgstr ""
145 145
146 -#: includes/class-cache.php:5124
146 +#: includes/class-cache.php:5276
147 147 msgid "Purge CSS / JS Cache"
148 148 msgstr ""
149 149
150 -#: includes/class-cache.php:5128
150 +#: includes/class-cache.php:5280
151 151 msgid "Purge Object Cache"
152 152 msgstr ""
153 153
154 -#: includes/class-cache.php:5132
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:5379
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:5385
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:5606
170 +#: includes/class-cache.php:5775
171 171 msgid "advanced-cache.php cannot be read, so xSpeed cannot tell whose page cache is installed."
172 172 msgstr ""
173 173
174 174 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
175 -#: includes/class-cache.php:5613
175 +#: includes/class-cache.php:5782
176 176 #, php-format
177 177 msgid "%s is serving the page cache. Turn the xSpeed cache off and on again to take it over."
178 178 msgstr ""
179 179
180 -#: includes/class-cache.php:5616
180 +#: includes/class-cache.php:5785
181 181 msgid "Another plugin is serving the page cache. Turn the xSpeed cache off and on again to take it over."
182 182 msgstr ""
183 183
184 -#: includes/class-cache.php:5686
184 +#: includes/class-cache.php:5860
185 185 msgid "Could not lock page-cache ownership. Try again."
186 186 msgstr ""
187 187
188 -#: includes/class-cache.php:5692
188 +#: includes/class-cache.php:5866
189 189 msgid "Page-cache ownership changed while xSpeed was checking it. Nothing was changed; try again."
190 190 msgstr ""
191 191
192 192 #. translators: %s: the page-caching plugin that owns advanced-cache.php.
193 -#: includes/class-cache.php:5766
193 +#: includes/class-cache.php:5940
194 194 #, php-format
195 195 msgid "%s owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
196 196 msgstr ""
197 197
198 -#: includes/class-cache.php:5769
198 +#: includes/class-cache.php:5943
199 199 msgid "Another plugin owns advanced-cache.php, so xSpeed left it alone. Enable the cache from the xSpeed dashboard to take it over."
200 200 msgstr ""
201 201
202 -#: includes/class-cache.php:5799
202 +#: includes/class-cache.php:5973
203 203 msgid "Could not write wp-content/advanced-cache.php. Check filesystem permissions."
204 204 msgstr ""
205 205
206 -#: includes/class-cache.php:5856
206 +#: includes/class-cache.php:6030
207 207 msgid "wp-config.php is not writable and already contains define( 'WP_CACHE', false ). Change that line to true — adding a second one would leave the cache off and block xSpeed from changing it again."
208 208 msgstr ""
209 209
210 -#: includes/class-cache.php:5857
210 +#: includes/class-cache.php:6031
211 211 msgid "xSpeed could not verify the complete page-cache write, and wp-config.php is not writable. Its changes were rolled back."
212 212 msgstr ""
213 213
214 -#: includes/class-cache.php:5859
214 +#: includes/class-cache.php:6033
215 215 msgid "xSpeed could not verify the complete page-cache write. Its changes were rolled back."
216 216 msgstr ""
217 217
218 -#: includes/class-cache.php:5874
218 +#: includes/class-cache.php:6048
219 219 msgid "xSpeed could not save the page-cache setting. Its file changes were rolled back."
220 220 msgstr ""
221 221
222 -#: includes/class-cache.php:5966
222 +#: includes/class-cache.php:6140
223 223 msgid "xSpeed could not safely remove its WP_CACHE setting. The cache remains enabled."
224 224 msgstr ""
225 225
226 -#: includes/class-cache.php:5981
226 +#: includes/class-cache.php:6155
227 227 msgid "xSpeed could not remove its page-cache drop-in. The cache remains enabled."
228 228 msgstr ""
229 229
230 -#: includes/class-cache.php:5982
230 +#: includes/class-cache.php:6156
231 231 msgid "xSpeed could not remove its page-cache drop-in, and could not put WP_CACHE back. The cache is not serving; check wp-config.php before changing the page cache again."
232 232 msgstr ""
233 233
234 -#: includes/class-cache.php:5999
234 +#: includes/class-cache.php:6173
235 235 msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. Remove the xSpeed block from .htaccess by hand before turning the page cache off."
236 236 msgstr ""
237 237
238 -#: includes/class-cache.php:6017
238 +#: includes/class-cache.php:6191
239 239 msgid "xSpeed could not remove its rewrite rules from .htaccess, which would keep serving cached pages. The cache remains enabled."
240 240 msgstr ""
241 241
242 -#: includes/class-cache.php:6018
242 +#: includes/class-cache.php:6192
243 243 msgid "xSpeed could not remove its rewrite rules from .htaccess, and could not restore the drop-in it had just removed. The cache is not serving, and the site may still return stale cached pages until the xSpeed block is removed from .htaccess by hand."
244 244 msgstr ""
245 245
246 -#: includes/class-cache.php:6029
246 +#: includes/class-cache.php:6203
247 247 msgid "xSpeed could not save the disabled state."
248 248 msgstr ""
249 249
250 -#: includes/class-cache.php:6033
250 +#: includes/class-cache.php:6207
251 251 msgid "xSpeed could not save the disabled state. The page cache was restored."
252 252 msgstr ""
253 253
254 254 #. translators: 1: the refusal reason, 2: a page-caching plugin's name.
255 -#: includes/class-cache.php:8218
255 +#: includes/class-cache.php:8451
256 256 #, php-format
257 257 msgid "%1$s %2$s is also active on this site — deactivate its page cache before enabling xSpeed."
258 258 msgstr ""
259 259
260 260 #. translators: 1: the refusal reason, 2: comma-separated page-caching plugin names.
261 -#: includes/class-cache.php:8225
261 +#: includes/class-cache.php:8458
262 262 #, php-format
263 263 msgid "%1$s These page caches are also active on this site: %2$s. Deactivate them before enabling xSpeed."
264 264 msgstr ""
265 265
266 266 #. translators: %s: comma-separated list of page-caching plugin names.
267 -#: includes/class-cache.php:8280
267 +#: includes/class-cache.php:8513
268 268 #, php-format
269 269 msgid "More than one page cache is active on this site (%s). Turn off the other page caches before enabling xSpeed."
270 270 msgstr ""
271 271
272 -#: includes/class-cache.php:8287
272 +#: includes/class-cache.php:8520
273 273 #, php-format
274 274 msgid "%s is active or owns advanced-cache.php. Deactivate its page cache before enabling xSpeed."
275 275 msgstr ""
276 276
277 -#: includes/class-cache.php:8290
277 +#: includes/class-cache.php:8523
278 278 msgid "WP_CACHE is true but no page-cache drop-in owner can be proved. xSpeed will not claim it."
279 279 msgstr ""
280 280
281 -#: includes/class-cache.php:8291
281 +#: includes/class-cache.php:8524
282 282 msgid "wp-config.php defines WP_CACHE more than once. Remove the duplicate before enabling the cache."
283 283 msgstr ""
284 284
285 -#: includes/class-cache.php:8292
285 +#: includes/class-cache.php:8525
286 286 msgid "WP_CACHE is set from an expression in wp-config.php. xSpeed will not rewrite it."
287 287 msgstr ""
288 288
289 -#: includes/class-cache.php:8293
289 +#: includes/class-cache.php:8526
290 290 msgid "WP_CACHE is defined inside a conditional in wp-config.php, so xSpeed cannot tell what it will be. Move it to a plain define before enabling the cache."
291 291 msgstr ""
292 292
293 -#: includes/class-cache.php:8294
293 +#: includes/class-cache.php:8527
294 294 msgid "wp-config.php cannot be read, so xSpeed cannot safely change page-cache ownership."
295 295 msgstr ""
296 296
297 -#: includes/class-cache.php:8295
297 +#: includes/class-cache.php:8528
298 298 msgid "advanced-cache.php is occupied but its owner cannot be proved. xSpeed will not replace it."
299 299 msgstr ""
300 300
301 -#: includes/class-cache.php:8296
301 +#: includes/class-cache.php:8529
302 302 msgid "advanced-cache.php cannot be read, so xSpeed cannot prove its owner."
303 303 msgstr ""
304 304
305 -#: includes/class-cache.php:8298
305 +#: includes/class-cache.php:8531
306 306 msgid "The page-cache field is occupied or cannot be verified. xSpeed will not change it."
307 307 msgstr ""
308 308
309 -#: includes/class-cache.php:8809
309 +#: includes/class-cache.php:9050
310 310 #: includes/class-purge-ui.php:278
311 311 #: includes/class-purge-ui.php:675
312 312 msgid "Unauthorized."
313 313 msgstr ""
@@ -429,8 +429,9 @@
429 429 msgid "Page cache lifetime %1$ds cannot be expressed in whole hours — importing as %2$dh."
430 430 msgstr ""
431 431
432 432 #: includes/class-migration.php:358
433 +#: includes/modules/ObjectCache/ObjectCacheModule.php:103
433 434 msgid "Redis password"
434 435 msgstr ""
435 436
436 437 #: includes/class-migration.php:359
@@ -555,9 +556,9 @@
555 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."
556 557 msgstr ""
557 558
558 559 #: includes/class-optimize-diagnosis.php:525
559 -msgid "Stylesheets load without blocking the first paint, so a theme with no critical CSS can flash unstyled for a moment. It also moves styling to after first paint, which can INCREASE layout shift on a page that already shifts."
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."
560 561 msgstr ""
561 562
562 563 #: includes/class-optimize-diagnosis.php:526
563 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."
@@ -729,33 +730,33 @@
729 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."
730 731 msgstr ""
731 732
732 733 #. translators: 1: number of URLs, 2: the sitemap failure detail.
733 -#: includes/class-preloader.php:151
734 +#: includes/class-preloader.php:260
734 735 #, php-format
735 736 msgid "Preloader queued %1$d URLs from the site content — %2$s"
736 737 msgstr ""
737 738
738 739 #. translators: %s: the sitemap failure detail.
739 -#: includes/class-preloader.php:159
740 +#: includes/class-preloader.php:268
740 741 #, php-format
741 742 msgid "Preloader could not start — %s"
742 743 msgstr ""
743 744
744 745 #. translators: 1: number of URLs, 2: plural suffix.
745 -#: includes/class-preloader.php:166
746 +#: includes/class-preloader.php:275
746 747 #, php-format
747 748 msgid "Preloader queued %1$d URL%2$s for warming."
748 749 msgstr ""
749 750
750 751 #. translators: 1: sitemap URL, 2: error detail.
751 -#: includes/class-preloader.php:622
752 +#: includes/class-preloader.php:745
752 753 #, php-format
753 754 msgid "Could not fetch the sitemap at %1$s — %2$s"
754 755 msgstr ""
755 756
756 757 #. translators: 1: sitemap URL, 2: HTTP status code.
757 -#: includes/class-preloader.php:635
758 +#: includes/class-preloader.php:758
758 759 #, php-format
759 760 msgid "Could not fetch the sitemap at %1$s — the server returned HTTP %2$d."
760 761 msgstr ""
761 762
@@ -783,9 +784,9 @@
783 784 msgstr ""
784 785
785 786 #: includes/class-purge-runner.php:269
786 787 #: includes/modules/Cdn/CdnModule.php:28
787 -#: includes/modules/Migration/MigrationModule.php:555
788 +#: includes/modules/Migration/MigrationModule.php:556
788 789 msgid "CDN"
789 790 msgstr ""
790 791
791 792 #. translators: 1: what asked for the purge, 2: number of files removed.
@@ -947,8 +948,9 @@
947 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."
948 949 msgstr ""
949 950
950 951 #: includes/class-recommendations.php:148
952 +#: includes/modules/Preloader/PreloaderModule.php:78
951 953 msgid "Enable preloader"
952 954 msgstr ""
953 955
954 956 #: includes/class-recommendations.php:158
@@ -986,9 +988,9 @@
986 988 #: includes/class-rest-api.php:352
987 989 msgid "The id argument is required."
988 990 msgstr ""
989 991
990 -#: includes/class-rest-api.php:472
992 +#: includes/class-rest-api.php:479
991 993 msgid "dashboard"
992 994 msgstr ""
993 995
994 996 #: includes/class-rest-manager.php:83
@@ -1061,13 +1063,13 @@
1061 1063 #: includes/class-score.php:412
1062 1064 msgid "GTmetrix returned an unreadable response."
1063 1065 msgstr ""
1064 1066
1065 -#: includes/class-server.php:744
1067 +#: includes/class-server.php:746
1066 1068 msgid "an unreadable advanced-cache.php"
1067 1069 msgstr ""
1068 1070
1069 -#: includes/class-server.php:754
1071 +#: includes/class-server.php:756
1070 1072 msgid "an unidentified advanced-cache.php"
1071 1073 msgstr ""
1072 1074
1073 1075 #. translators: %s: setting key.
@@ -1084,8 +1086,9 @@
1084 1086 msgstr ""
1085 1087
1086 1088 #: includes/class-video-facade.php:153
1087 1089 #: includes/class-video-facade.php:199
1090 +#: includes/class-video-facade.php:309
1088 1091 msgid "Play video"
1089 1092 msgstr ""
1090 1093
1091 1094 #: includes/modules/AIPrivacy/AIPrivacyModule.php:49
@@ -1092,25 +1095,25 @@
1092 1095 msgid "AI Privacy"
1093 1096 msgstr ""
1094 1097
1095 1098 #: includes/modules/AIPrivacy/AIPrivacyModule.php:51
1096 -msgid "Decide whether AI features may use your visitors' data, and what the consent banner says. Applies even before you install Pro."
1099 +msgid "Choose whether AI features may use visitor data, with or without Pro."
1097 1100 msgstr ""
1098 1101
1099 -#: includes/modules/AIPrivacy/AIPrivacyModule.php:70
1100 -msgid "Require consent before AI data collection"
1102 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:71
1103 +msgid "Ask visitors for consent"
1101 1104 msgstr ""
1102 1105
1103 -#: includes/modules/AIPrivacy/AIPrivacyModule.php:71
1104 -msgid "When ON, AI-powered features only record data after a visitor accepts the consent banner. When OFF, they collect from every visitor — only legal in regions without GDPR-style consent rules. The setting applies even if Pro is not installed (so a later Pro upgrade respects whichever choice you made): privacy is a fundamental right, not a paid feature."
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."
1105 1108 msgstr ""
1106 1109
1107 -#: includes/modules/AIPrivacy/AIPrivacyModule.php:76
1110 +#: includes/modules/AIPrivacy/AIPrivacyModule.php:77
1108 1111 msgid "Consent banner text"
1109 1112 msgstr ""
1110 1113
1111 -#: includes/modules/AIPrivacy/AIPrivacyModule.php:77
1112 -msgid "Shown in the cookie consent banner. Keep it factual — what you collect (page navigation, performance metrics) and why."
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."
1113 1116 msgstr ""
1114 1117
1115 1118 #: includes/modules/Bloat/BloatModule.php:38
1116 1119 msgid "Bloat Control"
@@ -1116,260 +1119,316 @@
1116 1119 msgid "Bloat Control"
1117 1120 msgstr ""
1118 1121
1119 1122 #: includes/modules/Bloat/BloatModule.php:40
1120 -msgid "Turn off WordPress defaults you do not use — saves bytes, requests, and attack surface."
1123 +msgid "Turns off WordPress features you do not use, so pages load less."
1121 1124 msgstr ""
1122 1125
1123 -#: includes/modules/Bloat/BloatModule.php:49
1124 -msgid "Disable Dashicons on Frontend"
1125 -msgstr ""
1126 -
1127 1126 #: includes/modules/Bloat/BloatModule.php:50
1128 -msgid "Drop the dashicons stylesheet from non-admin pages. Most themes do not need it. Saves ~45 KB per visitor."
1127 +msgid "Disable emojis"
1129 1128 msgstr ""
1130 1129
1131 -#: includes/modules/Bloat/BloatModule.php:55
1132 -msgid "Disable oEmbed Discovery + wp-embed.min.js"
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."
1133 1132 msgstr ""
1134 1133
1135 1134 #: includes/modules/Bloat/BloatModule.php:56
1136 -msgid "Strip the auto-embed handlers + the embed script. Posts that paste a YouTube URL will no longer auto-render the player — embed it via a block instead. Saves a request per page."
1135 +msgid "Remove Dashicons for visitors"
1137 1136 msgstr ""
1138 1137
1139 -#: includes/modules/Bloat/BloatModule.php:61
1140 -msgid "Disable RSS Feeds"
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."
1141 1140 msgstr ""
1142 1141
1143 1142 #: includes/modules/Bloat/BloatModule.php:62
1144 -msgid "Return a 404 on /feed/ and similar endpoints. Useful for sites that do not publish feeds and want to cut feed-fetcher traffic."
1143 +msgid "Disable auto-embeds"
1145 1144 msgstr ""
1146 1145
1147 -#: includes/modules/Bloat/BloatModule.php:67
1148 -msgid "Disable XML-RPC"
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."
1149 1148 msgstr ""
1150 1149
1151 1150 #: includes/modules/Bloat/BloatModule.php:68
1152 -msgid "Disable the legacy xmlrpc.php endpoint. Cuts pingback brute-force noise; safe to disable unless you use a remote WP client (Jetpack, WordPress mobile app)."
1151 +msgid "Disable RSS feeds"
1153 1152 msgstr ""
1154 1153
1155 -#: includes/modules/Bloat/BloatModule.php:73
1156 -msgid "Strip jQuery Migrate on Frontend"
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."
1157 1156 msgstr ""
1158 1157
1159 1158 #: includes/modules/Bloat/BloatModule.php:74
1160 -msgid "Remove the jquery-migrate compatibility shim from non-admin pages. Saves ~10 KB; safe on modern themes / plugins."
1159 +msgid "Disable XML-RPC"
1161 1160 msgstr ""
1162 1161
1163 -#: includes/modules/Bloat/BloatModule.php:79
1164 -msgid "Strip Block-Editor Styles on Frontend"
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."
1165 1164 msgstr ""
1166 1165
1167 1166 #: includes/modules/Bloat/BloatModule.php:80
1168 -msgid "Drop editor-only stylesheets (wp-editor, wp-components, and friends) from anonymous pages. A plugin that enqueues them on the frontend usually does so by accident — they can add hundreds of KB of render-blocking CSS. Frontend block styles (wp-block-library) are never touched."
1167 +msgid "Remove jQuery Migrate"
1169 1168 msgstr ""
1170 1169
1171 -#: includes/modules/Bloat/BloatModule.php:85
1172 -msgid "Restrict REST API to Logged-In Users"
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."
1173 1172 msgstr ""
1174 1173
1175 1174 #: includes/modules/Bloat/BloatModule.php:86
1176 -msgid "Block /wp-json/ for anonymous requests. WooCommerce checkout, contact-form submissions, and many block-editor previews need anonymous REST — keep this off unless you know your site does not depend on it."
1175 +msgid "Remove editor styles for visitors"
1177 1176 msgstr ""
1178 1177
1179 -#: includes/modules/Bloat/BloatModule.php:239
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
1180 1231 msgid "Feeds are disabled."
1181 1232 msgstr ""
1182 1233
1183 -#: includes/modules/Bloat/BloatModule.php:288
1234 +#: includes/modules/Bloat/BloatModule.php:450
1184 1235 msgid "Anonymous REST access is disabled on this site."
1185 1236 msgstr ""
1186 1237
1187 1238 #: includes/modules/BrowserCache/BrowserCacheModule.php:32
1188 -#: includes/modules/Migration/MigrationModule.php:551
1239 +#: includes/modules/Migration/MigrationModule.php:552
1189 1240 msgid "Browser Cache"
1190 1241 msgstr ""
1191 1242
1192 1243 #: includes/modules/BrowserCache/BrowserCacheModule.php:34
1193 -msgid "Tell browsers (and intermediate CDNs) how long to cache static assets and HTML."
1244 +msgid "Tells browsers and CDNs how long to keep your files and pages."
1194 1245 msgstr ""
1195 1246
1196 -#: includes/modules/BrowserCache/BrowserCacheModule.php:43
1247 +#: includes/modules/BrowserCache/BrowserCacheModule.php:44
1197 1248 msgid "Enable browser cache headers"
1198 1249 msgstr ""
1199 1250
1200 -#: includes/modules/BrowserCache/BrowserCacheModule.php:44
1201 -msgid "On Apache/LiteSpeed this writes Cache-Control + Expires rules into .htaccess. On nginx it just stores the settings — you paste the snippet into your server block manually."
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."
1202 1253 msgstr ""
1203 1254
1204 -#: includes/modules/BrowserCache/BrowserCacheModule.php:51
1205 -msgid "Static asset TTL (seconds)"
1255 +#: includes/modules/BrowserCache/BrowserCacheModule.php:52
1256 +msgid "File lifetime (seconds)"
1206 1257 msgstr ""
1207 1258
1208 -#: includes/modules/BrowserCache/BrowserCacheModule.php:53
1209 -msgid "Cache lifetime for CSS, JS, fonts, images. Defaults to 1 year + immutable (the industry-standard \"fingerprinted assets never change\" pattern)."
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."
1210 1261 msgstr ""
1211 1262
1212 -#: includes/modules/BrowserCache/BrowserCacheModule.php:61
1213 -msgid "HTML TTL (seconds)"
1263 +#: includes/modules/BrowserCache/BrowserCacheModule.php:62
1264 +msgid "Page lifetime (seconds)"
1214 1265 msgstr ""
1215 1266
1216 -#: includes/modules/BrowserCache/BrowserCacheModule.php:63
1217 -msgid "Cache lifetime for the HTML document itself. Keep short (default 1h) so post edits roll out same-day."
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."
1218 1269 msgstr ""
1219 1270
1220 -#: includes/modules/BrowserCache/BrowserCacheModule.php:127
1271 +#: includes/modules/BrowserCache/BrowserCacheModule.php:128
1221 1272 msgid "Browser cache is enabled but not active on the server"
1222 1273 msgstr ""
1223 1274
1224 -#: includes/modules/BrowserCache/BrowserCacheModule.php:128
1275 +#: includes/modules/BrowserCache/BrowserCacheModule.php:129
1225 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."
1226 1277 msgstr ""
1227 1278
1228 -#: includes/modules/BrowserCache/BrowserCacheModule.php:132
1229 -#: includes/modules/Gzip/GzipModule.php:163
1279 +#: includes/modules/BrowserCache/BrowserCacheModule.php:133
1280 +#: includes/modules/Gzip/GzipModule.php:164
1230 1281 msgid "Go to the snippet"
1231 1282 msgstr ""
1232 1283
1233 -#: includes/modules/Cache/CacheModule.php:130
1234 -#: includes/modules/Migration/MigrationModule.php:547
1284 +#: includes/modules/Cache/CacheModule.php:169
1285 +#: includes/modules/Migration/MigrationModule.php:548
1235 1286 msgid "Page Cache"
1236 1287 msgstr ""
1237 1288
1238 -#: includes/modules/Cache/CacheModule.php:132
1239 -msgid "Page caching for non-logged-in visitors."
1289 +#: includes/modules/Cache/CacheModule.php:171
1290 +msgid "Saves each page as a file and serves it to logged-out visitors."
1240 1291 msgstr ""
1241 1292
1242 -#: includes/modules/Cache/CacheModule.php:158
1243 -msgid "Cache Expiry (hours)"
1293 +#: includes/modules/Cache/CacheModule.php:198
1294 +msgid "Cache expiry (hours)"
1244 1295 msgstr ""
1245 1296
1246 -#: includes/modules/Cache/CacheModule.php:160
1247 -msgid "How long cached pages live before regenerating. 1 to 720 hours (30 days)."
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)."
1248 1299 msgstr ""
1249 1300
1250 -#: includes/modules/Cache/CacheModule.php:190
1301 +#: includes/modules/Cache/CacheModule.php:230
1251 1302 msgid "Excluded URLs"
1252 1303 msgstr ""
1253 1304
1254 -#: includes/modules/Cache/CacheModule.php:191
1255 -msgid "One pattern per line. Plain text matches anywhere in the URL (e.g. /cart). Use glob for anchored matches (/cart/* matches /cart/items but not /foo/cart/bar; *.pdf matches PDFs). Prefix with ~ for a raw regex (e.g. ~wp-.*\\.php)."
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."
1256 1307 msgstr ""
1257 1308
1258 -#: includes/modules/Cache/CacheModule.php:200
1259 -msgid "Excluded Cookies"
1309 +#: includes/modules/Cache/CacheModule.php:240
1310 +msgid "Excluded cookies"
1260 1311 msgstr ""
1261 1312
1262 -#: includes/modules/Cache/CacheModule.php:201
1263 -msgid "Skip cache for any visitor whose request carries a cookie whose NAME matches one of these patterns. Plain text = \"contains\"; glob (woocommerce_*) and ~regex (~wordpress_[a-f0-9]+) supported. One per line."
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."
1264 1315 msgstr ""
1265 1316
1266 -#: includes/modules/Cache/CacheModule.php:207
1267 -msgid "Bypass User Agents"
1317 +#: includes/modules/Cache/CacheModule.php:247
1318 +msgid "Excluded browsers and bots"
1268 1319 msgstr ""
1269 1320
1270 -#: includes/modules/Cache/CacheModule.php:208
1271 -msgid "Substring match against the visitor User-Agent. Matched UAs bypass cache (useful for screenshot bots, internal previews, monitoring). Glob + ~regex supported. One per line."
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."
1272 1323 msgstr ""
1273 1324
1274 -#: includes/modules/Cache/CacheModule.php:219
1275 -msgid "Ignored Query Parameters"
1325 +#: includes/modules/Cache/CacheModule.php:259
1326 +msgid "Ignored query parameters"
1276 1327 msgstr ""
1277 1328
1278 -#: includes/modules/Cache/CacheModule.php:220
1279 -msgid "Query keys removed from the URL before computing the cache key, so /post?utm_source=x and /post share a cache entry. Defaults cover the common analytics + ad + session params. Each entry matches a whole param name — plain text is an exact name, and glob (utm_*) or ~regex are anchored too, so \"ref\" does not also match \"preference\". One per line."
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."
1280 1331 msgstr ""
1281 1332
1282 -#: includes/modules/Cache/CacheModule.php:225
1283 -msgid "Purge After Updates"
1333 +#: includes/modules/Cache/CacheModule.php:266
1334 +msgid "Clear cache after updates"
1284 1335 msgstr ""
1285 1336
1286 -#: includes/modules/Cache/CacheModule.php:226
1287 -msgid "Clear the page cache when a plugin, theme or WordPress core is updated. Cached HTML is produced by the code being replaced, so leaving it in place serves pre-update markup — and links to minified assets that no longer exist — until the cache expires. Translation updates are ignored, since a language pack changes no markup a cached page depends on. Updates to xSpeed itself always purge, regardless of this setting."
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."
1288 1339 msgstr ""
1289 1340
1290 -#: includes/modules/Cache/CacheModule.php:231
1291 -msgid "Separate Mobile Cache"
1341 +#: includes/modules/Cache/CacheModule.php:272
1342 +msgid "Separate mobile cache"
1292 1343 msgstr ""
1293 1344
1294 -#: includes/modules/Cache/CacheModule.php:232
1295 -msgid "Keep mobile and desktop responses in separate cache buckets. Turn on for AMP, mobile-specific themes (WPtouch / Jetpack mobile theme), or any setup that serves different HTML by device."
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."
1296 1347 msgstr ""
1297 1348
1298 -#: includes/modules/Cache/CacheModule.php:264
1299 -msgid "Cache In Front Of This Site"
1349 +#: includes/modules/Cache/CacheModule.php:305
1350 +msgid "CDN or proxy in front"
1300 1351 msgstr ""
1301 1352
1302 -#: includes/modules/Cache/CacheModule.php:265
1303 -msgid "Ask a CDN or proxy in front of your site not to store pages xSpeed refused to cache. Leave it on Detect automatically unless you know what is in front of you; the marked providers ignore origin headers until you configure them to respect it."
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."
1304 1355 msgstr ""
1305 1356
1306 -#: includes/modules/Cache/CacheModule.php:266
1357 +#: includes/modules/Cache/CacheModule.php:308
1307 1358 msgid "Cache in front of this site"
1308 1359 msgstr ""
1309 1360
1310 -#: includes/modules/Cache/CacheModule.php:267
1361 +#: includes/modules/Cache/CacheModule.php:309
1311 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."
1312 1363 msgstr ""
1313 1364
1314 -#: includes/modules/Cache/CacheModule.php:273
1315 -msgid "Custom Edge Headers"
1365 +#: includes/modules/Cache/CacheModule.php:315
1366 +msgid "Custom CDN headers"
1316 1367 msgstr ""
1317 1368
1318 -#: includes/modules/Cache/CacheModule.php:275
1319 -msgid "One header per line, as Name: value — for example \"Surrogate-Control: no-store\". Lines starting with # are ignored."
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."
1320 1371 msgstr ""
1321 1372
1322 -#: includes/modules/Cache/CacheModule.php:276
1373 +#: includes/modules/Cache/CacheModule.php:319
1323 1374 msgid "Custom edge headers"
1324 1375 msgstr ""
1325 1376
1326 -#: includes/modules/Cache/CacheModule.php:277
1377 +#: includes/modules/Cache/CacheModule.php:320
1327 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."
1328 1379 msgstr ""
1329 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 +
1330 1389 #: includes/modules/CacheCoverage/CacheCoverageModule.php:36
1331 1390 msgid "Advanced Cache"
1332 1391 msgstr ""
1333 1392
1334 1393 #: includes/modules/CacheCoverage/CacheCoverageModule.php:38
1335 -msgid "Cache 404s, search, feeds, and the REST API, plus custom rules and maintenance bypass."
1394 +msgid "Caches more page types: 404s, search, feeds and the REST API."
1336 1395 msgstr ""
1337 1396
1338 1397 #: includes/modules/Cdn/CdnModule.php:30
1339 -msgid "Serve static assets (images, fonts, CSS, JS) from a pull-zone CDN host like BunnyCDN, KeyCDN, or your own."
1398 +msgid "Serve images, fonts, CSS and JS from a CDN such as BunnyCDN or KeyCDN."
1340 1399 msgstr ""
1341 1400
1342 -#: includes/modules/Cdn/CdnModule.php:39
1401 +#: includes/modules/Cdn/CdnModule.php:40
1343 1402 msgid "Enable CDN"
1344 1403 msgstr ""
1345 1404
1346 -#: includes/modules/Cdn/CdnModule.php:40
1347 -msgid "Rewrite static asset URLs to the CDN hostname below. Your CDN must be a pull-zone configured to fetch from this site."
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."
1348 1407 msgstr ""
1349 1408
1350 -#: includes/modules/Cdn/CdnModule.php:45
1409 +#: includes/modules/Cdn/CdnModule.php:46
1351 1410 msgid "CDN URL"
1352 1411 msgstr ""
1353 1412
1354 -#: includes/modules/Cdn/CdnModule.php:46
1355 -msgid "CDN hostname, e.g. cdn.example.com. https:// and trailing slashes are stripped automatically."
1413 +#: includes/modules/Cdn/CdnModule.php:47
1414 +msgid "The CDN address, for example cdn.example.com. xSpeed removes https:// and any trailing slash."
1356 1415 msgstr ""
1357 1416
1358 -#: includes/modules/Cdn/CdnModule.php:53
1359 -msgid "Included File Extensions"
1417 +#: includes/modules/Cdn/CdnModule.php:54
1418 +msgid "File types to serve"
1360 1419 msgstr ""
1361 1420
1362 -#: includes/modules/Cdn/CdnModule.php:54
1363 -msgid "Only URLs ending in these extensions are rewritten. Defaults cover images, fonts, CSS, JS, and common media."
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."
1364 1423 msgstr ""
1365 1424
1366 -#: includes/modules/Cdn/CdnModule.php:61
1367 -msgid "Excluded Patterns"
1425 +#: includes/modules/Cdn/CdnModule.php:62
1426 +msgid "Excluded paths"
1368 1427 msgstr ""
1369 1428
1370 -#: includes/modules/Cdn/CdnModule.php:62
1371 -msgid "Glob patterns matched against the URL path. Matching URLs stay on the origin. Examples: /wp-admin/*, *.pdf, /private/*"
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."
1372 1431 msgstr ""
1373 1432
1374 1433 #: includes/modules/Cloudflare/CloudflareModule.php:77
1375 1434 msgid "Cloudflare"
@@ -1375,75 +1434,75 @@
1375 1434 msgid "Cloudflare"
1376 1435 msgstr ""
1377 1436
1378 1437 #: includes/modules/Cloudflare/CloudflareModule.php:79
1379 -msgid "Connect a Cloudflare zone for automatic edge purging when xSpeed clears its cache, plus a dev-mode toggle."
1438 +msgid "Clear the Cloudflare cache whenever xSpeed clears its own cache."
1380 1439 msgstr ""
1381 1440
1382 -#: includes/modules/Cloudflare/CloudflareModule.php:102
1383 -msgid "Enable Cloudflare integration"
1384 -msgstr ""
1385 -
1386 1441 #: includes/modules/Cloudflare/CloudflareModule.php:103
1387 -msgid "Use the credentials below to verify your zone and run purges."
1442 +msgid "Connect Cloudflare"
1388 1443 msgstr ""
1389 1444
1390 -#: includes/modules/Cloudflare/CloudflareModule.php:113
1391 -msgid "Authentication"
1445 +#: includes/modules/Cloudflare/CloudflareModule.php:104
1446 +msgid "Lets xSpeed clear the Cloudflare cache for your domain, using the details below."
1392 1447 msgstr ""
1393 1448
1394 1449 #: includes/modules/Cloudflare/CloudflareModule.php:114
1395 -msgid "API Tokens (scoped, recommended) or the legacy Global API Key with your account email."
1450 +msgid "Authentication"
1396 1451 msgstr ""
1397 1452
1398 -#: includes/modules/Cloudflare/CloudflareModule.php:120
1399 -msgid "API Token"
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."
1400 1455 msgstr ""
1401 1456
1402 1457 #: includes/modules/Cloudflare/CloudflareModule.php:121
1403 -msgid "Create a token at dash.cloudflare.com → My Profile → API Tokens. Needs \"Zone → Cache Purge\" + \"Zone Settings\" permissions."
1458 +msgid "API Token"
1404 1459 msgstr ""
1405 1460
1406 -#: includes/modules/Cloudflare/CloudflareModule.php:129
1407 -msgid "Account Email"
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."
1408 1463 msgstr ""
1409 1464
1410 1465 #: includes/modules/Cloudflare/CloudflareModule.php:130
1411 -msgid "Only used when Authentication is set to Global API Key."
1466 +msgid "Account email"
1412 1467 msgstr ""
1413 1468
1414 -#: includes/modules/Cloudflare/CloudflareModule.php:136
1415 -msgid "Global API Key"
1469 +#: includes/modules/Cloudflare/CloudflareModule.php:131
1470 +msgid "The email address of your Cloudflare account."
1416 1471 msgstr ""
1417 1472
1418 1473 #: includes/modules/Cloudflare/CloudflareModule.php:137
1419 -msgid "Found at dash.cloudflare.com → My Profile → API Tokens → Global API Key."
1474 +msgid "Global API Key"
1420 1475 msgstr ""
1421 1476
1422 -#: includes/modules/Cloudflare/CloudflareModule.php:143
1423 -msgid "Zone ID"
1477 +#: includes/modules/Cloudflare/CloudflareModule.php:138
1478 +msgid "Find it at dash.cloudflare.com → My Profile → API Tokens → Global API Key."
1424 1479 msgstr ""
1425 1480
1426 1481 #: includes/modules/Cloudflare/CloudflareModule.php:144
1427 -msgid "The 32-character hex Zone ID from your domain overview page."
1482 +msgid "Zone ID"
1428 1483 msgstr ""
1429 1484
1430 -#: includes/modules/Cloudflare/CloudflareModule.php:150
1431 -msgid "Auto-purge Cloudflare on xSpeed purge"
1485 +#: includes/modules/Cloudflare/CloudflareModule.php:145
1486 +msgid "The 32-character Zone ID shown on your domain overview page in Cloudflare."
1432 1487 msgstr ""
1433 1488
1434 1489 #: includes/modules/Cloudflare/CloudflareModule.php:151
1435 -msgid "When xSpeed clears its own cache (post save, settings change, manual purge), trigger a Cloudflare purge too."
1490 +msgid "Clear Cloudflare with xSpeed"
1436 1491 msgstr ""
1437 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 +
1438 1497 #. translators: %d: number of URLs that changed at once.
1439 -#: includes/modules/Cloudflare/CloudflareModule.php:480
1498 +#: includes/modules/Cloudflare/CloudflareModule.php:481
1440 1499 #, php-format
1441 1500 msgid "Purging the whole Cloudflare zone: %d URLs changed at once, too many to purge individually"
1442 1501 msgstr ""
1443 1502
1444 1503 #. translators: %d: number of URLs.
1445 -#: includes/modules/Cloudflare/CloudflareModule.php:541
1504 +#: includes/modules/Cloudflare/CloudflareModule.php:542
1446 1505 #, php-format
1447 1506 msgid "Skipped a queued Cloudflare purge of %d URL: the connection is no longer available"
1448 1507 msgid_plural "Skipped a queued Cloudflare purge of %d URLs: the connection is no longer available"
1449 1508 msgstr[0] ""
@@ -1449,9 +1508,9 @@
1449 1508 msgstr[0] ""
1450 1509 msgstr[1] ""
1451 1510
1452 1511 #. translators: %d: number of URLs purged.
1453 -#: includes/modules/Cloudflare/CloudflareModule.php:572
1512 +#: includes/modules/Cloudflare/CloudflareModule.php:573
1454 1513 #, php-format
1455 1514 msgid "Purged %d URL from the Cloudflare edge cache"
1456 1515 msgid_plural "Purged %d URLs from the Cloudflare edge cache"
1457 1516 msgstr[0] ""
@@ -1457,62 +1516,62 @@
1457 1516 msgstr[0] ""
1458 1517 msgstr[1] ""
1459 1518
1460 1519 #. translators: 1: number of URLs, 2: failure reason.
1461 -#: includes/modules/Cloudflare/CloudflareModule.php:588
1520 +#: includes/modules/Cloudflare/CloudflareModule.php:589
1462 1521 #, php-format
1463 1522 msgid "Cloudflare URL purge failed (%1$d URL(s)): %2$s"
1464 1523 msgstr ""
1465 1524
1466 -#: includes/modules/Cloudflare/CloudflareModule.php:590
1467 -#: includes/modules/Cloudflare/CloudflareModule.php:657
1525 +#: includes/modules/Cloudflare/CloudflareModule.php:591
1526 +#: includes/modules/Cloudflare/CloudflareModule.php:658
1468 1527 msgid "unknown error"
1469 1528 msgstr ""
1470 1529
1471 -#: includes/modules/Cloudflare/CloudflareModule.php:606
1530 +#: includes/modules/Cloudflare/CloudflareModule.php:607
1472 1531 msgid "the Cloudflare integration is switched off"
1473 1532 msgstr ""
1474 1533
1475 -#: includes/modules/Cloudflare/CloudflareModule.php:609
1534 +#: includes/modules/Cloudflare/CloudflareModule.php:610
1476 1535 msgid "no zone ID or API credentials are configured"
1477 1536 msgstr ""
1478 1537
1479 1538 #. translators: %s: what asked for the purge.
1480 -#: includes/modules/Cloudflare/CloudflareModule.php:645
1539 +#: includes/modules/Cloudflare/CloudflareModule.php:646
1481 1540 #, php-format
1482 1541 msgid "Purged the Cloudflare edge cache (%s)"
1483 1542 msgstr ""
1484 1543
1485 1544 #. translators: 1: what asked for the purge, 2: failure reason.
1486 -#: includes/modules/Cloudflare/CloudflareModule.php:655
1545 +#: includes/modules/Cloudflare/CloudflareModule.php:656
1487 1546 #, php-format
1488 1547 msgid "Cloudflare purge failed (%1$s): %2$s"
1489 1548 msgstr ""
1490 1549
1491 -#: includes/modules/Cloudflare/CloudflareModule.php:727
1550 +#: includes/modules/Cloudflare/CloudflareModule.php:728
1492 1551 msgid "Cloudflare is not fully configured."
1493 1552 msgstr ""
1494 1553
1495 -#: includes/modules/Cloudflare/CloudflareModule.php:728
1554 +#: includes/modules/Cloudflare/CloudflareModule.php:729
1496 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."
1497 1556 msgstr ""
1498 1557
1499 -#: includes/modules/Cloudflare/CloudflareModule.php:741
1558 +#: includes/modules/Cloudflare/CloudflareModule.php:742
1500 1559 msgid "Cloudflare purge is failing."
1501 1560 msgstr ""
1502 1561
1503 1562 #. translators: %s: the Cloudflare API error message, or empty.
1504 -#: includes/modules/Cloudflare/CloudflareModule.php:744
1563 +#: includes/modules/Cloudflare/CloudflareModule.php:745
1505 1564 #, php-format
1506 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."
1507 1566 msgstr ""
1508 1567
1509 -#: includes/modules/Cloudflare/CloudflareModule.php:753
1568 +#: includes/modules/Cloudflare/CloudflareModule.php:754
1510 1569 msgid "Cloudflare credentials were rejected."
1511 1570 msgstr ""
1512 1571
1513 1572 #. translators: %s: the Cloudflare API error message, or empty.
1514 -#: includes/modules/Cloudflare/CloudflareModule.php:756
1573 +#: includes/modules/Cloudflare/CloudflareModule.php:757
1515 1574 #, php-format
1516 1575 msgid "The saved credentials could not verify this zone%s. Auto-purge will not work until this is fixed."
1517 1576 msgstr ""
1518 1577
@@ -1520,28 +1579,54 @@
1520 1579 msgid "Database"
1521 1580 msgstr ""
1522 1581
1523 1582 #: includes/modules/Database/DatabaseModule.php:32
1524 -msgid "Scan + clean WordPress bloat (revisions, spam, transients, orphan meta) and optimize tables."
1583 +msgid "Remove old revisions, spam and other leftovers, and optimize database tables."
1525 1584 msgstr ""
1526 1585
1527 -#: includes/modules/Database/DatabaseModule.php:49
1528 -msgid "Auto-Cleanup Schedule"
1586 +#: includes/modules/Database/DatabaseModule.php:50
1587 +msgid "Automatic cleanup"
1529 1588 msgstr ""
1530 1589
1531 -#: includes/modules/Database/DatabaseModule.php:50
1532 -msgid "How often to run cleanup automatically. Manual means cleanup only runs when you press the button."
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."
1533 1592 msgstr ""
1534 1593
1535 -#: includes/modules/Database/DatabaseModule.php:56
1536 -msgid "Auto-Cleanup Types"
1594 +#: includes/modules/Database/DatabaseModule.php:57
1595 +msgid "What to clean automatically"
1537 1596 msgstr ""
1538 1597
1539 -#: includes/modules/Database/DatabaseModule.php:57
1540 -msgid "Which cleanup categories run on the schedule above. Leave empty to keep auto-cleanup disabled even if a schedule is set."
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."
1541 1600 msgstr ""
1542 1601
1543 -#: includes/modules/Database/DatabaseModule.php:149
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
1544 1629 msgid "Provide at least one cleanup type."
1545 1630 msgstr ""
1546 1631
1547 1632 #: includes/modules/Fonts/FontsModule.php:35
@@ -1548,29 +1633,29 @@
1548 1633 msgid "Fonts"
1549 1634 msgstr ""
1550 1635
1551 1636 #: includes/modules/Fonts/FontsModule.php:37
1552 -msgid "Stop web fonts from blocking text. Adds display=swap to Google Fonts and preloads the fonts you mark critical."
1637 +msgid "Shows text right away while web fonts load, and preloads key fonts."
1553 1638 msgstr ""
1554 1639
1555 -#: includes/modules/Fonts/FontsModule.php:46
1556 -msgid "Add font-display: swap"
1640 +#: includes/modules/Fonts/FontsModule.php:47
1641 +msgid "Show text while fonts load"
1557 1642 msgstr ""
1558 1643
1559 -#: includes/modules/Fonts/FontsModule.php:47
1560 -msgid "Append display=swap to Google Fonts URLs so text renders immediately in a fallback face while the web font loads. Blocking values already on the URL (auto, block) are rewritten to swap; a deliberate non-blocking choice (fallback, optional) is left alone."
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."
1561 1646 msgstr ""
1562 1647
1563 -#: includes/modules/Fonts/FontsModule.php:53
1564 -msgid "Preload Font URLs"
1648 +#: includes/modules/Fonts/FontsModule.php:54
1649 +msgid "Fonts to preload"
1565 1650 msgstr ""
1566 1651
1567 -#: includes/modules/Fonts/FontsModule.php:54
1568 -msgid "One absolute font URL per line (woff2/woff/ttf/otf). Each becomes a <link rel=\"preload\" as=\"font\" crossorigin> in the head so the browser starts downloading before the CSS parses. Use only for fonts that render above the fold."
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."
1569 1654 msgstr ""
1570 1655
1571 1656 #: includes/modules/Gzip/GzipModule.php:35
1572 -#: includes/modules/Migration/MigrationModule.php:553
1657 +#: includes/modules/Migration/MigrationModule.php:554
1573 1658 msgid "Compression"
1574 1659 msgstr ""
1575 1660
1576 1661 #: includes/modules/Gzip/GzipModule.php:36
@@ -1577,56 +1662,56 @@
1577 1662 msgid "GZIP"
1578 1663 msgstr ""
1579 1664
1580 1665 #: includes/modules/Gzip/GzipModule.php:38
1581 -msgid "Compress responses to reduce transfer size."
1666 +msgid "Compresses pages and files so they download faster."
1582 1667 msgstr ""
1583 1668
1584 -#: includes/modules/Gzip/GzipModule.php:52
1585 -msgid "Enable GZIP Compression"
1669 +#: includes/modules/Gzip/GzipModule.php:53
1670 +msgid "Enable Gzip compression"
1586 1671 msgstr ""
1587 1672
1588 -#: includes/modules/Gzip/GzipModule.php:74
1589 -msgid "Compress responses before sending them. We write the .htaccess rules automatically on this server."
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."
1590 1675 msgstr ""
1591 1676
1592 -#: includes/modules/Gzip/GzipModule.php:77
1593 -msgid "Compress responses before sending them. nginx cannot be configured from WordPress, so the directives ship in the unified server-block snippet — see the notice below."
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."
1594 1679 msgstr ""
1595 1680
1596 -#: includes/modules/Gzip/GzipModule.php:79
1597 -msgid "Compress responses before sending them. On this server the directives have to be added to your server config by hand — see the notice below."
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."
1598 1683 msgstr ""
1599 1684
1600 -#: includes/modules/Gzip/GzipModule.php:154
1685 +#: includes/modules/Gzip/GzipModule.php:155
1601 1686 msgid "GZIP requires server config on nginx"
1602 1687 msgstr ""
1603 1688
1604 -#: includes/modules/Gzip/GzipModule.php:155
1689 +#: includes/modules/Gzip/GzipModule.php:156
1605 1690 msgid "GZIP is being served by nginx"
1606 1691 msgstr ""
1607 1692
1608 -#: includes/modules/Gzip/GzipModule.php:157
1693 +#: includes/modules/Gzip/GzipModule.php:158
1609 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."
1610 1695 msgstr ""
1611 1696
1612 -#: includes/modules/Gzip/GzipModule.php:158
1697 +#: includes/modules/Gzip/GzipModule.php:159
1613 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."
1614 1699 msgstr ""
1615 1700
1616 -#: includes/modules/Gzip/GzipModule.php:186
1701 +#: includes/modules/Gzip/GzipModule.php:187
1617 1702 msgid "GZIP enabled but not active on the server"
1618 1703 msgstr ""
1619 1704
1620 -#: includes/modules/Gzip/GzipModule.php:187
1705 +#: includes/modules/Gzip/GzipModule.php:188
1621 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."
1622 1707 msgstr ""
1623 1708
1624 -#: includes/modules/Gzip/GzipModule.php:197
1709 +#: includes/modules/Gzip/GzipModule.php:198
1625 1710 msgid "GZIP requires server config on this server"
1626 1711 msgstr ""
1627 1712
1628 -#: includes/modules/Gzip/GzipModule.php:198
1713 +#: includes/modules/Gzip/GzipModule.php:199
1629 1714 msgid "xSpeed can only auto-configure GZIP on Apache and LiteSpeed (via .htaccess). Paste the snippet below into your server config and reload."
1630 1715 msgstr ""
1631 1716
1632 1717 #: includes/modules/Health/HealthModule.php:66
@@ -1632,75 +1717,111 @@
1632 1717 #: includes/modules/Health/HealthModule.php:66
1633 1718 msgid "xSpeed static-rewrite cache"
1634 1719 msgstr ""
1635 1720
1636 -#: includes/modules/Health/HealthModule.php:81
1721 +#: includes/modules/Health/HealthModule.php:125
1637 1722 msgid "xSpeed static-rewrite cache is active"
1638 1723 msgstr ""
1639 1724
1640 -#: includes/modules/Health/HealthModule.php:84
1725 +#: includes/modules/Health/HealthModule.php:128
1641 1726 #: assets/admin.js
1642 1727 msgid "Performance"
1643 1728 msgstr ""
1644 1729
1645 -#: includes/modules/Health/HealthModule.php:87
1730 +#: includes/modules/Health/HealthModule.php:131
1646 1731 msgid "Cache hits bypass PHP for ~5-15ms TTFB."
1647 1732 msgstr ""
1648 1733
1649 -#: includes/modules/Health/HealthModule.php:93
1734 +#: includes/modules/Health/HealthModule.php:137
1650 1735 msgid "xSpeed cache is disabled"
1651 1736 msgstr ""
1652 1737
1653 -#: includes/modules/Health/HealthModule.php:95
1738 +#: includes/modules/Health/HealthModule.php:139
1654 1739 msgid "Enable the page cache in the xSpeed dashboard to start serving cached HTML for non-logged-in visitors."
1655 1740 msgstr ""
1656 1741
1657 -#: includes/modules/Health/HealthModule.php:108
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
1658 1751 msgid "xSpeed is serving cache hits through PHP"
1659 1752 msgstr ""
1660 1753
1661 -#: includes/modules/Health/HealthModule.php:110
1754 +#: includes/modules/Health/HealthModule.php:161
1662 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."
1663 1756 msgstr ""
1664 1757
1665 -#: includes/modules/Health/HealthModule.php:112
1758 +#: includes/modules/Health/HealthModule.php:163
1759 +#: includes/modules/Health/HealthModule.php:202
1666 1760 msgid "xSpeed static rewrite is off (Separate Mobile Cache)"
1667 1761 msgstr ""
1668 1762
1669 -#: includes/modules/Health/HealthModule.php:114
1763 +#: includes/modules/Health/HealthModule.php:165
1764 +#: includes/modules/Health/HealthModule.php:204
1670 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."
1671 1766 msgstr ""
1672 1767
1673 -#: includes/modules/Health/HealthModule.php:116
1768 +#: includes/modules/Health/HealthModule.php:169
1674 1769 msgid "xSpeed .htaccess rewrite block is missing"
1675 1770 msgstr ""
1676 1771
1677 -#: includes/modules/Health/HealthModule.php:118
1772 +#: includes/modules/Health/HealthModule.php:171
1678 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."
1679 1774 msgstr ""
1680 1775
1681 -#: includes/modules/Health/HealthModule.php:125
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
1682 1803 msgid "xSpeed nginx server config required"
1683 1804 msgstr ""
1684 1805
1685 -#: includes/modules/Health/HealthModule.php:127
1806 +#: includes/modules/Health/HealthModule.php:234
1686 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:"
1687 1808 msgstr ""
1688 1809
1689 -#: includes/modules/Health/HealthModule.php:136
1810 +#: includes/modules/Health/HealthModule.php:243
1690 1811 msgid "xSpeed PHP drop-in cache active"
1691 1812 msgstr ""
1692 1813
1693 -#: includes/modules/Health/HealthModule.php:138
1814 +#: includes/modules/Health/HealthModule.php:245
1694 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."
1695 1816 msgstr ""
1696 1817
1697 -#: includes/modules/Health/HealthModule.php:144
1818 +#: includes/modules/Health/HealthModule.php:251
1698 1819 msgid "Health"
1699 1820 msgstr ""
1700 1821
1701 -#: includes/modules/Health/HealthModule.php:146
1702 -msgid "Diagnostics, hit ratio, and recent cache activity."
1822 +#: includes/modules/Health/HealthModule.php:253
1823 +msgid "Checks for problems and shows how often visitors get cached pages."
1703 1824 msgstr ""
1704 1825
1705 1826 #: includes/modules/Heartbeat/HeartbeatModule.php:38
1706 1827 msgid "Heartbeat"
@@ -1706,41 +1827,41 @@
1706 1827 msgid "Heartbeat"
1707 1828 msgstr ""
1708 1829
1709 1830 #: includes/modules/Heartbeat/HeartbeatModule.php:40
1710 -msgid "Control the WordPress Heartbeat API per context."
1831 +msgid "Controls how often WordPress checks in with your server in the background."
1711 1832 msgstr ""
1712 1833
1713 -#: includes/modules/Heartbeat/HeartbeatModule.php:64
1834 +#: includes/modules/Heartbeat/HeartbeatModule.php:65
1714 1835 msgid "Dashboard"
1715 1836 msgstr ""
1716 1837
1717 -#: includes/modules/Heartbeat/HeartbeatModule.php:65
1718 -msgid "Heartbeat behavior on /wp-admin/ screens (autosave, notifications)."
1838 +#: includes/modules/Heartbeat/HeartbeatModule.php:66
1839 +msgid "Background checks on admin screens, used for notifications."
1719 1840 msgstr ""
1720 1841
1721 -#: includes/modules/Heartbeat/HeartbeatModule.php:72
1842 +#: includes/modules/Heartbeat/HeartbeatModule.php:73
1722 1843 msgid "Editor"
1723 1844 msgstr ""
1724 1845
1725 -#: includes/modules/Heartbeat/HeartbeatModule.php:73
1726 -msgid "Heartbeat in the post / block editor. Disable only if you do not need autosave or co-edit locks."
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."
1727 1848 msgstr ""
1728 1849
1729 -#: includes/modules/Heartbeat/HeartbeatModule.php:80
1850 +#: includes/modules/Heartbeat/HeartbeatModule.php:81
1730 1851 msgid "Frontend"
1731 1852 msgstr ""
1732 1853
1733 -#: includes/modules/Heartbeat/HeartbeatModule.php:81
1734 -msgid "Controls the Heartbeat API on the public site. Only takes effect when a plugin or theme actually loads heartbeat on the frontend (e.g. WooCommerce cart fragments, membership/notification plugins) — a default WordPress site loads none there, so this has no visible effect on such sites. Recommended: Disable, to stop the admin-ajax polling those plugins add."
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."
1735 1856 msgstr ""
1736 1857
1737 -#: includes/modules/Heartbeat/HeartbeatModule.php:88
1738 -msgid "Throttle Frequency"
1858 +#: includes/modules/Heartbeat/HeartbeatModule.php:89
1859 +msgid "Throttle interval"
1739 1860 msgstr ""
1740 1861
1741 -#: includes/modules/Heartbeat/HeartbeatModule.php:89
1742 -msgid "Interval in seconds for contexts set to Throttle. 60 is a sane default; lower = faster sync but more requests."
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."
1743 1864 msgstr ""
1744 1865
1745 1866 #: includes/modules/Lazy/LazyModule.php:42
1746 1867 msgid "Media Optimization"
@@ -1750,67 +1871,75 @@
1750 1871 msgid "Lazy Loading"
1751 1872 msgstr ""
1752 1873
1753 1874 #: includes/modules/Lazy/LazyModule.php:45
1754 -msgid "Control how images, iframes, and videos load — lazy-loading, missing dimensions, and format optimization."
1875 +msgid "Loads images, videos and embeds only when visitors scroll to them."
1755 1876 msgstr ""
1756 1877
1757 -#: includes/modules/Lazy/LazyModule.php:59
1758 -msgid "Lazy-load Images"
1759 -msgstr ""
1760 -
1761 1878 #: includes/modules/Lazy/LazyModule.php:60
1762 -msgid "Add loading=\"lazy\" + decoding=\"async\" to <img> tags in post content. The first images on the page get loading=\"eager\" so the LCP image is not deferred."
1879 +msgid "Lazy-load images"
1763 1880 msgstr ""
1764 1881
1765 -#: includes/modules/Lazy/LazyModule.php:65
1766 -msgid "Lazy-load Iframes"
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."
1767 1884 msgstr ""
1768 1885
1769 1886 #: includes/modules/Lazy/LazyModule.php:66
1770 -msgid "Add loading=\"lazy\" to <iframe> tags. Useful for YouTube / Vimeo embeds + map widgets that pull a lot of bytes."
1887 +msgid "Lazy-load embeds"
1771 1888 msgstr ""
1772 1889
1773 -#: includes/modules/Lazy/LazyModule.php:71
1774 -msgid "Click-to-Play Video Facade"
1890 +#: includes/modules/Lazy/LazyModule.php:67
1891 +msgid "Embedded content such as YouTube videos and maps loads when the visitor scrolls near it."
1775 1892 msgstr ""
1776 1893
1777 1894 #: includes/modules/Lazy/LazyModule.php:72
1778 -msgid "Replace YouTube and Vimeo embeds — and self-hosted <video> tags that have a poster — with the poster image and a play button. The video only loads when a visitor clicks it, so a page with embeds no longer pays ~1MB of third-party JavaScript, or the full weight of a hosted video file, for visitors who never press play. Autoplaying videos are left alone. Falls back to the normal embed when JavaScript is off."
1895 +msgid "Click-to-play videos"
1779 1896 msgstr ""
1780 1897
1781 -#: includes/modules/Lazy/LazyModule.php:77
1782 -msgid "Lazy-load HTML5 Videos"
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."
1783 1900 msgstr ""
1784 1901
1785 1902 #: includes/modules/Lazy/LazyModule.php:78
1786 -msgid "Set preload=\"none\" on self-hosted <video> tags, overriding a player's own preload=\"auto\"/\"metadata\". Autoplaying videos are left alone — they need their bytes regardless. Browsers do not yet support loading=\"lazy\" on video; preload=\"none\" is the closest equivalent."
1903 +msgid "Lazy-load your own videos"
1787 1904 msgstr ""
1788 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 +
1789 1914 #: includes/modules/Lazy/LazyModule.php:85
1790 -msgid "Eager-load First N Images"
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."
1791 1916 msgstr ""
1792 1917
1793 -#: includes/modules/Lazy/LazyModule.php:86
1794 -msgid "How many images at the top of the post get loading=\"eager\". 1 is usually right (the LCP hero image). 0 to lazy-load everything."
1918 +#: includes/modules/Lazy/LazyModule.php:92
1919 +msgid "Images to load right away"
1795 1920 msgstr ""
1796 1921
1797 -#: includes/modules/Lazy/LazyModule.php:91
1798 -msgid "Add Missing Image Dimensions"
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."
1799 1924 msgstr ""
1800 1925
1801 -#: includes/modules/Lazy/LazyModule.php:92
1802 -msgid "When an <img class=\"wp-image-N\"> has no width/height, look the values up from the media library and inject them. Prevents the page-layout shift that hurts CLS scores."
1926 +#: includes/modules/Lazy/LazyModule.php:107
1927 +msgid "Add missing image sizes"
1803 1928 msgstr ""
1804 1929
1805 -#: includes/modules/Lazy/LazyModule.php:98
1806 -msgid "Excluded Images"
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."
1807 1932 msgstr ""
1808 1933
1809 -#: includes/modules/Lazy/LazyModule.php:99
1810 -msgid "Substring patterns that, if found anywhere in the <img> / <iframe> tag (typically a class or filename), exempt that element from lazy-loading. Useful for hero / logo / sprite images. Or add data-skip-lazy to the tag directly."
1934 +#: includes/modules/Lazy/LazyModule.php:114
1935 +msgid "Excluded images"
1811 1936 msgstr ""
1812 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 +
1813 1942 #. translators: %s: command name.
1814 1943 #: includes/modules/Mcp/Cli_Bridge.php:128
1815 1944 #, php-format
1816 1945 msgid "Unknown command: %s. Call list_commands to see what is available."
@@ -1821,86 +1950,91 @@
1821 1950 msgid "MCP Server"
1822 1951 msgstr ""
1823 1952
1824 1953 #: includes/modules/Mcp/McpModule.php:151
1825 -msgid "Let Claude or another AI agent run this site — purge, check stats, change settings. This is the only thing you connect an AI to, and it is free with no API key."
1954 +msgid "Let Claude or another AI assistant clear the cache, check stats and change settings."
1826 1955 msgstr ""
1827 1956
1828 -#: includes/modules/Mcp/McpModule.php:440
1957 +#: includes/modules/Mcp/McpModule.php:450
1829 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."
1830 1959 msgstr ""
1831 1960
1832 -#: includes/modules/Mcp/McpModule.php:1307
1961 +#: includes/modules/Mcp/McpModule.php:1319
1833 1962 msgid "Invalid or expired attach request."
1834 1963 msgstr ""
1835 1964
1836 -#: includes/modules/Mcp/McpModule.php:1423
1965 +#: includes/modules/Mcp/McpModule.php:1435
1837 1966 msgid "You must be an administrator to authorize an AI agent to control this site."
1838 1967 msgstr ""
1839 1968
1840 -#: includes/modules/Mcp/McpModule.php:1430
1969 +#: includes/modules/Mcp/McpModule.php:1442
1841 1970 msgid "Security check failed. Please try connecting again."
1842 1971 msgstr ""
1843 1972
1973 +#: includes/modules/Mcp/McpModule.php:1538
1844 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
1845 1979 msgid "Read-only — inspect cache status and settings."
1846 1980 msgstr ""
1847 1981
1848 -#: includes/modules/Mcp/McpModule.php:1558
1982 +#: includes/modules/Mcp/McpModule.php:1633
1849 1983 msgid "Read & write — purge caches, toggle caching, and change settings."
1850 1984 msgstr ""
1851 1985
1852 -#: includes/modules/Mcp/McpModule.php:1559
1986 +#: includes/modules/Mcp/McpModule.php:1634
1853 1987 msgid "An AI agent"
1854 1988 msgstr ""
1855 1989
1856 -#: includes/modules/Mcp/McpModule.php:1578
1990 +#: includes/modules/Mcp/McpModule.php:1653
1857 1991 msgid "Authorize AI access"
1858 1992 msgstr ""
1859 1993
1860 -#: includes/modules/Mcp/McpModule.php:1589
1994 +#: includes/modules/Mcp/McpModule.php:1664
1861 1995 msgid "Connect to xSpeed"
1862 1996 msgstr ""
1863 1997
1864 1998 #. translators: %s: AI client name.
1865 -#: includes/modules/Mcp/McpModule.php:1591
1999 +#: includes/modules/Mcp/McpModule.php:1666
1866 2000 #, php-format
1867 2001 msgid "%s wants to manage the cache on this site."
1868 2002 msgstr ""
1869 2003
1870 -#: includes/modules/Mcp/McpModule.php:1592
2004 +#: includes/modules/Mcp/McpModule.php:1667
1871 2005 msgid "Site"
1872 2006 msgstr ""
1873 2007
1874 -#: includes/modules/Mcp/McpModule.php:1593
2008 +#: includes/modules/Mcp/McpModule.php:1668
1875 2009 msgid "Signed in as"
1876 2010 msgstr ""
1877 2011
1878 -#: includes/modules/Mcp/McpModule.php:1594
2012 +#: includes/modules/Mcp/McpModule.php:1669
1879 2013 msgid "Access"
1880 2014 msgstr ""
1881 2015
1882 -#: includes/modules/Mcp/McpModule.php:1599
2016 +#: includes/modules/Mcp/McpModule.php:1674
1883 2017 msgid "Deny"
1884 2018 msgstr ""
1885 2019
1886 -#: includes/modules/Mcp/McpModule.php:1600
2020 +#: includes/modules/Mcp/McpModule.php:1675
1887 2021 msgid "Approve"
1888 2022 msgstr ""
1889 2023
1890 -#: includes/modules/Mcp/McpModule.php:1610
2024 +#: includes/modules/Mcp/McpModule.php:1685
1891 2025 msgid "Authorization error"
1892 2026 msgstr ""
1893 2027
1894 -#: includes/modules/Mcp/McpModule.php:1613
2028 +#: includes/modules/Mcp/McpModule.php:1688
1895 2029 msgid "Could not authorize"
1896 2030 msgstr ""
1897 2031
1898 -#: includes/modules/Mcp/McpModule.php:1843
2032 +#: includes/modules/Mcp/McpModule.php:1918
1899 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."
1900 2034 msgstr ""
1901 2035
1902 -#: includes/modules/Mcp/McpModule.php:1844
2036 +#: includes/modules/Mcp/McpModule.php:1919
1903 2037 msgid "No AI assistant is connected. This module counts as on once you connect one."
1904 2038 msgstr ""
1905 2039
1906 2040 #: includes/modules/Mcp/Mcp_Auth.php:57
@@ -1906,17 +2040,17 @@
1906 2040 #: includes/modules/Mcp/Mcp_Auth.php:57
1907 2041 msgid "Too many failed attempts. Try again later."
1908 2042 msgstr ""
1909 2043
1910 -#: includes/modules/Mcp/Mcp_Hub.php:771
2044 +#: includes/modules/Mcp/Mcp_Hub.php:871
1911 2045 msgid "Connect this site to xSpeed Hub to run a free speed test."
1912 2046 msgstr ""
1913 2047
1914 -#: includes/modules/Mcp/Mcp_Hub.php:797
2048 +#: includes/modules/Mcp/Mcp_Hub.php:897
1915 2049 msgid "Could not reach xSpeed Hub. Please try again."
1916 2050 msgstr ""
1917 2051
1918 -#: includes/modules/Mcp/Mcp_Hub.php:820
2052 +#: includes/modules/Mcp/Mcp_Hub.php:920
1919 2053 #: assets/admin.js
1920 2054 msgid "The test could not be started."
1921 2055 msgstr ""
1922 2056
@@ -1957,155 +2091,160 @@
1957 2091 #: includes/modules/Mcp/Mcp_OAuth.php:395
1958 2092 msgid "PKCE with code_challenge_method=S256 is required."
1959 2093 msgstr ""
1960 2094
1961 -#: includes/modules/Mcp/Mcp_Pairing.php:451
2095 +#: includes/modules/Mcp/Mcp_Pairing.php:474
1962 2096 msgid "No active MCP connection to change. Connect first."
1963 2097 msgstr ""
1964 2098
1965 2099 #. translators: %s: tool name.
1966 -#: includes/modules/Mcp/Mcp_Tools.php:931
2100 +#: includes/modules/Mcp/Mcp_Tools.php:988
2101 +#: includes/modules/Mcp/Mcp_Tools.php:1026
1967 2102 #, php-format
1968 2103 msgid "Unknown tool: %s"
1969 2104 msgstr ""
1970 2105
1971 2106 #. translators: %s: tool name.
1972 -#: includes/modules/Mcp/Mcp_Tools.php:959
2107 +#: includes/modules/Mcp/Mcp_Tools.php:1047
1973 2108 #, php-format
1974 2109 msgid "This MCP connection is read-only; the \"%s\" tool changes state and is not permitted. Reconnect with write access to use it."
1975 2110 msgstr ""
1976 2111
1977 2112 #. translators: %s: comma-separated list of valid purge types.
1978 -#: includes/modules/Mcp/Mcp_Tools.php:1240
2113 +#: includes/modules/Mcp/Mcp_Tools.php:1334
1979 2114 #, php-format
1980 2115 msgid "Invalid purge type. Expected one of: %s"
1981 2116 msgstr ""
1982 2117
1983 -#: includes/modules/Mcp/Mcp_Tools.php:1249
1984 -#: includes/modules/Mcp/Mcp_Tools.php:2261
2118 +#: includes/modules/Mcp/Mcp_Tools.php:1343
2119 +#: includes/modules/Mcp/Mcp_Tools.php:2355
1985 2120 msgid "AI assistant"
1986 2121 msgstr ""
1987 2122
1988 -#: includes/modules/Mcp/Mcp_Tools.php:1298
2123 +#: includes/modules/Mcp/Mcp_Tools.php:1392
1989 2124 msgid "The \"enabled\" parameter is required (true or false)."
1990 2125 msgstr ""
1991 2126
1992 -#: includes/modules/Mcp/Mcp_Tools.php:1378
1993 -#: includes/modules/Mcp/Mcp_Tools.php:1432
2127 +#: includes/modules/Mcp/Mcp_Tools.php:1472
2128 +#: includes/modules/Mcp/Mcp_Tools.php:1526
1994 2129 msgid "The \"module\" parameter is required."
1995 2130 msgstr ""
1996 2131
1997 2132 #. translators: %s: module slug.
1998 -#: includes/modules/Mcp/Mcp_Tools.php:1387
1999 -#: includes/modules/Mcp/Mcp_Tools.php:1448
2133 +#: includes/modules/Mcp/Mcp_Tools.php:1481
2134 +#: includes/modules/Mcp/Mcp_Tools.php:1542
2000 2135 #, php-format
2001 2136 msgid "Unknown module \"%s\"."
2002 2137 msgstr ""
2003 2138
2004 -#: includes/modules/Mcp/Mcp_Tools.php:1439
2139 +#: includes/modules/Mcp/Mcp_Tools.php:1533
2005 2140 msgid "The \"values\" parameter must be an object of setting keys."
2006 2141 msgstr ""
2007 2142
2008 2143 #. translators: 1: comma-separated field names, 2: module slug.
2009 -#: includes/modules/Mcp/Mcp_Tools.php:1467
2144 +#: includes/modules/Mcp/Mcp_Tools.php:1561
2010 2145 #, php-format
2011 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."
2012 2147 msgstr ""
2013 2148
2014 2149 #. translators: %s: module slug.
2015 -#: includes/modules/Mcp/Mcp_Tools.php:1499
2150 +#: includes/modules/Mcp/Mcp_Tools.php:1593
2016 2151 #, php-format
2017 2152 msgid "Refused an MCP settings write to the Pro module \"%s\" — no valid license."
2018 2153 msgstr ""
2019 2154
2020 2155 #. translators: %s: module slug.
2021 -#: includes/modules/Mcp/Mcp_Tools.php:1509
2156 +#: includes/modules/Mcp/Mcp_Tools.php:1603
2022 2157 #, php-format
2023 2158 msgid "\"%s\" is a Pro module and this site has no active license, so the write was refused. Nothing was changed."
2024 2159 msgstr ""
2025 2160
2026 2161 #. translators: 1: setting key, 2: wp-config.php constant name.
2027 -#: includes/modules/Mcp/Mcp_Tools.php:1578
2162 +#: includes/modules/Mcp/Mcp_Tools.php:1672
2028 2163 #, php-format
2029 2164 msgid "\"%1$s\" is defined in wp-config.php as %2$s and cannot be changed here"
2030 2165 msgstr ""
2031 2166
2032 2167 #. translators: 1: setting key, 2: module slug.
2033 -#: includes/modules/Mcp/Mcp_Tools.php:1586
2168 +#: includes/modules/Mcp/Mcp_Tools.php:1680
2034 2169 #, php-format
2035 2170 msgid "\"%1$s\" is not a setting of module \"%2$s\""
2036 2171 msgstr ""
2037 2172
2038 2173 #. translators: %s: comma-separated setting names.
2039 -#: includes/modules/Mcp/Mcp_Tools.php:1598
2174 +#: includes/modules/Mcp/Mcp_Tools.php:1692
2040 2175 #, php-format
2041 2176 msgid " — did you mean: %s?"
2042 2177 msgstr ""
2043 2178
2044 2179 #. translators: %s: setting key.
2045 -#: includes/modules/Mcp/Mcp_Tools.php:1608
2180 +#: includes/modules/Mcp/Mcp_Tools.php:1702
2046 2181 #, php-format
2047 2182 msgid "\"%s\" was rejected by the schema (wrong type, or outside the allowed range/options)"
2048 2183 msgstr ""
2049 2184
2050 2185 #. translators: 1: module slug, 2: reasons.
2051 -#: includes/modules/Mcp/Mcp_Tools.php:1617
2186 +#: includes/modules/Mcp/Mcp_Tools.php:1711
2052 2187 #, php-format
2053 2188 msgid "Refused to update %1$s — nothing was written. %2$s"
2054 2189 msgstr ""
2055 2190
2056 -#: includes/modules/Mcp/Mcp_Tools.php:1653
2191 +#: includes/modules/Mcp/Mcp_Tools.php:1747
2057 2192 msgid "The \"command\" parameter is required."
2058 2193 msgstr ""
2059 2194
2060 -#: includes/modules/Mcp/Mcp_Tools.php:1704
2195 +#: includes/modules/Mcp/Mcp_Tools.php:1798
2061 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."
2062 2197 msgstr ""
2063 2198
2064 -#: includes/modules/Mcp/Mcp_Tools.php:1798
2199 +#: includes/modules/Mcp/Mcp_Tools.php:1892
2065 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."
2066 2201 msgstr ""
2067 2202
2068 -#: includes/modules/Mcp/Mcp_Tools.php:1809
2203 +#: includes/modules/Mcp/Mcp_Tools.php:1903
2069 2204 msgid "That confirm_token is unknown or has expired (they last 5 minutes). Run scan_database again and use the fresh token."
2070 2205 msgstr ""
2071 2206
2072 -#: includes/modules/Mcp/Mcp_Tools.php:1817
2207 +#: includes/modules/Mcp/Mcp_Tools.php:1911
2073 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."
2074 2209 msgstr ""
2075 2210
2076 -#: includes/modules/Mcp/Mcp_Tools.php:2081
2077 -#: includes/modules/Mcp/Mcp_Tools.php:2121
2211 +#: includes/modules/Mcp/Mcp_Tools.php:2175
2212 +#: includes/modules/Mcp/Mcp_Tools.php:2215
2078 2213 msgid "The enabled argument is required."
2079 2214 msgstr ""
2080 2215
2081 -#: includes/modules/Mcp/Mcp_Tools.php:2085
2082 -#: includes/modules/Mcp/Mcp_Tools.php:2125
2216 +#: includes/modules/Mcp/Mcp_Tools.php:2179
2217 +#: includes/modules/Mcp/Mcp_Tools.php:2219
2083 2218 msgid "The enabled argument must be true or false."
2084 2219 msgstr ""
2085 2220
2086 -#: includes/modules/Mcp/Mcp_Tools.php:2139
2221 +#: includes/modules/Mcp/Mcp_Tools.php:2233
2087 2222 msgid "The action argument must be \"list\" or \"clear\"."
2088 2223 msgstr ""
2089 2224
2090 -#: includes/modules/Mcp/Mcp_Tools.php:2178
2225 +#: includes/modules/Mcp/Mcp_Tools.php:2272
2091 2226 msgid "External scores are not available on this site."
2092 2227 msgstr ""
2093 2228
2094 -#: includes/modules/Mcp/Mcp_Tools.php:2259
2229 +#: includes/modules/Mcp/Mcp_Tools.php:2353
2095 2230 msgid "The url argument is required."
2096 2231 msgstr ""
2097 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 +
2098 2237 #: includes/modules/Migration/MigrationModule.php:30
2099 2238 msgid "Migration"
2100 2239 msgstr ""
2101 2240
2102 2241 #: includes/modules/Migration/MigrationModule.php:32
2103 -msgid "Import settings from WP Rocket, W3 Total Cache, or WP Super Cache."
2242 +msgid "Import settings from WP Rocket, W3 Total Cache, WP Super Cache or LiteSpeed Cache."
2104 2243 msgstr ""
2105 2244
2106 2245 #. translators: %d: number of detected caching plugins.
2107 -#: includes/modules/Migration/MigrationModule.php:210
2246 +#: includes/modules/Migration/MigrationModule.php:211
2108 2247 #, php-format
2109 2248 msgid "Migrate to %1$s — %2$d caching plugin detected"
2110 2249 msgid_plural "Migrate to %1$s — %2$d caching plugins detected"
2111 2250 msgstr[0] ""
@@ -2110,32 +2249,32 @@
2110 2249 msgid_plural "Migrate to %1$s — %2$d caching plugins detected"
2111 2250 msgstr[0] ""
2112 2251 msgstr[1] ""
2113 2252
2114 -#: includes/modules/Migration/MigrationModule.php:265
2253 +#: includes/modules/Migration/MigrationModule.php:266
2115 2254 msgid "Speed guarantee"
2116 2255 msgstr ""
2117 2256
2118 -#: includes/modules/Migration/MigrationModule.php:310
2257 +#: includes/modules/Migration/MigrationModule.php:311
2119 2258 msgid "Dismiss this notice"
2120 2259 msgstr ""
2121 2260
2122 -#: includes/modules/Migration/MigrationModule.php:331
2261 +#: includes/modules/Migration/MigrationModule.php:332
2123 2262 msgid "Guaranteed faster load times — or we'll tune it for you, free."
2124 2263 msgstr ""
2125 2264
2126 -#: includes/modules/Migration/MigrationModule.php:332
2265 +#: includes/modules/Migration/MigrationModule.php:333
2127 2266 msgid "Faster load times, without configuring anything by hand."
2128 2267 msgstr ""
2129 2268
2130 2269 #. translators: %s: brand name, e.g. xSpeed Cache.
2131 -#: includes/modules/Migration/MigrationModule.php:345
2270 +#: includes/modules/Migration/MigrationModule.php:346
2132 2271 #, php-format
2133 2272 msgid "%s imports your settings in one click, then handles caching and optimization with AI-powered control."
2134 2273 msgstr ""
2135 2274
2136 2275 #. translators: 1: detected plugin name, 2: number of settings.
2137 -#: includes/modules/Migration/MigrationModule.php:355
2276 +#: includes/modules/Migration/MigrationModule.php:356
2138 2277 #, php-format
2139 2278 msgid "%1$s detected · %2$d setting ready to import"
2140 2279 msgid_plural "%1$s detected · %2$d settings ready to import"
2141 2280 msgstr[0] ""
@@ -2140,30 +2279,30 @@
2140 2279 msgid_plural "%1$s detected · %2$d settings ready to import"
2141 2280 msgstr[0] ""
2142 2281 msgstr[1] ""
2143 2282
2144 -#: includes/modules/Migration/MigrationModule.php:375
2283 +#: includes/modules/Migration/MigrationModule.php:376
2145 2284 msgid "Prefer we handle it? Book a call"
2146 2285 msgstr ""
2147 2286
2148 2287 #. translators: %s: brand name.
2149 -#: includes/modules/Migration/MigrationModule.php:383
2288 +#: includes/modules/Migration/MigrationModule.php:384
2150 2289 #, php-format
2151 2290 msgid "Migrate to %s"
2152 2291 msgstr ""
2153 2292
2154 2293 #. translators: %s: detected plugin name.
2155 -#: includes/modules/Migration/MigrationModule.php:399
2294 +#: includes/modules/Migration/MigrationModule.php:400
2156 2295 #, php-format
2157 2296 msgid "Migrating deactivates %s"
2158 2297 msgstr ""
2159 2298
2160 -#: includes/modules/Migration/MigrationModule.php:404
2299 +#: includes/modules/Migration/MigrationModule.php:405
2161 2300 msgid "View migration details"
2162 2301 msgstr ""
2163 2302
2164 2303 #. translators: %d: number of settings imported.
2165 -#: includes/modules/Migration/MigrationModule.php:422
2304 +#: includes/modules/Migration/MigrationModule.php:423
2166 2305 #, php-format
2167 2306 msgid "imports %d setting"
2168 2307 msgid_plural "imports %d settings"
2169 2308 msgstr[0] ""
@@ -2168,323 +2307,337 @@
2168 2307 msgid_plural "imports %d settings"
2169 2308 msgstr[0] ""
2170 2309 msgstr[1] ""
2171 2310
2172 -#: includes/modules/Migration/MigrationModule.php:428
2311 +#: includes/modules/Migration/MigrationModule.php:429
2173 2312 msgid "Migrate"
2174 2313 msgstr ""
2175 2314
2176 -#: includes/modules/Migration/MigrationModule.php:548
2177 -#: includes/modules/Minify/MinifyModule.php:35
2315 +#: includes/modules/Migration/MigrationModule.php:549
2316 +#: includes/modules/Minify/MinifyModule.php:36
2178 2317 msgid "Minify"
2179 2318 msgstr ""
2180 2319
2181 -#: includes/modules/Migration/MigrationModule.php:549
2320 +#: includes/modules/Migration/MigrationModule.php:550
2182 2321 msgid "Lazy Load"
2183 2322 msgstr ""
2184 2323
2185 -#: includes/modules/Migration/MigrationModule.php:550
2324 +#: includes/modules/Migration/MigrationModule.php:551
2186 2325 #: includes/modules/Preloader/PreloaderModule.php:32
2187 2326 msgid "Preloader"
2188 2327 msgstr ""
2189 2328
2190 -#: includes/modules/Migration/MigrationModule.php:552
2329 +#: includes/modules/Migration/MigrationModule.php:553
2191 2330 #: includes/modules/ObjectCache/ObjectCacheModule.php:32
2192 2331 msgid "Object Cache"
2193 2332 msgstr ""
2194 2333
2195 -#: includes/modules/Migration/MigrationModule.php:554
2334 +#: includes/modules/Migration/MigrationModule.php:555
2196 2335 msgid "Bloat Removal"
2197 2336 msgstr ""
2198 2337
2199 -#: includes/modules/Migration/MigrationModule.php:579
2338 +#: includes/modules/Migration/MigrationModule.php:580
2200 2339 msgid "You do not have permission to migrate settings."
2201 2340 msgstr ""
2202 2341
2203 -#: includes/modules/Migration/MigrationModule.php:585
2342 +#: includes/modules/Migration/MigrationModule.php:586
2204 2343 msgid "No source selected."
2205 2344 msgstr ""
2206 2345
2207 -#: includes/modules/Migration/MigrationModule.php:617
2346 +#: includes/modules/Migration/MigrationModule.php:618
2208 2347 msgid "it could not be enabled"
2209 2348 msgstr ""
2210 2349
2211 -#: includes/modules/Migration/MigrationModule.php:702
2350 +#: includes/modules/Migration/MigrationModule.php:703
2212 2351 msgid "Migrating…"
2213 2352 msgstr ""
2214 2353
2215 -#: includes/modules/Migration/MigrationModule.php:719
2354 +#: includes/modules/Migration/MigrationModule.php:720
2216 2355 msgid "Migration failed."
2217 2356 msgstr ""
2218 2357
2219 -#: includes/modules/Migration/MigrationModule.php:722
2358 +#: includes/modules/Migration/MigrationModule.php:723
2220 2359 msgid "the source plugin"
2221 2360 msgstr ""
2222 2361
2223 -#: includes/modules/Migration/MigrationModule.php:723
2362 +#: includes/modules/Migration/MigrationModule.php:724
2224 2363 msgid "Review imported settings"
2225 2364 msgstr ""
2226 2365
2227 -#: includes/modules/Migration/MigrationModule.php:734
2228 -#: includes/modules/Migration/MigrationModule.php:745
2229 -#: includes/modules/Migration/MigrationModule.php:753
2366 +#: includes/modules/Migration/MigrationModule.php:735
2367 +#: includes/modules/Migration/MigrationModule.php:746
2368 +#: includes/modules/Migration/MigrationModule.php:754
2230 2369 msgid "settings are now running in xSpeed."
2231 2370 msgstr ""
2232 2371
2233 -#: includes/modules/Migration/MigrationModule.php:736
2234 -#: includes/modules/Migration/MigrationModule.php:746
2372 +#: includes/modules/Migration/MigrationModule.php:737
2373 +#: includes/modules/Migration/MigrationModule.php:747
2235 2374 msgid "It has been switched off, so the two page caches cannot conflict."
2236 2375 msgstr ""
2237 2376
2238 -#: includes/modules/Migration/MigrationModule.php:737
2377 +#: includes/modules/Migration/MigrationModule.php:738
2239 2378 msgid "It is still active — switch it off when you are ready."
2240 2379 msgstr ""
2241 2380
2242 -#: includes/modules/Migration/MigrationModule.php:738
2381 +#: includes/modules/Migration/MigrationModule.php:739
2243 2382 msgid "Skipped:"
2244 2383 msgstr ""
2245 2384
2246 -#: includes/modules/Migration/MigrationModule.php:754
2385 +#: includes/modules/Migration/MigrationModule.php:755
2247 2386 msgid "It is still active — running two page caches conflicts, so switch it off when you are ready."
2248 2387 msgstr ""
2249 2388
2250 -#: includes/modules/Migration/MigrationModule.php:763
2389 +#: includes/modules/Migration/MigrationModule.php:764
2251 2390 msgid "Migration could not finish."
2252 2391 msgstr ""
2253 2392
2254 -#: includes/modules/Migration/MigrationModule.php:764
2393 +#: includes/modules/Migration/MigrationModule.php:765
2255 2394 msgid "Nothing was changed — you can try again."
2256 2395 msgstr ""
2257 2396
2258 2397 #. translators: %s: source plugin label.
2259 -#: includes/modules/Migration/MigrationModule.php:997
2398 +#: includes/modules/Migration/MigrationModule.php:998
2260 2399 #, php-format
2261 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."
2262 2401 msgstr ""
2263 2402
2264 2403 #. translators: %s: source plugin label.
2265 -#: includes/modules/Migration/MigrationModule.php:1002
2404 +#: includes/modules/Migration/MigrationModule.php:1003
2266 2405 #, php-format
2267 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."
2268 2407 msgstr ""
2269 2408
2270 -#: includes/modules/Minify/MinifyModule.php:34
2409 +#: includes/modules/Minify/MinifyModule.php:35
2271 2410 msgid "CSS & JavaScript"
2272 2411 msgstr ""
2273 2412
2274 -#: includes/modules/Minify/MinifyModule.php:37
2275 -msgid "Strip whitespace and rewrite enqueued CSS / JS."
2413 +#: includes/modules/Minify/MinifyModule.php:38
2414 +msgid "Makes HTML, CSS and JavaScript files smaller and loads scripts later."
2276 2415 msgstr ""
2277 2416
2278 -#: includes/modules/Minify/MinifyModule.php:50
2417 +#: includes/modules/Minify/MinifyModule.php:52
2279 2418 msgid "Minify HTML"
2280 2419 msgstr ""
2281 2420
2282 -#: includes/modules/Minify/MinifyModule.php:55
2283 -msgid "Strip whitespace and comments from HTML output, including inline <style> and <script> blocks. Safe on most themes. Applies to cached (logged-out) responses — view the page in a private window to see the result."
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."
2284 2423 msgstr ""
2285 2424
2286 -#: includes/modules/Minify/MinifyModule.php:60
2425 +#: includes/modules/Minify/MinifyModule.php:62
2287 2426 msgid "Minify CSS"
2288 2427 msgstr ""
2289 2428
2290 -#: includes/modules/Minify/MinifyModule.php:61
2291 -msgid "Compress and rewrite enqueued local stylesheets. External CSS is left untouched."
2429 +#: includes/modules/Minify/MinifyModule.php:63
2430 +msgid "Makes your site's own CSS files smaller. CSS from other domains is left alone."
2292 2431 msgstr ""
2293 2432
2294 -#: includes/modules/Minify/MinifyModule.php:66
2433 +#: includes/modules/Minify/MinifyModule.php:68
2295 2434 msgid "Minify JavaScript"
2296 2435 msgstr ""
2297 2436
2298 -#: includes/modules/Minify/MinifyModule.php:67
2299 -msgid "Compress enqueued local scripts. Disable if you hit script-loading conflicts on the frontend."
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."
2300 2439 msgstr ""
2301 2440
2302 -#: includes/modules/Minify/MinifyModule.php:72
2441 +#: includes/modules/Minify/MinifyModule.php:74
2303 2442 msgid "Defer JavaScript"
2304 2443 msgstr ""
2305 2444
2306 -#: includes/modules/Minify/MinifyModule.php:73
2307 -msgid "Add defer=\"defer\" to enqueued script tags so they execute after HTML parsing. jQuery + its hard dependencies are skipped automatically."
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."
2308 2447 msgstr ""
2309 2448
2310 -#: includes/modules/Minify/MinifyModule.php:78
2311 -msgid "Delay JavaScript Until Interaction"
2449 +#: includes/modules/Minify/MinifyModule.php:80
2450 +msgid "Delay JavaScript"
2312 2451 msgstr ""
2313 2452
2314 -#: includes/modules/Minify/MinifyModule.php:79
2315 -msgid "Postpone script loading until the visitor scrolls, moves the mouse, taps, or presses a key. Drastically improves first paint on script-heavy pages; can break above-the-fold scripted UI — test before leaving on."
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."
2316 2455 msgstr ""
2317 2456
2318 -#: includes/modules/Minify/MinifyModule.php:84
2319 -msgid "Load CSS Asynchronously"
2457 +#: includes/modules/Minify/MinifyModule.php:86
2458 +msgid "Load CSS without blocking"
2320 2459 msgstr ""
2321 2460
2322 -#: includes/modules/Minify/MinifyModule.php:85
2323 -msgid "Rewrite stylesheet link tags to load non-blocking via the print-then-all pattern. Pairs well with critical-CSS workflows; can cause a flash of unstyled content if the theme has no critical CSS."
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."
2324 2463 msgstr ""
2325 2464
2326 -#: includes/modules/Minify/MinifyModule.php:90
2327 -msgid "Remove Asset Query Strings"
2465 +#: includes/modules/Minify/MinifyModule.php:92
2466 +msgid "Remove version from file URLs"
2328 2467 msgstr ""
2329 2468
2330 -#: includes/modules/Minify/MinifyModule.php:91
2331 -msgid "Strip ?ver=X.Y from enqueued CSS / JS URLs. Some CDN caches and proxies cache better when query strings are absent. Files under wp-content/uploads keep their version — page builders and consent plugins rewrite generated CSS there in place, and ?ver is what tells browsers to refetch it. Plugin, theme and core assets are still stripped: with Browser Cache on, an update reaches returning visitors only when their browser cache expires."
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."
2332 2471 msgstr ""
2333 2472
2334 -#: includes/modules/Minify/MinifyModule.php:97
2335 -msgid "Defer / Delay Exclusions"
2473 +#: includes/modules/Minify/MinifyModule.php:100
2474 +msgid "Scripts to never defer or delay"
2336 2475 msgstr ""
2337 2476
2338 -#: includes/modules/Minify/MinifyModule.php:98
2339 -msgid "Script handles OR URL substrings that skip defer + delay. Defaults exclude jQuery (most themes depend on it being available synchronously). One per line."
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."
2340 2479 msgstr ""
2341 2480
2342 -#: includes/modules/Minify/MinifyModule.php:112
2343 -msgid "Delay Only These Scripts"
2481 +#: includes/modules/Minify/MinifyModule.php:115
2482 +msgid "Delay only these scripts"
2344 2483 msgstr ""
2345 2484
2346 -#: includes/modules/Minify/MinifyModule.php:113
2347 -msgid "Script handles OR URL substrings. When non-empty, matching scripts are delayed, plus the known third-party tags xSpeed recognises on its own (analytics, tag managers, chat widgets, review embeds, error trackers) — so a heavy vendor script is postponed even when it is not listed here. Leave empty to delay all scripts (minus the exclusions above). Handles are the more reliable selector — a URL substring has to match the script's original URL, and minification rewrites that to a hashed cache path. One per line."
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."
2348 2487 msgstr ""
2349 2488
2350 -#: includes/modules/Minify/MinifyModule.php:121
2351 -msgid "Delay Failsafe Timeout (ms)"
2489 +#: includes/modules/Minify/MinifyModule.php:117
2490 +msgid "Consent banners and Delay JS"
2352 2491 msgstr ""
2353 2492
2354 -#: includes/modules/Minify/MinifyModule.php:123
2355 -msgid "Load delayed scripts automatically after this many milliseconds when the visitor never interacts. Set to 0 for interaction-only, with no timer: a timer that fires inside a lab tool's measurement window loads the \"delayed\" scripts anyway and inflates the reported TTI. Keep a non-zero value if a delayed script must eventually run for visitors who never scroll, tap, or type."
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."
2356 2497 msgstr ""
2357 2498
2499 +#: includes/modules/Minify/MinifyModule.php:128
2500 +msgid "Smart delay"
2501 +msgstr ""
2502 +
2358 2503 #: includes/modules/Minify/MinifyModule.php:129
2359 -msgid "Combine CSS Files"
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."
2360 2505 msgstr ""
2361 2506
2362 -#: includes/modules/Minify/MinifyModule.php:130
2363 -msgid "Concatenate enqueued local stylesheets into a single file (with @import and url(…) paths resolved). External CSS is left alone. Pairs poorly with HTTP/2 push — only enable on HTTP/1.1 hosts."
2507 +#: includes/modules/Minify/MinifyModule.php:137
2508 +msgid "Delay timeout (ms)"
2364 2509 msgstr ""
2365 2510
2366 -#: includes/modules/Minify/MinifyModule.php:135
2367 -msgid "Combine JavaScript Files"
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."
2368 2513 msgstr ""
2369 2514
2370 -#: includes/modules/Minify/MinifyModule.php:136
2371 -msgid "Concatenate enqueued local scripts into a single file. External scripts + scripts marked async / deferred are left alone. Disable if you hit dependency-order issues; the combiner respects WordPress enqueue order but inline scripts attached via wp_add_inline_script can shift behavior."
2515 +#: includes/modules/Minify/MinifyModule.php:146
2516 +msgid "Combine CSS files"
2372 2517 msgstr ""
2373 2518
2374 -#: includes/modules/Minify/MinifyModule.php:273
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
2375 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."
2376 2533 msgstr ""
2377 2534
2378 -#: includes/modules/Minify/MinifyModule.php:274
2535 +#: includes/modules/Minify/MinifyModule.php:293
2379 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."
2380 2537 msgstr ""
2381 2538
2382 -#: includes/modules/Minify/MinifyModule.php:279
2539 +#: includes/modules/Minify/MinifyModule.php:298
2383 2540 msgid "HTML minification is on but currently paused"
2384 2541 msgstr ""
2385 2542
2386 2543 #: includes/modules/ObjectCache/ObjectCacheModule.php:34
2387 -msgid "Configure a persistent object cache (Redis / Memcached) and generate a paste-ready wp-config.php snippet."
2544 +msgid "Stores database query results in Redis or Memcached so pages build faster."
2388 2545 msgstr ""
2389 2546
2390 -#: includes/modules/ObjectCache/ObjectCacheModule.php:61
2391 -msgid "Backend"
2392 -msgstr ""
2393 -
2394 2547 #: includes/modules/ObjectCache/ObjectCacheModule.php:62
2395 -msgid "Which cache server you intend to use. Affects the generated wp-config snippet."
2548 +msgid "Cache server"
2396 2549 msgstr ""
2397 2550
2398 -#: includes/modules/ObjectCache/ObjectCacheModule.php:68
2399 -msgid "Redis Host"
2551 +#: includes/modules/ObjectCache/ObjectCacheModule.php:63
2552 +msgid "The cache server your host provides. Ask your host if you are not sure."
2400 2553 msgstr ""
2401 2554
2402 2555 #: includes/modules/ObjectCache/ObjectCacheModule.php:69
2403 -msgid "Hostname or IP of the Redis server. Use 127.0.0.1 for a local socket on the same machine as PHP."
2556 +msgid "Redis host"
2404 2557 msgstr ""
2405 2558
2406 -#: includes/modules/ObjectCache/ObjectCacheModule.php:77
2407 -msgid "Redis Port"
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."
2408 2561 msgstr ""
2409 2562
2410 -#: includes/modules/ObjectCache/ObjectCacheModule.php:78
2411 -msgid "Default Redis port is 6379."
2563 +#: includes/modules/ObjectCache/ObjectCacheModule.php:79
2564 +msgid "Redis port"
2412 2565 msgstr ""
2413 2566
2414 -#: includes/modules/ObjectCache/ObjectCacheModule.php:90
2415 -msgid "Redis User"
2567 +#: includes/modules/ObjectCache/ObjectCacheModule.php:80
2568 +msgid "The default Redis port is 6379."
2416 2569 msgstr ""
2417 2570
2418 -#: includes/modules/ObjectCache/ObjectCacheModule.php:91
2419 -msgid "Optional. Set this only if your host provisioned a dedicated Redis ACL user (Redis 6+) — e.g. some managed hosts issue a Redis User alongside the password. Leave blank to authenticate as the default user (legacy password-only Redis)."
2571 +#: includes/modules/ObjectCache/ObjectCacheModule.php:94
2572 +msgid "Redis username"
2420 2573 msgstr ""
2421 2574
2422 -#: includes/modules/ObjectCache/ObjectCacheModule.php:98
2423 -msgid "Redis Password"
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."
2424 2577 msgstr ""
2425 2578
2426 -#: includes/modules/ObjectCache/ObjectCacheModule.php:99
2427 -msgid "Leave blank if your Redis server runs without auth."
2579 +#: includes/modules/ObjectCache/ObjectCacheModule.php:104
2580 +msgid "Leave blank if your Redis server has no password."
2428 2581 msgstr ""
2429 2582
2430 -#: includes/modules/ObjectCache/ObjectCacheModule.php:107
2431 -msgid "Redis Database"
2583 +#: includes/modules/ObjectCache/ObjectCacheModule.php:113
2584 +msgid "Redis database"
2432 2585 msgstr ""
2433 2586
2434 -#: includes/modules/ObjectCache/ObjectCacheModule.php:108
2435 -msgid "Redis logical DB number (0-15). Use a dedicated DB per site if Redis is shared."
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."
2436 2589 msgstr ""
2437 2590
2438 -#: includes/modules/ObjectCache/ObjectCacheModule.php:135
2439 -msgid "Memcached Host"
2591 +#: includes/modules/ObjectCache/ObjectCacheModule.php:143
2592 +msgid "Memcached host"
2440 2593 msgstr ""
2441 2594
2442 -#: includes/modules/ObjectCache/ObjectCacheModule.php:136
2443 -msgid "Used when Backend = Memcached."
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."
2444 2597 msgstr ""
2445 2598
2446 -#: includes/modules/ObjectCache/ObjectCacheModule.php:157
2447 -msgid "Memcached Port"
2599 +#: includes/modules/ObjectCache/ObjectCacheModule.php:166
2600 +msgid "Memcached port"
2448 2601 msgstr ""
2449 2602
2450 -#: includes/modules/ObjectCache/ObjectCacheModule.php:158
2451 -msgid "Default Memcached port is 11211."
2603 +#: includes/modules/ObjectCache/ObjectCacheModule.php:167
2604 +msgid "The default Memcached port is 11211."
2452 2605 msgstr ""
2453 2606
2454 -#: includes/modules/ObjectCache/ObjectCacheModule.php:184
2455 -msgid "Cache Key Prefix"
2607 +#: includes/modules/ObjectCache/ObjectCacheModule.php:195
2608 +msgid "Cache key prefix"
2456 2609 msgstr ""
2457 2610
2458 -#: includes/modules/ObjectCache/ObjectCacheModule.php:185
2459 -msgid "Unique salt for this site's cache keys. Leave blank and xSpeed derives one automatically for this install, so sites sharing a Redis/Memcached server never collide. On ACL/namespaced Redis (e.g. xCloud), set this to the host's \"Redis Object Cache Key\" — otherwise cache writes are denied (NOPERM) and nothing persists."
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."
2460 2613 msgstr ""
2461 2614
2462 -#: includes/modules/ObjectCache/ObjectCacheModule.php:193
2463 -msgid "Connection Timeout (seconds)"
2615 +#: includes/modules/ObjectCache/ObjectCacheModule.php:206
2616 +msgid "Connection timeout (seconds)"
2464 2617 msgstr ""
2465 2618
2466 -#: includes/modules/ObjectCache/ObjectCacheModule.php:195
2467 -msgid "How long to wait for a connection. Keep low (1-2s) so a misconfigured cache never stalls the page."
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."
2468 2621 msgstr ""
2469 2622
2470 -#: includes/modules/ObjectCache/ObjectCacheModule.php:201
2471 -msgid "Persistent Connections"
2623 +#: includes/modules/ObjectCache/ObjectCacheModule.php:215
2624 +msgid "Persistent connections"
2472 2625 msgstr ""
2473 2626
2474 -#: includes/modules/ObjectCache/ObjectCacheModule.php:202
2475 -msgid "Reuse the connection across PHP requests when supported. Generally a win unless the cache server complains about idle connections."
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."
2476 2629 msgstr ""
2477 2630
2478 -#: includes/modules/ObjectCache/ObjectCacheModule.php:998
2631 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1013
2479 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."
2480 2633 msgstr ""
2481 2634
2482 -#: includes/modules/ObjectCache/ObjectCacheModule.php:1001
2635 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1016
2483 2636 msgid "The drop-in is installed but is not storing anything, so this counts as off. Check the connection settings below."
2484 2637 msgstr ""
2485 2638
2486 -#: includes/modules/ObjectCache/ObjectCacheModule.php:1003
2639 +#: includes/modules/ObjectCache/ObjectCacheModule.php:1018
2487 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."
2488 2641 msgstr ""
2489 2642
2490 2643 #: includes/modules/Preloader/PreloaderModule.php:33
@@ -2491,60 +2644,66 @@
2491 2644 msgid "Crawl Now"
2492 2645 msgstr ""
2493 2646
2494 2647 #: includes/modules/Preloader/PreloaderModule.php:35
2495 -msgid "Crawl the sitemap to warm cache so visitors never hit a cold MISS."
2648 +msgid "Visits your pages ahead of time so visitors get fast cached pages."
2496 2649 msgstr ""
2497 2650
2498 -#: includes/modules/Preloader/PreloaderModule.php:48
2499 -msgid "Enable Preloader"
2651 +#: includes/modules/Preloader/PreloaderModule.php:62
2652 +msgid "Your server is blocking the xSpeed cache warmer"
2500 2653 msgstr ""
2501 2654
2502 -#: includes/modules/Preloader/PreloaderModule.php:49
2503 -msgid "When on, xSpeed crawls the sitemap on the schedule below and warms the page cache."
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."
2504 2659 msgstr ""
2505 2660
2506 -#: includes/modules/Preloader/PreloaderModule.php:61
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
2507 2666 msgid "Schedule"
2508 2667 msgstr ""
2509 2668
2510 -#: includes/modules/Preloader/PreloaderModule.php:62
2511 -msgid "How often to start a fresh crawl. Manual means you trigger it from the dashboard."
2669 +#: includes/modules/Preloader/PreloaderModule.php:92
2670 +msgid "How often to visit all pages again. Manual means you start it from the dashboard."
2512 2671 msgstr ""
2513 2672
2514 -#: includes/modules/Preloader/PreloaderModule.php:70
2515 -msgid "Batch Size"
2673 +#: includes/modules/Preloader/PreloaderModule.php:100
2674 +msgid "Pages per run"
2516 2675 msgstr ""
2517 2676
2518 -#: includes/modules/Preloader/PreloaderModule.php:71
2519 -msgid "URLs warmed per cron tick. Higher = faster crawl, more load on the origin."
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."
2520 2679 msgstr ""
2521 2680
2522 -#: includes/modules/Preloader/PreloaderModule.php:77
2681 +#: includes/modules/Preloader/PreloaderModule.php:108
2523 2682 msgid "Sitemap URL (optional)"
2524 2683 msgstr ""
2525 2684
2526 -#: includes/modules/Preloader/PreloaderModule.php:78
2527 -msgid "Override the auto-detected WordPress core sitemap (/wp-sitemap.xml). Leave blank for default."
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."
2528 2687 msgstr ""
2529 2688
2530 -#: includes/modules/Preloader/PreloaderModule.php:84
2689 +#: includes/modules/Preloader/PreloaderModule.php:115
2531 2690 msgid "Warm new content immediately"
2532 2691 msgstr ""
2533 2692
2534 -#: includes/modules/Preloader/PreloaderModule.php:85
2535 -msgid "When a post or page is published, fetch it once so the first visitor sees a cache HIT, not a cold MISS."
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."
2536 2695 msgstr ""
2537 2696
2538 -#: includes/modules/Preloader/PreloaderModule.php:91
2697 +#: includes/modules/Preloader/PreloaderModule.php:122
2539 2698 msgid "Re-warm after comments"
2540 2699 msgstr ""
2541 2700
2542 -#: includes/modules/Preloader/PreloaderModule.php:92
2543 -msgid "Re-warm a page after a comment is posted (Cache purges the page on comment; this fetches it back into cache)."
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."
2544 2703 msgstr ""
2545 2704
2546 -#: includes/modules/Preloader/PreloaderModule.php:268
2705 +#: includes/modules/Preloader/PreloaderModule.php:299
2547 2706 msgid "Enable the preloader before starting a crawl."
2548 2707 msgstr ""
2549 2708
2550 2709 #: includes/modules/Privacy/PrivacyModule.php:47
@@ -2551,51 +2710,19 @@
2551 2710 msgid "Privacy & usage data"
2552 2711 msgstr ""
2553 2712
2554 2713 #: includes/modules/Privacy/PrivacyModule.php:49
2555 -msgid "Control the anonymous usage analytics you were asked about in the setup wizard."
2714 +msgid "Change the usage data choice you made in the setup wizard."
2556 2715 msgstr ""
2557 2716
2558 -#: includes/modules/Privacy/PrivacyModule.php:58
2559 -msgid "Share anonymous usage data"
2560 -msgstr ""
2561 -
2562 2717 #: includes/modules/Privacy/PrivacyModule.php:59
2563 -msgid "Share anonymous basics — WordPress & PHP version, active theme & plugins, server type, and which features you enable. Never personal data or page content. Turning this off stops all collection and clears the scheduled send."
2718 +msgid "Share usage data"
2564 2719 msgstr ""
2565 2720
2566 -#: includes/modules/RenderSkip/RenderSkipModule.php:71
2567 -msgid "Render Skip"
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."
2568 2723 msgstr ""
2569 2724
2570 -#: includes/modules/RenderSkip/RenderSkipModule.php:73
2571 -msgid "Skip the browser's style & layout work for below-fold sections until the visitor scrolls near them — cuts main-thread blocking time on long builder pages without changing the content."
2572 -msgstr ""
2573 -
2574 -#: includes/modules/RenderSkip/RenderSkipModule.php:82
2575 -msgid "Skip below-fold rendering"
2576 -msgstr ""
2577 -
2578 -#: includes/modules/RenderSkip/RenderSkipModule.php:83
2579 -msgid "Stamp below-fold sections with content-visibility: auto so the browser defers their style and layout work until scroll approaches. Above-fold sections are never touched."
2580 -msgstr ""
2581 -
2582 -#: includes/modules/RenderSkip/RenderSkipModule.php:90
2583 -msgid "Above-fold sections"
2584 -msgstr ""
2585 -
2586 -#: includes/modules/RenderSkip/RenderSkipModule.php:91
2587 -msgid "How many top-level sections from the top of the page are treated as above the fold and left untouched. Raise this if a section near the top appears late."
2588 -msgstr ""
2589 -
2590 -#: includes/modules/RenderSkip/RenderSkipModule.php:96
2591 -msgid "Section classes"
2592 -msgstr ""
2593 -
2594 -#: includes/modules/RenderSkip/RenderSkipModule.php:97
2595 -msgid "Class names that identify a top-level page section. Defaults cover Elementor sections and flexbox containers; add your theme's section class for non-Elementor pages."
2596 -msgstr ""
2597 -
2598 2725 #: includes/modules/ResourceHints/ResourceHintsModule.php:60
2599 2726 msgid "Resource Hints"
2600 2727 msgstr ""
2601 2728
@@ -2603,143 +2730,142 @@
2603 2730 msgid "Hints"
2604 2731 msgstr ""
2605 2732
2606 2733 #: includes/modules/ResourceHints/ResourceHintsModule.php:63
2607 -msgid "Preload the LCP hero image and preconnect to font hosts so the largest element paints sooner."
2734 +msgid "Tells the browser to fetch the main image and fonts early."
2608 2735 msgstr ""
2609 2736
2610 -#: includes/modules/ResourceHints/ResourceHintsModule.php:77
2611 -msgid "Enable Resource Hints"
2612 -msgstr ""
2613 -
2614 2737 #: includes/modules/ResourceHints/ResourceHintsModule.php:78
2615 -msgid "Master switch for the LCP-image preload + preconnect resource hints. On by default — these are safe, no-config optimizations that help every theme."
2738 +msgid "Enable resource hints"
2616 2739 msgstr ""
2617 2740
2618 -#: includes/modules/ResourceHints/ResourceHintsModule.php:83
2619 -msgid "Preload LCP Image"
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."
2620 2743 msgstr ""
2621 2744
2622 2745 #: includes/modules/ResourceHints/ResourceHintsModule.php:84
2623 -msgid "Detect the largest above-the-fold image and emit a <link rel=\"preload\" as=\"image\" fetchpriority=\"high\"> in the head, plus fetchpriority=\"high\" on the image. This is the highest-impact fix for Largest Contentful Paint — it beats any lazy-load the theme applied."
2746 +msgid "Preload the main image"
2624 2747 msgstr ""
2625 2748
2626 -#: includes/modules/ResourceHints/ResourceHintsModule.php:91
2627 -msgid "Images to Preload"
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."
2628 2751 msgstr ""
2629 2752
2630 -#: includes/modules/ResourceHints/ResourceHintsModule.php:92
2631 -msgid "How many of the first images on the page to preload. 1 is right for most sites (the single hero). Raise it only if the fold shows a small gallery."
2753 +#: includes/modules/ResourceHints/ResourceHintsModule.php:93
2754 +msgid "Images to preload"
2632 2755 msgstr ""
2633 2756
2634 -#: includes/modules/ResourceHints/ResourceHintsModule.php:98
2635 -msgid "Exclude From Preload"
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."
2636 2759 msgstr ""
2637 2760
2638 -#: includes/modules/ResourceHints/ResourceHintsModule.php:99
2639 -msgid "Substring patterns (filename or class) that, if found in an <img>, exempt it from being treated as the LCP image. Useful for tracking pixels, spacers, or a decorative first image that is not the hero."
2761 +#: includes/modules/ResourceHints/ResourceHintsModule.php:102
2762 +msgid "Excluded from preload"
2640 2763 msgstr ""
2641 2764
2642 -#: includes/modules/ResourceHints/ResourceHintsModule.php:105
2643 -msgid "Always Preload These Images"
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."
2644 2767 msgstr ""
2645 2768
2646 -#: includes/modules/ResourceHints/ResourceHintsModule.php:106
2647 -msgid "Image URLs (full or site-relative) to preload with high priority on every page. This is the escape hatch for an LCP image the detector cannot see — most often a hero section's CSS background-image, which carries none of the signals the automatic pick reads. Keep it to one or two images: preloading many hands them all top network priority and the page itself loses. The first three entries are used."
2769 +#: includes/modules/ResourceHints/ResourceHintsModule.php:110
2770 +msgid "Always preload these images"
2648 2771 msgstr ""
2649 2772
2650 2773 #: includes/modules/ResourceHints/ResourceHintsModule.php:111
2651 -msgid "Preconnect to Font Hosts"
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."
2652 2775 msgstr ""
2653 2776
2654 -#: includes/modules/ResourceHints/ResourceHintsModule.php:112
2655 -msgid "When Google Fonts are detected, emit <link rel=\"preconnect\"> to fonts.googleapis.com and fonts.gstatic.com so the DNS + TLS handshake happens ahead of the font request instead of on the critical path."
2777 +#: includes/modules/ResourceHints/ResourceHintsModule.php:117
2778 +msgid "Connect early to Google Fonts"
2656 2779 msgstr ""
2657 2780
2658 2781 #: includes/modules/ResourceHints/ResourceHintsModule.php:118
2659 -msgid "Extra Preconnect Hosts"
2782 +msgid "When the page uses Google Fonts, the browser connects to Google's servers early, so fonts arrive sooner."
2660 2783 msgstr ""
2661 2784
2662 -#: includes/modules/ResourceHints/ResourceHintsModule.php:119
2663 -msgid "One origin per line (e.g. https://cdn.example.com) to preconnect in addition to the auto-detected font hosts. Use for a CDN or third-party origin that serves above-the-fold assets."
2785 +#: includes/modules/ResourceHints/ResourceHintsModule.php:125
2786 +msgid "Other domains to connect early"
2664 2787 msgstr ""
2665 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 +
2666 2793 #: includes/modules/Score/ScoreModule.php:58
2667 2794 msgid "Speed Test"
2668 2795 msgstr ""
2669 2796
2670 2797 #: includes/modules/Score/ScoreModule.php:64
2671 -msgid "Run a PageSpeed Insights or GTmetrix audit from the dashboard and keep the history next to your TTFB benchmark."
2798 +msgid "Run a PageSpeed Insights or GTmetrix test and keep a history of the scores."
2672 2799 msgstr ""
2673 2800
2674 -#: includes/modules/Score/ScoreModule.php:77
2801 +#: includes/modules/Score/ScoreModule.php:78
2675 2802 msgid "Allow speed tests"
2676 2803 msgstr ""
2677 2804
2678 -#: includes/modules/Score/ScoreModule.php:83
2679 -msgid "Turns on automatically the first time you run a speed test — the button press is the consent. Switch it off to stop every feature, including optimize runs, from contacting a score provider."
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."
2680 2807 msgstr ""
2681 2808
2682 -#: includes/modules/Score/ScoreModule.php:98
2683 -#: assets/admin.js
2684 -msgid "Provider"
2809 +#: includes/modules/Score/ScoreModule.php:99
2810 +msgid "Test provider"
2685 2811 msgstr ""
2686 2812
2687 -#: includes/modules/Score/ScoreModule.php:99
2688 -msgid "PageSpeed Insights works without an API key. GTmetrix requires one."
2813 +#: includes/modules/Score/ScoreModule.php:100
2814 +msgid "PageSpeed Insights works without an API key. GTmetrix needs one."
2689 2815 msgstr ""
2690 2816
2691 -#: includes/modules/Score/ScoreModule.php:104
2817 +#: includes/modules/Score/ScoreModule.php:105
2692 2818 msgid "PageSpeed API key (optional)"
2693 2819 msgstr ""
2694 2820
2695 -#: includes/modules/Score/ScoreModule.php:105
2696 -msgid "Only needed if you hit Google's anonymous rate limit. Free from cloud.google.com."
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."
2697 2823 msgstr ""
2698 2824
2699 -#: includes/modules/Score/ScoreModule.php:117
2825 +#: includes/modules/Score/ScoreModule.php:119
2700 2826 msgid "GTmetrix API key"
2701 2827 msgstr ""
2702 2828
2703 -#: includes/modules/Score/ScoreModule.php:118
2704 -msgid "Required — GTmetrix has no anonymous mode. Found in your GTmetrix account settings."
2829 +#: includes/modules/Score/ScoreModule.php:120
2830 +msgid "GTmetrix does not run tests without a key. Find it in your GTmetrix account settings."
2705 2831 msgstr ""
2706 2832
2707 -#: includes/modules/Score/ScoreModule.php:127
2833 +#: includes/modules/Score/ScoreModule.php:129
2708 2834 msgid "URL to test"
2709 2835 msgstr ""
2710 2836
2711 -#: includes/modules/Score/ScoreModule.php:128
2837 +#: includes/modules/Score/ScoreModule.php:130
2712 2838 msgid "Leave empty to test your home page."
2713 2839 msgstr ""
2714 2840
2715 -#: includes/modules/Score/ScoreModule.php:134
2716 -msgid "Strategy"
2841 +#: includes/modules/Score/ScoreModule.php:136
2842 +msgid "Device"
2717 2843 msgstr ""
2718 2844
2719 -#: includes/modules/Score/ScoreModule.php:135
2720 -msgid "PageSpeed Insights only. Mobile is what Google ranks on."
2845 +#: includes/modules/Score/ScoreModule.php:137
2846 +msgid "Test as a phone or a desktop visitor. Google ranks sites on the mobile result."
2721 2847 msgstr ""
2722 2848
2723 -#: includes/modules/Score/ScoreModule.php:334
2724 -#: includes/modules/Score/ScoreModule.php:380
2849 +#: includes/modules/Score/ScoreModule.php:336
2850 +#: includes/modules/Score/ScoreModule.php:382
2725 2851 msgid "Hub-run speed tests are not enabled on this site."
2726 2852 msgstr ""
2727 2853
2728 -#: includes/modules/Score/ScoreModule.php:443
2854 +#: includes/modules/Score/ScoreModule.php:445
2729 2855 msgid "No URL to test."
2730 2856 msgstr ""
2731 2857
2732 -#: includes/modules/Score/ScoreModule.php:540
2858 +#: includes/modules/Score/ScoreModule.php:542
2733 2859 msgid "xSpeed Hub accepted the test but returned no run id. Please try again."
2734 2860 msgstr ""
2735 2861
2736 -#: includes/modules/Score/ScoreModule.php:619
2862 +#: includes/modules/Score/ScoreModule.php:621
2737 2863 msgid "The audit did not produce a result."
2738 2864 msgstr ""
2739 2865
2740 2866 #. translators: %s: module slug.
2741 -#: includes/modules/Settings/SettingsModule.php:320
2867 +#: includes/modules/Settings/SettingsModule.php:324
2742 2868 #, php-format
2743 2869 msgid "Refused a CLI settings write to the Pro module \"%s\" — no valid license."
2744 2870 msgstr ""
2745 2871
@@ -2750,16 +2876,56 @@
2750 2876 #: includes/modules/Support/SupportModule.php:30
2751 2877 msgid "Open a support ticket with a one-click system snapshot already attached."
2752 2878 msgstr ""
2753 2879
2754 -#: includes/modules/Support/SupportModule.php:40
2880 +#: includes/modules/Support/SupportModule.php:41
2755 2881 msgid "Support URL"
2756 2882 msgstr ""
2757 2883
2758 -#: includes/modules/Support/SupportModule.php:41
2759 -msgid "Where the \"Open ticket\" button takes the user."
2884 +#: includes/modules/Support/SupportModule.php:42
2885 +msgid "The page the \"Open ticket\" button opens. Leave the default to reach xSpeed support."
2760 2886 msgstr ""
2761 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 +
2762 2928 #: xspeed.php:220
2763 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."
2764 2930 msgstr ""
2765 2931
@@ -2806,9 +2972,9 @@
2806 2972 #: assets/admin.js
2807 2973 msgid "7 days"
2808 2974 msgstr ""
2809 2975
2810 -#. Source: src/components/score/ScanCard.tsx:185
2976 +#. Source: src/components/score/ScanCard.tsx:197
2811 2977 #: assets/admin.js
2812 2978 msgid "A full graded report: Core Web Vitals, caching, assets and platform."
2813 2979 msgstr ""
2814 2980
@@ -2816,9 +2982,9 @@
2816 2982 #: assets/admin.js
2817 2983 msgid "A key is saved. Type to replace it; use ✕ to remove it."
2818 2984 msgstr ""
2819 2985
2820 -#. Source: src/components/cache/CacheHero.tsx:238
2986 +#. Source: src/components/cache/CacheHero.tsx:245
2821 2987 #: assets/admin.js
2822 2988 msgid "Absorbed"
2823 2989 msgstr ""
2824 2990
@@ -2888,9 +3054,9 @@
2888 3054 #: assets/admin.js
2889 3055 msgid "Also cleared: %s."
2890 3056 msgstr ""
2891 3057
2892 -#. Source: src/components/overview/Recommendations.tsx:181
3058 +#. Source: src/components/overview/Recommendations.tsx:184
2893 3059 #: assets/admin.js
2894 3060 msgid "Also worth a look"
2895 3061 msgstr ""
2896 3062
@@ -2934,8 +3100,13 @@
2934 3100 #: assets/admin.js
2935 3101 msgid "Apply"
2936 3102 msgstr ""
2937 3103
3104 +#. Source: src/components/score/ScanCard.tsx:84
3105 +#: assets/admin.js
3106 +msgid "Assets"
3107 +msgstr ""
3108 +
2938 3109 #. Source: src/upsell/ProAudit.tsx:46
2939 3110 #: assets/admin.js
2940 3111 msgid "Audit failed"
2941 3112 msgstr ""
@@ -2949,9 +3120,9 @@
2949 3120 #: assets/admin.js
2950 3121 msgid "Automatic cleanup ran %1$s ago — %2$d file(s) removed, %3$d in total."
2951 3122 msgstr ""
2952 3123
2953 -#. Source: src/components/overview/MetricGrid.tsx:47
3124 +#. Source: src/components/overview/MetricGrid.tsx:57
2954 3125 #: assets/admin.js
2955 3126 msgid "Avg saved"
2956 3127 msgstr ""
2957 3128
@@ -2974,21 +3145,21 @@
2974 3145 #: assets/admin.js
2975 3146 msgid "Benchmark: cached vs uncached (ms)"
2976 3147 msgstr ""
2977 3148
2978 -#. Source: src/components/overview/Recommendations.tsx:230
3149 +#. Source: src/components/overview/Recommendations.tsx:233
2979 3150 #: assets/admin.js
2980 3151 msgid "Book"
2981 3152 msgstr ""
2982 3153
2983 -#. Source: src/components/overview/Recommendations.tsx:221
3154 +#. Source: src/components/overview/Recommendations.tsx:224
2984 3155 #: assets/admin.js
2985 3156 msgid "Book a free setup review with our team."
2986 3157 msgstr ""
2987 3158
2988 -#. Source: src/components/cache/CacheHero.tsx:242
3159 +#. Source: src/components/cache/CacheHero.tsx:249
2989 3160 #: assets/admin.js
2990 -msgid "bot / 404 requests in 24h — excluded from the hit ratio."
3161 +msgid "bot, 404 and cache-warming requests in 24h — excluded from the hit ratio."
2991 3162 msgstr ""
2992 3163
2993 3164 #. Source: src/components/TopBar.tsx:81
2994 3165 #: assets/admin.js
@@ -3089,9 +3260,9 @@
3089 3260 msgid "Cache purged"
3090 3261 msgstr ""
3091 3262
3092 3263 #. Source: src/components/health/HealthHero.tsx:30
3093 -#. Source: src/components/overview/MetricGrid.tsx:46
3264 +#. Source: src/components/overview/MetricGrid.tsx:56
3094 3265 #: assets/admin.js
3095 3266 msgid "Cache size"
3096 3267 msgstr ""
3097 3268
@@ -3111,9 +3282,9 @@
3111 3282 msgstr ""
3112 3283
3113 3284 #. Source: src/components/cache/StatDrilldown.tsx:140
3114 3285 #. Source: src/components/health/HealthHero.tsx:29
3115 -#. Source: src/components/overview/MetricGrid.tsx:45
3286 +#. Source: src/components/overview/MetricGrid.tsx:55
3116 3287 #: assets/admin.js
3117 3288 msgid "Cached pages"
3118 3289 msgstr ""
3119 3290
@@ -3305,9 +3476,9 @@
3305 3476 #: assets/admin.js
3306 3477 msgid "Connected to xSpeed Hub"
3307 3478 msgstr ""
3308 3479
3309 -#. Source: src/components/score/ScanCard.tsx:221
3480 +#. Source: src/components/score/ScanCard.tsx:233
3310 3481 #: assets/admin.js
3311 3482 msgid "Connected to xSpeed Hub — this report stays unlisted, not published under your domain."
3312 3483 msgstr ""
3313 3484
@@ -3335,8 +3506,13 @@
3335 3506 #: assets/admin.js
3336 3507 msgid "Control xSpeed with AI"
3337 3508 msgstr ""
3338 3509
3510 +#. Source: src/components/score/ScanCard.tsx:80
3511 +#: assets/admin.js
3512 +msgid "Core Web Vitals"
3513 +msgstr ""
3514 +
3339 3515 #. Source: src/components/overview/McpSessionDemo.tsx:230
3340 3516 #: assets/admin.js
3341 3517 msgid "Core Web Vitals checked"
3342 3518 msgstr ""
@@ -3371,9 +3547,9 @@
3371 3547 msgid "desktop"
3372 3548 msgstr ""
3373 3549
3374 3550 #. Source: src/components/overview/ScoreCard.tsx:90
3375 -#. Source: src/components/score/ScanCard.tsx:281
3551 +#. Source: src/components/score/ScanCard.tsx:293
3376 3552 #: assets/admin.js
3377 3553 msgid "Desktop"
3378 3554 msgstr ""
3379 3555
@@ -3478,9 +3654,9 @@
3478 3654 #: assets/admin.js
3479 3655 msgid "from wp-config.php"
3480 3656 msgstr ""
3481 3657
3482 -#. Source: src/components/score/ScanCard.tsx:358
3658 +#. Source: src/components/score/ScanCard.tsx:370
3483 3659 #: assets/admin.js
3484 3660 msgid "Full report"
3485 3661 msgstr ""
3486 3662
@@ -3494,9 +3670,9 @@
3494 3670 #: assets/admin.js
3495 3671 msgid "Go to Dashboard"
3496 3672 msgstr ""
3497 3673
3498 -#. Source: src/onboarding/OnboardingApp.tsx:168
3674 +#. Source: src/onboarding/OnboardingApp.tsx:165
3499 3675 #: assets/admin.js
3500 3676 msgid "Go to the dashboard"
3501 3677 msgstr ""
3502 3678
@@ -3504,10 +3680,10 @@
3504 3680 #: assets/admin.js
3505 3681 msgid "good"
3506 3682 msgstr ""
3507 3683
3508 -#. Source: src/components/score/ScanCard.tsx:261
3509 -#. Source: src/components/score/ScanCard.tsx:302
3684 +#. Source: src/components/score/ScanCard.tsx:273
3685 +#. Source: src/components/score/ScanCard.tsx:314
3510 3686 #: assets/admin.js
3511 3687 msgid "Grade"
3512 3688 msgstr ""
3513 3689
@@ -3541,10 +3717,10 @@
3541 3717 msgid "Hide"
3542 3718 msgstr ""
3543 3719
3544 3720 #. Source: src/components/cache/TrendCharts.tsx:125
3545 -#. Source: src/components/health/HealthHero.tsx:37
3546 -#. Source: src/components/overview/MetricGrid.tsx:44
3721 +#. Source: src/components/health/HealthHero.tsx:42
3722 +#. Source: src/components/overview/MetricGrid.tsx:45
3547 3723 #: assets/admin.js
3548 3724 msgid "Hit ratio"
3549 3725 msgstr ""
3550 3726
@@ -3557,8 +3733,13 @@
3557 3733 #: assets/admin.js
3558 3734 msgid "Hit Ratio · 24h · origin"
3559 3735 msgstr ""
3560 3736
3737 +#. Source: src/components/health/HealthHero.tsx:42
3738 +#: assets/admin.js
3739 +msgid "Hit ratio (PHP-served only)"
3740 +msgstr ""
3741 +
3561 3742 #. Source: src/components/cache/TrendCharts.tsx:83
3562 3743 #: assets/admin.js
3563 3744 msgid "Hit ratio and benchmark history, with your settings changes marked."
3564 3745 msgstr ""
@@ -3627,14 +3808,14 @@
3627 3808 #: assets/admin.js
3628 3809 msgid "Just say what you want"
3629 3810 msgstr ""
3630 3811
3631 -#. Source: src/components/overview/MetricGrid.tsx:51
3812 +#. Source: src/components/overview/MetricGrid.tsx:61
3632 3813 #: assets/admin.js
3633 3814 msgid "Key metrics"
3634 3815 msgstr ""
3635 3816
3636 -#. Source: src/components/overview/MetricGrid.tsx:44
3817 +#. Source: src/components/overview/MetricGrid.tsx:53
3637 3818 #: assets/admin.js
3638 3819 msgid "last 24 hours"
3639 3820 msgstr ""
3640 3821
@@ -3673,13 +3854,18 @@
3673 3854 #: assets/admin.js
3674 3855 msgid "Lighthouse performance, from your latest xSpeed Scan."
3675 3856 msgstr ""
3676 3857
3677 -#. Source: src/components/score/ScanCard.tsx:284
3858 +#. Source: src/components/score/ScanCard.tsx:296
3678 3859 #: assets/admin.js
3679 3860 msgid "Lighthouse performance, out of 100"
3680 3861 msgstr ""
3681 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 +
3682 3868 #. Source: src/App.tsx:456
3683 3869 #. Source: src/components/GroupLanding.tsx:67
3684 3870 #. Source: src/components/LogsView.tsx:35
3685 3871 #: assets/admin.js
@@ -3753,15 +3939,15 @@
3753 3939 msgid "Minify, compress, lazy-load, fonts and hints."
3754 3940 msgstr ""
3755 3941
3756 3942 #. Source: src/components/overview/ScoreCard.tsx:185
3757 -#. Source: src/components/score/ScanCard.tsx:294
3943 +#. Source: src/components/score/ScanCard.tsx:306
3758 3944 #: assets/admin.js
3759 3945 msgid "mobile"
3760 3946 msgstr ""
3761 3947
3762 3948 #. Source: src/components/overview/ScoreCard.tsx:91
3763 -#. Source: src/components/score/ScanCard.tsx:281
3949 +#. Source: src/components/score/ScanCard.tsx:293
3764 3950 #: assets/admin.js
3765 3951 msgid "Mobile"
3766 3952 msgstr ""
3767 3953
@@ -3967,9 +4153,9 @@
3967 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."
3968 4154 msgstr ""
3969 4155
3970 4156 #. Source: src/components/health/HealthHero.tsx:30
3971 -#. Source: src/components/overview/MetricGrid.tsx:46
4157 +#. Source: src/components/overview/MetricGrid.tsx:56
3972 4158 #: assets/admin.js
3973 4159 msgid "on disk"
3974 4160 msgstr ""
3975 4161
@@ -3977,9 +4163,9 @@
3977 4163 #: assets/admin.js
3978 4164 msgid "on your xSpeed Hub account."
3979 4165 msgstr ""
3980 4166
3981 -#. Source: src/onboarding/OnboardingApp.tsx:159
4167 +#. Source: src/onboarding/OnboardingApp.tsx:156
3982 4168 #: assets/admin.js
3983 4169 msgid "Onboarding data unavailable"
3984 4170 msgstr ""
3985 4171
@@ -4058,9 +4244,9 @@
4058 4244 #: assets/admin.js
4059 4245 msgid "PageSpeed & Core Web Vitals"
4060 4246 msgstr ""
4061 4247
4062 -#. Source: src/components/score/ScanCard.tsx:314
4248 +#. Source: src/components/score/ScanCard.tsx:326
4063 4249 #: assets/admin.js
4064 4250 msgid "Partial scan — some checks could not run, so the score covers less than the full rubric."
4065 4251 msgstr ""
4066 4252
@@ -4078,9 +4264,9 @@
4078 4264 #: assets/admin.js
4079 4265 msgid "Paste this site’s URL + token into the"
4080 4266 msgstr ""
4081 4267
4082 -#. Source: src/components/overview/MetricGrid.tsx:47
4268 +#. Source: src/components/overview/MetricGrid.tsx:57
4083 4269 #: assets/admin.js
4084 4270 msgid "per page load"
4085 4271 msgstr ""
4086 4272
@@ -4101,8 +4287,13 @@
4101 4287 #: assets/admin.js
4102 4288 msgid "Performance score and Core Web Vitals."
4103 4289 msgstr ""
4104 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 +
4105 4296 #. Source: src/components/score/ScorePanel.tsx:713
4106 4297 #: assets/admin.js
4107 4298 msgid "Pick one more run to compare."
4108 4299 msgstr ""
@@ -4111,8 +4302,13 @@
4111 4302 #: assets/admin.js
4112 4303 msgid "Pick two runs to compare them."
4113 4304 msgstr ""
4114 4305
4306 +#. Source: src/components/score/ScanCard.tsx:86
4307 +#: assets/admin.js
4308 +msgid "Platform"
4309 +msgstr ""
4310 +
4115 4311 #. Source: src/components/cache/StatDrilldown.tsx:277
4116 4312 #: assets/admin.js
4117 4313 msgid "Precompressed copies on disk:"
4118 4314 msgstr ""
@@ -4210,10 +4406,15 @@
4210 4406 #: assets/admin.js
4211 4407 msgid "Profile JSON to import"
4212 4408 msgstr ""
4213 4409
4214 -#. Source: src/components/score/ScanCard.tsx:95
4410 +#. Source: src/components/score/ScorePanel.tsx:727
4215 4411 #: assets/admin.js
4412 +msgid "Provider"
4413 +msgstr ""
4414 +
4415 +#. Source: src/components/score/ScanCard.tsx:107
4416 +#: assets/admin.js
4216 4417 msgid "pts"
4217 4418 msgstr ""
4218 4419
4219 4420 #. Source: src/components/CommandPalette.tsx:58
@@ -4247,9 +4448,9 @@
4247 4448 #: assets/admin.js
4248 4449 msgid "Purge, benchmark, preload and tune settings by asking your AI"
4249 4450 msgstr ""
4250 4451
4251 -#. Source: src/components/score/ScanCard.tsx:329
4452 +#. Source: src/components/score/ScanCard.tsx:341
4252 4453 #: assets/admin.js
4253 4454 msgid "ranked by points recovered"
4254 4455 msgstr ""
4255 4456
@@ -4294,10 +4495,10 @@
4294 4495 #: assets/admin.js
4295 4496 msgid "Recent changes"
4296 4497 msgstr ""
4297 4498
4298 -#. Source: src/components/overview/Recommendations.tsx:116
4299 -#. Source: src/components/overview/Recommendations.tsx:120
4499 +#. Source: src/components/overview/Recommendations.tsx:119
4500 +#. Source: src/components/overview/Recommendations.tsx:123
4300 4501 #: assets/admin.js
4301 4502 msgid "Recommended for your site"
4302 4503 msgstr ""
4303 4504
@@ -4371,9 +4572,9 @@
4371 4572 msgid "Run a GTmetrix test on this site"
4372 4573 msgstr ""
4373 4574
4374 4575 #. Source: src/components/overview/ScoreCard.tsx:295
4375 -#. Source: src/components/score/ScanCard.tsx:197
4576 +#. Source: src/components/score/ScanCard.tsx:209
4376 4577 #: assets/admin.js
4377 4578 msgid "Run a scan"
4378 4579 msgstr ""
4379 4580
@@ -4441,14 +4642,14 @@
4441 4642 #: assets/admin.js
4442 4643 msgid "Saving changes…"
4443 4644 msgstr ""
4444 4645
4445 -#. Source: src/components/score/ScanCard.tsx:197
4646 +#. Source: src/components/score/ScanCard.tsx:209
4446 4647 #: assets/admin.js
4447 4648 msgid "Scan again"
4448 4649 msgstr ""
4449 4650
4450 -#. Source: src/components/score/ScanCard.tsx:197
4651 +#. Source: src/components/score/ScanCard.tsx:209
4451 4652 #: assets/admin.js
4452 4653 msgid "Scanning…"
4453 4654 msgstr ""
4454 4655
@@ -4499,13 +4700,18 @@
4499 4700 msgid "See how this site performs for real visitors."
4500 4701 msgstr ""
4501 4702
4502 4703 #. Source: src/components/health/HealthHero.tsx:29
4503 -#. Source: src/components/overview/MetricGrid.tsx:45
4704 +#. Source: src/components/overview/MetricGrid.tsx:55
4504 4705 #: assets/admin.js
4505 4706 msgid "served without PHP"
4506 4707 msgstr ""
4507 4708
4709 +#. Source: src/components/score/ScanCard.tsx:82
4710 +#: assets/admin.js
4711 +msgid "Server & caching"
4712 +msgstr ""
4713 +
4508 4714 #. Source: src/components/RewriteAlert.tsx:106
4509 4715 #: assets/admin.js
4510 4716 msgid "Server config missing — cache running on PHP fallback"
4511 4717 msgstr ""
@@ -4665,9 +4871,9 @@
4665 4871 #: assets/admin.js
4666 4872 msgid "This credential is defined in wp-config.php and cannot be changed here."
4667 4873 msgstr ""
4668 4874
4669 -#. Source: src/components/score/ScanCard.tsx:222
4875 +#. Source: src/components/score/ScanCard.tsx:234
4670 4876 #: assets/admin.js
4671 4877 msgid "This report will be publicly visible at xspeedcache.com, listed under your domain. Connect xSpeed Hub to keep your reports unlisted."
4672 4878 msgstr ""
4673 4879
@@ -4772,14 +4978,14 @@
4772 4978 #: assets/admin.js
4773 4979 msgid "Waiting for connection…"
4774 4980 msgstr ""
4775 4981
4776 -#. Source: src/components/overview/Recommendations.tsx:218
4982 +#. Source: src/components/overview/Recommendations.tsx:221
4777 4983 #: assets/admin.js
4778 4984 msgid "Want a hand?"
4779 4985 msgstr ""
4780 4986
4781 -#. Source: src/onboarding/OnboardingApp.tsx:162
4987 +#. Source: src/onboarding/OnboardingApp.tsx:159
4782 4988 #: assets/admin.js
4783 4989 msgid "We couldn't load the setup wizard. Your site is unaffected — you can configure everything from the dashboard."
4784 4990 msgstr ""
4785 4991
@@ -4792,9 +4998,9 @@
4792 4998 #: assets/admin.js
4793 4999 msgid "What this adds"
4794 5000 msgstr ""
4795 5001
4796 -#. Source: src/components/score/ScanCard.tsx:327
5002 +#. Source: src/components/score/ScanCard.tsx:339
4797 5003 #: assets/admin.js
4798 5004 msgid "What to fix next"
4799 5005 msgstr ""
4800 5006
@@ -4869,17 +5075,17 @@
4869 5075 #: assets/admin.js
4870 5076 msgid "xSpeed Pro is installed — activate your license to unlock this module and every other Pro feature."
4871 5077 msgstr ""
4872 5078
4873 -#. Source: src/components/score/ScanCard.tsx:173
4874 -#. Source: src/components/score/ScanCard.tsx:183
4875 -#. Source: src/components/score/ScanCard.tsx:304
5079 +#. Source: src/components/score/ScanCard.tsx:185
5080 +#. Source: src/components/score/ScanCard.tsx:195
5081 +#. Source: src/components/score/ScanCard.tsx:316
4876 5082 #. Source: src/components/score/ScorePanel.tsx:426
4877 5083 #: assets/admin.js
4878 5084 msgid "xSpeed Scan"
4879 5085 msgstr ""
4880 5086
4881 -#. Source: src/components/score/ScanCard.tsx:264
5087 +#. Source: src/components/score/ScanCard.tsx:276
4882 5088 #: assets/admin.js
4883 5089 msgid "xSpeed Scan, out of 100"
4884 5090 msgstr ""
4885 5091
@@ -4897,9 +5103,9 @@
4897 5103 #: assets/admin.js
4898 5104 msgid "You're all set"
4899 5105 msgstr ""
4900 5106
4901 -#. Source: src/components/overview/Recommendations.tsx:131
5107 +#. Source: src/components/overview/Recommendations.tsx:134
4902 5108 #: assets/admin.js
4903 5109 msgid "You're all set — no recommendations right now."
4904 5110 msgstr ""
4905 5111