# Copyright (C) 2026 All in One SEO Team # This file is distributed under the GPL-2.0+. msgid "" msgstr "" "Project-Id-Version: 404 to 301 - Redirect Manager, 301 Redirection, 404 Error Logs & 404 Monitoring 4.0.5\n" "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/404-to-301\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "POT-Creation-Date: 2026-09-30T13:54:04+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "X-Generator: WP-CLI 2.12.0\n" "X-Domain: 404-to-301\n" #. Plugin Name of the plugin #: 404-to-301.php msgid "404 to 301 - Redirect Manager, 301 Redirection, 404 Error Logs & 404 Monitoring" msgstr "" #. Plugin URI of the plugin #: 404-to-301.php msgid "https://wordpress.org/plugins/404-to-301/" msgstr "" #. Description of the plugin #: 404-to-301.php msgid "Custom redirects (301, 302, 307), automatic 404 redirection, full 404 error logs and email alerts — a complete redirect & 404 toolkit." msgstr "" #. Author of the plugin #: 404-to-301.php msgid "All in One SEO Team" msgstr "" #. Author URI of the plugin #: 404-to-301.php msgid "https://aioseo.com/" msgstr "" #: app/Abilities/Abilities.php:88 msgid "Redirect and 404 management abilities provided by 404 to 301." msgstr "" #: app/Abilities/Abilities.php:136 msgid "List Redirects" msgstr "" #: app/Abilities/Abilities.php:137 msgid "Returns a page of redirect rules with their source, destination, status code, match type, hit count and whether they are enabled. Filterable by search term, match type, status code and enabled state." msgstr "" #: app/Abilities/Abilities.php:146 msgid "Match against the source and destination." msgstr "" #: app/Abilities/Abilities.php:154 msgid "HTTP status code the rule sends, e.g. 301." msgstr "" #: app/Abilities/Abilities.php:170 msgid "Create Redirect" msgstr "" #: app/Abilities/Abilities.php:171 msgid "Creates a redirect rule. The source is a path or pattern on this site; the destination is either a URL or the ID of an existing page. Rejects a source that duplicates an existing rule, an invalid regular expression, and a destination equal to its own source." msgstr "" #: app/Abilities/Abilities.php:188 msgid "Update Redirect" msgstr "" #: app/Abilities/Abilities.php:189 msgid "Updates an existing redirect rule. Only the fields passed in are changed; everything else is left as it is. Use this to repoint, re-code or disable a rule." msgstr "" #: app/Abilities/Abilities.php:197 #: app/Abilities/Abilities.php:222 msgid "The redirect ID." msgstr "" #: app/Abilities/Abilities.php:214 msgid "Delete Redirect" msgstr "" #: app/Abilities/Abilities.php:215 msgid "Permanently deletes a redirect rule and unlinks it from any 404 log entry it was resolving. Disabling a rule is usually the safer option — see the update ability." msgstr "" #: app/Abilities/Abilities.php:243 msgid "Test a URL Against the Redirects" msgstr "" #: app/Abilities/Abilities.php:244 msgid "Resolves a path the way the plugin would for a real visitor and reports what happens: which rule matches (if any), the destination it sends them to, the status code, and whether the site-wide 404 fallback would take over instead. Changes nothing." msgstr "" #: app/Abilities/Abilities.php:251 msgid "Path or URL to resolve, e.g. /old-post/." msgstr "" #: app/Abilities/Abilities.php:263 msgid "Which mechanism handles the request: a redirect rule, the site-wide 404 fallback, or nothing." msgstr "" #: app/Abilities/Abilities.php:267 msgid "Where the visitor lands; null when nothing redirects them." msgstr "" #: app/Abilities/Abilities.php:294 msgid "List 404 Logs" msgstr "" #: app/Abilities/Abilities.php:295 msgid "Returns a page of logged 404 requests with the requested path, referrer, hit count and whether the entry is still open. Sort by hits to find the URLs worth fixing first." msgstr "" #: app/Abilities/Abilities.php:304 msgid "Match against the requested path and the referrer." msgstr "" #: app/Abilities/Abilities.php:309 #: app/Abilities/Abilities.php:360 msgid "0 open, 1 ignored, 2 fixed." msgstr "" #: app/Abilities/Abilities.php:324 msgid "Summarise 404 Logs" msgstr "" #: app/Abilities/Abilities.php:325 msgid "Returns how many logged 404s are open, ignored, fixed and resolved by a custom redirect. A cheap health check to run before listing anything." msgstr "" #: app/Abilities/Abilities.php:347 msgid "Update a 404 Log Entry" msgstr "" #: app/Abilities/Abilities.php:348 msgid "Marks a logged 404 as open, ignored or fixed. Ignoring an entry keeps it out of the open count and the email reports without deleting its history." msgstr "" #: app/Abilities/Abilities.php:355 msgid "The log entry ID." msgstr "" #: app/Abilities/Abilities.php:375 msgid "Fix a Logged 404" msgstr "" #: app/Abilities/Abilities.php:376 msgid "Creates a redirect for a logged 404 and links the two, which marks the log entry fixed. The source is taken from the log entry, so only the destination has to be supplied." msgstr "" #: app/Abilities/Abilities.php:383 msgid "The log entry ID to resolve." msgstr "" #: app/Abilities/Abilities.php:387 msgid "Destination path or URL." msgstr "" #: app/Abilities/Abilities.php:391 msgid "ID of an existing page to send visitors to, instead of a URL." msgstr "" #: app/Abilities/Abilities.php:395 #: app/Abilities/Abilities.php:786 msgid "HTTP status code to send. Defaults to 301." msgstr "" #: app/Abilities/Abilities.php:425 msgid "Get 404 to 301 Settings" msgstr "" #: app/Abilities/Abilities.php:426 msgid "Returns every plugin setting as a flat map: the site-wide 404 fallback, 404 logging, email notifications and reports, and log trimming." msgstr "" #: app/Abilities/Abilities.php:439 msgid "Update 404 to 301 Settings" msgstr "" #: app/Abilities/Abilities.php:440 msgid "Writes plugin settings from a flat map of the same keys the get ability returns. Only the keys passed in are changed. Unknown keys are ignored, and the Telegram credentials cannot be written here." msgstr "" #: app/Abilities/Abilities.php:447 msgid "Flat key => value map of the settings to change." msgstr "" #: app/Abilities/Abilities.php:616 #: app/Api/Logs.php:218 #: app/Api/Logs.php:238 #: app/Cli/Logs.php:134 msgid "Log not found." msgstr "" #: app/Abilities/Abilities.php:764 msgid "Path or pattern to redirect from, e.g. /old-post/." msgstr "" #: app/Abilities/Abilities.php:769 msgid "How the source is matched. Defaults to exact." msgstr "" #: app/Abilities/Abilities.php:774 msgid "Whether the destination is a URL, an existing page, or nothing." msgstr "" #: app/Abilities/Abilities.php:778 msgid "Destination path or URL, used when target_type is link." msgstr "" #: app/Abilities/Abilities.php:782 msgid "Destination page ID, used when target_type is page." msgstr "" #: app/Abilities/Abilities.php:790 msgid "Whether the rule runs. Defaults to true." msgstr "" #: app/Abilities/Abilities.php:795 msgid "What to do with the request query string. Defaults to ignore." msgstr "" #: app/Abilities/Abilities.php:883 msgid "Total rows matching the filters, across all pages." msgstr "" #: app/Admin/Admin.php:72 msgid "Give us a 5-star rating!" msgstr "" #. Translators: 1 - The plugin name, 2 - Five star icons, 3 - "WordPress.org". #: app/Admin/Admin.php:88 #, php-format msgid "Please rate %1$s %2$s on %3$s to help us spread the word." msgstr "" #. Translators: 1 - The WordPress version, 2 - The plugin name, 3 - The plugin version. #: app/Admin/Admin.php:116 #, php-format msgid "WordPress %1$s | %2$s %3$s" msgstr "" #. Translators: 1 - The plugin name. #: app/Admin/DashboardWidget.php:75 #, php-format msgid "%1$s — Recent 404s" msgstr "" #. Translators: 1 - A number of days. #: app/Admin/DashboardWidget.php:102 #, php-format msgid "No 404s in the last %1$d days." msgstr "" #. Translators: 1 - A number of hits. #: app/Admin/DashboardWidget.php:116 #, php-format msgid "%1$s hit" msgid_plural "%1$s hits" msgstr[0] "" msgstr[1] "" #: app/Admin/DashboardWidget.php:144 msgid "View all 404s" msgstr "" #. Translators: 1 - The plugin name. #: app/Admin/DashboardWidget.php:146 #, php-format msgid "Open %1$s" msgstr "" #: app/Admin/DashboardWidget.php:162 msgid "Find the links causing these" msgstr "" #: app/Admin/Links.php:57 #: app/Admin/Menu.php:98 #: assets/src/modules/logs/view-modal.js:135 #: assets/src/modules/settings/index.js:36 msgid "Settings" msgstr "" #: app/Admin/Links.php:93 msgid "Get AIOSEO" msgstr "" #: app/Admin/Links.php:95 #: app/Admin/SiteHealth.php:653 msgid "Get Broken Link Checker" msgstr "" #: app/Admin/Links.php:125 msgid "Support" msgstr "" #: app/Admin/Menu.php:63 msgid "Custom Redirects — 404 to 301" msgstr "" #: app/Admin/Menu.php:64 #: app/Admin/Menu.php:78 #: assets/src/modules/settings/tabs/index.js:19 msgid "Redirects" msgstr "" #: app/Admin/Menu.php:77 #: assets/src/modules/redirects/index.js:57 msgid "Custom Redirects" msgstr "" #: app/Admin/Menu.php:86 #: assets/src/modules/logs/index.js:34 msgid "404 Error Logs" msgstr "" #: app/Admin/Menu.php:97 msgid "404 to 301 Settings" msgstr "" #: app/Admin/Menu.php:110 #: app/Admin/Menu.php:111 #: assets/src/modules/about/index.js:227 msgid "About Us" msgstr "" #: app/Admin/Menu.php:201 #: assets/src/modules/settings/tabs/index.js:23 #: assets/src/modules/settings/tabs/logs.js:44 msgid "404 Logs" msgstr "" #: app/Admin/Notices/RedundantAddons.php:127 msgid "404 to 301: your add-ons are now built in" msgstr "" #. translators: %s: comma-separated list of addon plugin names. #: app/Admin/Notices/RedundantAddons.php:131 #, php-format msgid "The %s add-on is now included in 404 to 301 itself, and the matching feature has been switched on for you." msgid_plural "The following add-ons are now included in 404 to 301 itself, and the matching features have been switched on for you: %s." msgstr[0] "" msgstr[1] "" #: app/Admin/Notices/RedundantAddons.php:140 msgid "You can safely deactivate and delete the separate add-on plugin(s) — nothing will stop working." msgstr "" #: app/Admin/Notices/RedundantAddons.php:144 msgid "Go to Plugins" msgstr "" #: app/Admin/Notices/RedundantAddons.php:147 msgid "Dismiss" msgstr "" #. Translators: 1 - The plugin name ("404 to 301"). #: app/Admin/Notices/Review.php:94 #, php-format msgid "Hey, we noticed you have been using %1$s for some time - that’s awesome! Could you please do us a BIG favor and give it a 5-star rating on WordPress to help us spread the word and boost our motivation?" msgstr "" #. Translators: 1 - The plugin name ("404 to 301"). #: app/Admin/Notices/Review.php:99 msgid "Ok, you deserve it" msgstr "" #: app/Admin/Notices/Review.php:100 msgid "Nope, maybe later" msgstr "" #: app/Admin/Notices/Review.php:101 msgid "I already did" msgstr "" #: app/Admin/PromoMenu.php:85 msgid "SEO" msgstr "" #: app/Admin/PromoMenu.php:89 msgid "Broken Links" msgstr "" #: app/Admin/PromoMenu.php:93 msgid "Privacy Compliance" msgstr "" #: app/Admin/PromoMenu.php:97 msgid "Backups" msgstr "" #: app/Admin/PromoMenu.php:101 msgid "Spam Protection" msgstr "" #: app/Admin/SiteHealth.php:100 msgid "Plugin version" msgstr "" #: app/Admin/SiteHealth.php:104 msgid "Database schema version" msgstr "" #: app/Admin/SiteHealth.php:108 msgid "Redirect 404s" msgstr "" #: app/Admin/SiteHealth.php:112 msgid "Default redirect type" msgstr "" #: app/Admin/SiteHealth.php:116 msgid "Default redirect target" msgstr "" #: app/Admin/SiteHealth.php:120 msgid "Default redirect URL" msgstr "" #: app/Admin/SiteHealth.php:125 #: assets/src/modules/settings/tabs/redirects.js:62 msgid "Block WordPress URL guessing" msgstr "" #: app/Admin/SiteHealth.php:129 #: assets/src/modules/settings/tabs/logs.js:48 msgid "Log 404 errors" msgstr "" #: app/Admin/SiteHealth.php:133 msgid "Skip bot 404s" msgstr "" #: app/Admin/SiteHealth.php:137 msgid "Logged 404 rows" msgstr "" #: app/Admin/SiteHealth.php:141 msgid "Logs table size" msgstr "" #: app/Admin/SiteHealth.php:145 msgid "Redirect rules" msgstr "" #: app/Admin/SiteHealth.php:149 msgid "Email notifications" msgstr "" #: app/Admin/SiteHealth.php:153 msgid "Email recipients" msgstr "" #: app/Admin/SiteHealth.php:157 #: assets/src/modules/settings/tabs/logs.js:96 msgid "Track admin 404s" msgstr "" #: app/Admin/SiteHealth.php:161 msgid "Storing visitor IPs" msgstr "" #: app/Admin/SiteHealth.php:165 msgid "Logs Cleaner enabled" msgstr "" #: app/Admin/SiteHealth.php:169 msgid "Logs Cleaner next run" msgstr "" #: app/Admin/SiteHealth.php:173 msgid "Email Reports next run" msgstr "" #: app/Admin/SiteHealth.php:177 msgid "Conflicting redirect plugins" msgstr "" #: app/Admin/SiteHealth.php:183 #: app/Admin/SiteHealth.php:800 msgid "404 to 301" msgstr "" #: app/Admin/SiteHealth.php:184 msgid "Diagnostic information for the 404 to 301 plugin." msgstr "" #: app/Admin/SiteHealth.php:212 msgid "404 to 301 logs table size" msgstr "" #: app/Admin/SiteHealth.php:213 msgid "404 to 301 Logs Cleaner cron" msgstr "" #: app/Admin/SiteHealth.php:214 msgid "404 to 301 Email Reports cron" msgstr "" #: app/Admin/SiteHealth.php:215 msgid "404 to 301 conflicting plugins" msgstr "" #: app/Admin/SiteHealth.php:216 msgid "404 to 301 logging state" msgstr "" #: app/Admin/SiteHealth.php:217 msgid "404 to 301 database schema" msgstr "" #: app/Admin/SiteHealth.php:218 msgid "404 to 301 broken link monitoring" msgstr "" #: app/Admin/SiteHealth.php:255 msgid "Your 404 logs table is a healthy size" msgstr "" #: app/Admin/SiteHealth.php:256 msgid "The 404 to 301 logs table is well within recommended limits." msgstr "" #. translators: %s: number of rows in the logs table. #: app/Admin/SiteHealth.php:262 #, php-format msgid "Your 404 to 301 logs table currently holds %s rows. Large log tables slow down queries on the Logs screen and bloat your database backups." msgstr "" #: app/Admin/SiteHealth.php:267 msgid "Automatic cleanup is on — review its policy to keep the table trimmed." msgstr "" #: app/Admin/SiteHealth.php:268 msgid "Review Auto Cleanup" msgstr "" #: app/Admin/SiteHealth.php:270 msgid "The built-in Logs Cleaner can prune old entries automatically on a schedule you choose." msgstr "" #: app/Admin/SiteHealth.php:271 msgid "Set Up Auto Cleanup" msgstr "" #: app/Admin/SiteHealth.php:279 msgid "Your 404 logs table is getting large" msgstr "" #: app/Admin/SiteHealth.php:299 msgid "Logs Cleaner is not enabled" msgstr "" #: app/Admin/SiteHealth.php:300 msgid "No cron health check needed — the Logs Cleaner feature is not enabled." msgstr "" #: app/Admin/SiteHealth.php:307 msgid "Logs Cleaner" msgstr "" #: app/Admin/SiteHealth.php:324 msgid "Email Reports cron is not scheduled" msgstr "" #: app/Admin/SiteHealth.php:325 msgid "No cron health check needed — the Email Reports feature is not enabled or not configured to send reports." msgstr "" #: app/Admin/SiteHealth.php:332 #: assets/src/modules/settings/components/reports-panel/index.js:23 msgid "Email Reports" msgstr "" #: app/Admin/SiteHealth.php:355 msgid "No conflicting redirect plugins detected" msgstr "" #: app/Admin/SiteHealth.php:356 msgid "Nothing else on this site is fighting 404 to 301 for control of redirects." msgstr "" #: app/Admin/SiteHealth.php:363 msgid "Another redirect plugin is active" msgstr "" #. translators: %s: comma-separated plugin names. #: app/Admin/SiteHealth.php:366 #, php-format msgid "404 to 301 detected another redirect-handling plugin running alongside it: %s. Running two redirect plugins can cause duplicate logging, redirect loops or unpredictable precedence. Disable one of them if the duplication is unintentional." msgstr "" #: app/Admin/SiteHealth.php:391 msgid "404 logging is disabled" msgstr "" #: app/Admin/SiteHealth.php:392 msgid "404 to 301 is actively redirecting visitors away from broken URLs, but logging is turned off — you have no visibility into which URLs are 404ing. Re-enable logging on the Settings page if you want to see what is breaking." msgstr "" #: app/Admin/SiteHealth.php:396 #: app/Admin/SiteHealth.php:484 #: app/Admin/SiteHealth.php:528 msgid "Open Settings" msgstr "" #: app/Admin/SiteHealth.php:404 msgid "404 to 301 logging is healthy" msgstr "" #: app/Admin/SiteHealth.php:405 msgid "Logging and redirect settings are consistent." msgstr "" #: app/Admin/SiteHealth.php:427 msgid "404 to 301 database schema is up to date" msgstr "" #: app/Admin/SiteHealth.php:428 msgid "The plugin database tables match the expected schema version." msgstr "" #: app/Admin/SiteHealth.php:435 msgid "404 to 301 database schema is out of date" msgstr "" #. translators: 1: stored DB version, 2: expected DB version. #: app/Admin/SiteHealth.php:438 #, php-format msgid "The stored database schema version (%1$s) is older than the version this plugin expects (%2$s). A previous upgrade may have been interrupted. Visit any 404 to 301 admin page to trigger the upgrader again." msgstr "" #. translators: %s: feature name. #: app/Admin/SiteHealth.php:473 #, php-format msgid "%s cron is not scheduled" msgstr "" #. translators: %s: feature name. #: app/Admin/SiteHealth.php:478 #, php-format msgid "The %s cron event is missing from WP-Cron. This usually means the feature was switched off mid-cycle or another plugin cleared the schedule. Re-saving its settings will reschedule it." msgstr "" #. translators: %s: feature name. #: app/Admin/SiteHealth.php:499 #, php-format msgid "%s cron is healthy" msgstr "" #. translators: 1: feature name, 2: next-run timestamp. #: app/Admin/SiteHealth.php:504 #, php-format msgid "The %1$s cron is scheduled and on time. Next run: %2$s." msgstr "" #. translators: %s: feature name. #: app/Admin/SiteHealth.php:516 #, php-format msgid "%s cron is overdue" msgstr "" #. translators: 1: feature name, 2: scheduled-for timestamp. #: app/Admin/SiteHealth.php:521 #, php-format msgid "The %1$s cron event was due at %2$s but has not run. WP-Cron only fires when your site receives traffic; if traffic is low or DISABLE_WP_CRON is set without a real cron job, scheduled tasks will stall. Configure a real system cron, or check for a plugin blocking WP-Cron." msgstr "" #: app/Admin/SiteHealth.php:571 msgid "None detected" msgstr "" #: app/Admin/SiteHealth.php:623 msgid "Broken links are being monitored" msgstr "" #: app/Admin/SiteHealth.php:624 msgid "Broken Link Checker is active, so the links causing these 404s are being tracked." msgstr "" #: app/Admin/SiteHealth.php:634 msgid "No broken internal links detected" msgstr "" #: app/Admin/SiteHealth.php:635 msgid "None of the logged 404s were reached from a link on this site." msgstr "" #: app/Admin/SiteHealth.php:642 msgid "Some 404s come from links on this site" msgstr "" #. Translators: 1 - A number of logged 404s. #: app/Admin/SiteHealth.php:645 #, php-format msgid "%1$s logged 404 was reached from a link on one of your own pages, which means a link somewhere on the site points at a URL that no longer exists. Redirecting hides it; fixing the link removes it. Broken Link Checker finds those links for you." msgid_plural "%1$s logged 404s were reached from links on your own pages, which means links somewhere on the site point at URLs that no longer exist. Redirecting hides them; fixing the links removes them. Broken Link Checker finds those links for you." msgstr[0] "" msgstr[1] "" #: app/Admin/SiteHealth.php:740 msgid "Not scheduled" msgstr "" #: app/Admin/SiteHealth.php:768 msgid "Yes" msgstr "" #: app/Admin/SiteHealth.php:768 msgid "No" msgstr "" #: app/Api/Import.php:268 msgid "No CSV file was uploaded." msgstr "" #: app/Api/Import.php:285 msgid "Only .csv files are supported." msgstr "" #: app/Api/Import.php:294 msgid "Could not create a temporary upload area." msgstr "" #: app/Api/Import.php:339 msgid "Could not stash the uploaded file." msgstr "" #: app/Api/Import.php:456 msgid "Unknown import source." msgstr "" #: app/Api/Import.php:468 msgid "CSV upload not found. Re-upload the file." msgstr "" #: app/Api/Import.php:481 msgid "This source isn't available on the site." msgstr "" #: app/Api/Import.php:546 msgid "The file is larger than the server upload limit." msgstr "" #: app/Api/Import.php:549 msgid "The upload was interrupted. Try again." msgstr "" #: app/Api/Import.php:552 msgid "No file was received." msgstr "" #: app/Api/Import.php:556 msgid "Server could not write the uploaded file to disk." msgstr "" #: app/Api/Import.php:559 msgid "Upload failed." msgstr "" #: app/Api/Logs.php:299 msgid "Could not delete the log." msgstr "" #: app/Api/Logs.php:334 msgid "Could not purge the logs." msgstr "" #: app/Api/Logs.php:458 #: app/Main/Exporter/Exporter.php:219 #: assets/src/modules/logs/fields.js:8 #: assets/src/modules/logs/index.js:23 msgid "Open" msgstr "" #: app/Api/Logs.php:459 #: app/Main/Exporter/Exporter.php:220 #: assets/src/modules/logs/fields.js:9 #: assets/src/modules/logs/index.js:25 msgid "Ignored" msgstr "" #: app/Api/Logs.php:460 #: app/Main/Exporter/Exporter.php:221 #: assets/src/modules/logs/fields.js:10 #: assets/src/modules/logs/index.js:24 #: assets/src/modules/promo/blc-visual.js:44 msgid "Fixed" msgstr "" #: app/Api/Mcp.php:222 msgid "The MCP Adapter is already active on this site." msgstr "" #: app/Api/Mcp.php:234 msgid "The MCP Adapter is installed but not active on this site. Ask a network administrator to network-activate it." msgstr "" #: app/Api/Mcp.php:235 msgid "You do not have permission to activate plugins." msgstr "" #: app/Api/Mcp.php:241 msgid "MCP Adapter activated on this site." msgstr "" #: app/Api/Mcp.php:249 msgid "On multisite, the MCP Adapter must be installed and network-activated by a network administrator before it is available on this site." msgstr "" #: app/Api/Mcp.php:250 msgid "You do not have permission to install plugins." msgstr "" #: app/Api/Mcp.php:261 msgid "Could not resolve the MCP Adapter download URL." msgstr "" #: app/Api/Mcp.php:289 msgid "The MCP Adapter install failed. Check the site's write permissions and try again." msgstr "" #. translators: %s: installed MCP Adapter version. #: app/Api/Mcp.php:299 #, php-format msgid "MCP Adapter %s installed and activated." msgstr "" #: app/Api/Mcp.php:323 msgid "Application Passwords are not available on this site." msgstr "" #: app/Api/Mcp.php:334 msgid "You must be logged in to generate an Application Password." msgstr "" #: app/Api/Mcp.php:347 msgid "Application Passwords are not available for your account. Please contact a site administrator." msgstr "" #: app/Api/Mcp.php:378 msgid "Application Password generated. Copy it now — it will not be shown again." msgstr "" #: app/Api/Mcp.php:438 msgid "Could not fetch the latest MCP Adapter release from GitHub." msgstr "" #: app/Api/Mcp.php:444 msgid "The GitHub response did not include a downloadable release asset." msgstr "" #: app/Api/Plugins.php:27 msgid "Installation failed. Please check permissions and try again." msgstr "" #: app/Api/Plugins.php:94 msgid "Deactivation failed. Please check permissions and try again." msgstr "" #: app/Api/Redirects.php:216 #: app/Api/Redirects.php:272 #: app/Cli/Redirects.php:137 msgid "Redirect not found." msgstr "" #: app/Api/Redirects.php:252 #: app/Cli/Redirects.php:235 msgid "Could not create the redirect." msgstr "" #: app/Api/Redirects.php:340 msgid "Could not delete the redirect." msgstr "" #: app/Api/Redirects.php:475 msgid "Enter the source URL or pattern to redirect from." msgstr "" #: app/Api/Redirects.php:485 msgid "That is not a valid regular expression. Check the pattern and its delimiters." msgstr "" #: app/Api/Redirects.php:498 msgid "The destination must be a relative path or an http(s) URL." msgstr "" #: app/Api/Redirects.php:509 msgid "Choose an existing page to redirect to." msgstr "" #: app/Api/Redirects.php:527 msgid "The destination is the same as the source, which would redirect in a loop." msgstr "" #. translators: %s: source URL/path of the existing redirect. #: app/Api/Redirects.php:576 #, php-format msgid "A redirect for \"%s\" already exists. Edit the existing rule instead of creating a duplicate." msgstr "" #: app/Api/Settings.php:286 msgid "Invalid import payload — expected an object." msgstr "" #: app/Api/Settings.php:319 msgid "Import payload contained no usable settings." msgstr "" #. translators: 1: shown rows, 2: total rows #: app/Cli/Logs.php:104 #, php-format msgid "Showing %1$d of %2$d logs." msgstr "" #: app/Cli/Logs.php:186 msgid "`--to` must be one of: open, ignored, fixed." msgstr "" #. translators: 1: id, 2: status #: app/Cli/Logs.php:193 #, php-format msgid "Log #%1$d marked as %2$s." msgstr "" #: app/Cli/Logs.php:199 msgid "Could not update the log." msgstr "" #: app/Cli/Logs.php:229 msgid "Delete every log row?" msgstr "" #. translators: %d: number of rows #: app/Cli/Logs.php:234 #: app/Cli/Logs.php:252 #: app/Cli/Logs.php:273 #, php-format msgid "Deleted %d logs." msgstr "" #. translators: 1: rows pruned, 2: days #: app/Cli/Logs.php:301 #, php-format msgid "Pruned %1$d rows older than %2$d days." msgstr "" #. translators: %d: redirects copied #: app/Cli/Migrate.php:98 #, php-format msgid "Phase 1 complete — %d custom redirects migrated." msgstr "" #: app/Cli/Migrate.php:105 msgid "Done." msgstr "" #: app/Cli/Migrate.php:115 msgid "Nothing to migrate." msgstr "" #: app/Cli/Migrate.php:120 msgid "Migrating logs" msgstr "" #. translators: %d: chunks #: app/Cli/Migrate.php:148 #, php-format msgid "Migration finished after %d chunk(s)." msgstr "" #: app/Cli/Migrate.php:167 msgid "Migration aborted. The legacy table was left in place." msgstr "" #. translators: 1: shown, 2: total #: app/Cli/Redirects.php:107 #, php-format msgid "Showing %1$d of %2$d redirects." msgstr "" #: app/Cli/Redirects.php:208 msgid "--source and --target are both required." msgstr "" #. translators: %d: id #: app/Cli/Redirects.php:230 #, php-format msgid "Redirect created (id %d)." msgstr "" #: app/Cli/Redirects.php:310 msgid "Nothing to update — pass at least one --field." msgstr "" #. translators: %d: id #: app/Cli/Redirects.php:323 #, php-format msgid "Redirect #%d updated." msgstr "" #: app/Cli/Redirects.php:328 msgid "Could not update the redirect." msgstr "" #: app/Cli/Redirects.php:355 msgid "Delete every redirect?" msgstr "" #. translators: %d: rows #: app/Cli/Redirects.php:360 #: app/Cli/Redirects.php:381 #, php-format msgid "Deleted %d redirects." msgstr "" #. translators: %s: setting key. #: app/Cli/Settings.php:73 #, php-format msgid "Setting \"%s\" not found." msgstr "" #: app/Cli/Settings.php:107 msgid "Provide a setting key." msgstr "" #. translators: %s: setting key #: app/Cli/Settings.php:128 #, php-format msgid "Updated setting \"%s\"." msgstr "" #: app/Cli/Settings.php:150 msgid "Reset every setting to its default?" msgstr "" #: app/Cli/Settings.php:155 msgid "Settings reset." msgstr "" #: app/FourNotFour.php:251 msgid "Plugin is missing required dependencies. Please contact support for more information." msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - Opening HTML link tag, 4 - Closing HTML link tag. #: app/init/notices.php:23 #, php-format msgid "Your site is running an %1$sinsecure version%2$s of PHP that is no longer supported. Please contact your web hosting provider to update your PHP version or switch to a %3$srecommended WordPress hosting company%4$s." msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - The short plugin name ("AIOSEO"), 4 - Opening HTML link tag, 5 - Closing HTML link tag. #: app/init/notices.php:44 #, php-format msgid "%1$sNote:%2$s %3$s plugin is disabled on your site until you fix the issue. %4$sRead more for additional information.%5$s" msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - The plugin short name ("AIOSEO"), 4 - Opening HTML link tag, 5 - Closing HTML link tag. #: app/init/notices.php:87 #, php-format msgid "Your site is running an %1$soutdated version%2$s of PHP that is no longer supported and may cause issues with %3$s. Please contact your web hosting provider to update your PHP version or switch to a %4$srecommended WordPress hosting company%5$s." msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - The PHP version, 4 - The current year, 5 - The short plugin name ("AIOSEO"), 6 - Opening HTML link tag, 7 - Closing HTML link tag. #: app/init/notices.php:110 #, php-format msgid "%1$sNote:%2$s Support for PHP %3$s will be discontinued in %4$s. After this, if no further action is taken, %5$s functionality will be disabled. %6$sRead more for additional information.%7$s" msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - The plugin name ("All in One SEO"). #: app/init/notices.php:155 #, php-format msgid "Your site is running an %1$sinsecure version%2$s of WordPress that is no longer supported. Please update your site to the latest version of WordPress in order to continue using %3$s." msgstr "" #. Translators: 1 - Opening HTML bold tag, 2 - Closing HTML bold tag, 3 - The short plugin name ("AIOSEO"), 4 - The WordPress version, 5 - The current year, 6 - Opening HTML link tag, 7 - Closing HTML link tag. #: app/init/notices.php:171 #, php-format msgid "%1$sNote:%2$s %3$s will be discontinuing support for WordPress versions older than version %4$s by the end of %5$s. %6$sRead more for additional information.%7$s" msgstr "" #: app/Main/Cleaner/Cron.php:136 #: app/Main/Reports/Cron.php:136 msgid "Once Weekly" msgstr "" #: app/Main/Exporter/Download.php:91 msgid "You do not have permission to export logs." msgstr "" #: app/Main/Exporter/Download.php:92 msgid "Forbidden" msgstr "" #: app/Main/Exporter/Exporter.php:50 #: app/Main/Reports/Reporter.php:425 msgid "ID" msgstr "" #: app/Main/Exporter/Exporter.php:51 #: app/Main/Reports/Reporter.php:426 #: assets/src/modules/logs/fields.js:54 msgid "404 Path" msgstr "" #: app/Main/Exporter/Exporter.php:52 #: app/Main/Reports/Reporter.php:427 #: assets/src/modules/logs/fields.js:74 #: assets/src/modules/logs/view-modal.js:80 msgid "Referrer" msgstr "" #: app/Main/Exporter/Exporter.php:53 #: app/Main/Reports/Reporter.php:428 #: assets/src/modules/logs/fields.js:93 msgid "IP Address" msgstr "" #: app/Main/Exporter/Exporter.php:54 #: app/Main/Reports/Reporter.php:429 #: assets/src/modules/logs/fields.js:101 msgid "User Agent" msgstr "" #: app/Main/Exporter/Exporter.php:55 msgid "HTTP Method" msgstr "" #: app/Main/Exporter/Exporter.php:56 #: app/Main/Reports/Reporter.php:280 #: app/Main/Reports/Reporter.php:430 #: app/Main/Telegram/Process.php:107 #: assets/src/modules/logs/fields.js:109 #: assets/src/modules/logs/view-modal.js:118 #: assets/src/modules/redirects/fields.js:181 msgid "Hits" msgstr "" #: app/Main/Exporter/Exporter.php:57 #: app/Main/Reports/Reporter.php:431 #: app/Main/Telegram/Process.php:105 msgid "Status" msgstr "" #: app/Main/Exporter/Exporter.php:58 msgid "Status Label" msgstr "" #: app/Main/Exporter/Exporter.php:59 msgid "Linked Redirect ID" msgstr "" #: app/Main/Exporter/Exporter.php:60 #: app/Main/Reports/Reporter.php:432 msgid "First Seen" msgstr "" #: app/Main/Exporter/Exporter.php:61 #: app/Main/Reports/Reporter.php:433 msgid "Last Hit" msgstr "" #: app/Main/Exporter/Exporter.php:222 #: assets/src/modules/logs/list.js:95 #: assets/src/modules/logs/view-modal.js:140 msgid "Custom redirect" msgstr "" #. translators: %s: site name #: app/Main/Front/Actions/Email.php:118 #, php-format msgid "[%s] 404 error detected" msgstr "" #. translators: %s: site name. #: app/Main/Front/Actions/Email.php:148 #, php-format msgid "A new 404 error has been detected on %s:" msgstr "" #: app/Main/Front/Actions/Email.php:152 #: app/Main/Reports/Reporter.php:279 #: app/Main/Telegram/Process.php:101 msgid "URL" msgstr "" #. translators: %d: total number of times this URL has 404'd. #: app/Main/Front/Actions/Email.php:155 #, php-format msgid "%d hit so far" msgid_plural "%d hits so far" msgstr[0] "" msgstr[1] "" #: app/Main/Front/Actions/Email.php:158 #: app/Main/Telegram/Process.php:114 msgid "Time" msgstr "" #: app/Main/Front/Actions/Email.php:159 #: app/Main/Telegram/Process.php:110 msgid "Referer" msgstr "" #: app/Main/Front/Actions/Email.php:159 msgid "(none)" msgstr "" #: app/Main/Front/Actions/Email.php:160 #: app/Main/Telegram/Process.php:111 msgid "IP" msgstr "" #: app/Main/Front/Actions/Email.php:160 msgid "(masked)" msgstr "" #: app/Main/Front/Actions/Email.php:161 #: app/Main/Telegram/Process.php:112 msgid "User-Agent" msgstr "" #: app/Main/Front/Actions/Email.php:162 #: app/Main/Telegram/Process.php:113 #: assets/src/modules/logs/view-modal.js:104 msgid "Method" msgstr "" #: app/Main/Front/Actions/Email.php:164 msgid "Review and manage 404 errors here:" msgstr "" #: app/Main/Importer/Importer.php:153 msgid "Parent plugin is not active." msgstr "" #: app/Main/Importer/Importer.php:198 msgid "Could not update the existing redirect." msgstr "" #. translators: %s: database error message. #: app/Main/Importer/Importer.php:228 #, php-format msgid "Could not create the redirect: %s" msgstr "" #: app/Main/Importer/Importer.php:231 msgid "Could not create the redirect (no DB error reported — likely a duplicate source)." msgstr "" #: app/Main/Importer/Importer.php:261 msgid "Missing `source` value." msgstr "" #: app/Main/Importer/Importer.php:271 msgid "`target_url` is required when target_type is \"link\"." msgstr "" #: app/Main/Importer/Importer.php:275 msgid "`target_page_id` is required when target_type is \"page\"." msgstr "" #: app/Main/Importer/Importer.php:281 msgid "`target_url` must be a relative path or an http(s) URL." msgstr "" #: app/Main/Importer/Importer.php:287 msgid "`source` is not a valid regex pattern." msgstr "" #: app/Main/Importer/Sources/CsvSource.php:136 msgid "CSV upload" msgstr "" #. translators: %d: maximum row count. #: app/Main/Importer/Sources/CsvSource.php:250 #, php-format msgid "Stopped after %d rows. Split the file and re-import." msgstr "" #: app/Main/Importer/Sources/RedirectionSource.php:98 msgid "Redirection (John Godley)" msgstr "" #. translators: %s: Redirection match_type value, e.g. "cookie". #: app/Main/Importer/Sources/RedirectionSource.php:230 #, php-format msgid "Skipped: conditional match type \"%s\" is not supported." msgstr "" #. translators: %d: HTTP status code. #: app/Main/Importer/Sources/RedirectionSource.php:249 #, php-format msgid "Skipped: error response with code %d is not supported." msgstr "" #. translators: %s: Redirection action_type value, e.g. "pass". #: app/Main/Importer/Sources/RedirectionSource.php:265 #, php-format msgid "Skipped: action type \"%s\" is not supported." msgstr "" #: app/Main/Importer/Sources/RedirectionSource.php:275 #: app/Main/Importer/Sources/WebFactorySource.php:295 #: app/Main/Importer/Sources/WebFactorySource.php:388 msgid "Skipped: target URL is empty." msgstr "" #: app/Main/Importer/Sources/WebFactorySource.php:100 msgid "301 Redirects – Redirect Manager (WebFactory)" msgstr "" #: app/Main/Importer/Sources/WebFactorySource.php:290 #: app/Main/Importer/Sources/WebFactorySource.php:365 msgid "Skipped: source path is empty." msgstr "" #: app/Main/Importer/Sources/WebFactorySource.php:404 msgid "Skipped: linked post is missing." msgstr "" #: app/Main/Reports/Cron.php:143 msgid "Once Monthly" msgstr "" #. translators: 1: site name, 2: new 404 count. #: app/Main/Reports/Reporter.php:189 #, php-format msgid "[%1$s] Daily 404 report — %2$d new errors" msgstr "" #. translators: 1: site name, 2: new 404 count. #: app/Main/Reports/Reporter.php:193 #, php-format msgid "[%1$s] Monthly 404 report — %2$d new errors" msgstr "" #. translators: 1: site name, 2: new 404 count. #: app/Main/Reports/Reporter.php:198 #, php-format msgid "[%1$s] Weekly 404 report — %2$d new errors" msgstr "" #. translators: 1: site name, 2: site URL. #: app/Main/Reports/Reporter.php:251 #, php-format msgid "Here is the 404 activity digest for %1$s (%2$s)." msgstr "" #: app/Main/Reports/Reporter.php:264 msgid "New 404 errors" msgstr "" #: app/Main/Reports/Reporter.php:265 msgid "New 404 hits" msgstr "" #: app/Main/Reports/Reporter.php:266 msgid "Lifetime logs" msgstr "" #: app/Main/Reports/Reporter.php:276 msgid "Most-hit 404 URLs" msgstr "" #: app/Main/Reports/Reporter.php:293 msgid "Open the Logs page" msgstr "" #: app/Main/Reports/Reporter.php:298 msgid "You can change the frequency or unsubscribe from this report in 404 to 301 → Settings → Notifications." msgstr "" #: app/Main/Reports/Reporter.php:318 msgid "Daily 404 report" msgstr "" #: app/Main/Reports/Reporter.php:320 msgid "Monthly 404 report" msgstr "" #: app/Main/Reports/Reporter.php:323 msgid "Weekly 404 report" msgstr "" #. translators: %d: new 404 count. #: app/Main/Reports/Reporter.php:345 #, php-format msgid "%d new 404 error recorded so far." msgid_plural "%d new 404 errors recorded so far." msgstr[0] "" msgstr[1] "" #. translators: 1: count, 2: human-readable elapsed time. #: app/Main/Reports/Reporter.php:354 #, php-format msgid "%1$d new 404 error since the last report (%2$s ago)." msgid_plural "%1$d new 404 errors since the last report (%2$s ago)." msgstr[0] "" msgstr[1] "" #: app/Main/Telegram/Client.php:60 msgid "Bot token or chat id is not configured." msgstr "" #. translators: %d: HTTP status code. #: app/Main/Telegram/Client.php:102 #, php-format msgid "Unexpected HTTP %d from Telegram." msgstr "" #. translators: %s: site name. #: app/Main/Telegram/Process.php:93 #, php-format msgid "↪️ Redirect served on %s" msgstr "" #. translators: %s: site name. #: app/Main/Telegram/Process.php:96 #, php-format msgid "⚠️ 404 detected on %s" msgstr "" #: app/Main/Telegram/Process.php:104 msgid "Redirected to" msgstr "" #: app/Traits/Helpers/Redirects.php:30 #: assets/src/common/redirect-statuses.js:29 msgid "301 — Moved Permanently (SEO)" msgstr "" #: app/Traits/Helpers/Redirects.php:34 #: assets/src/common/redirect-statuses.js:32 msgid "302 — Found" msgstr "" #: app/Traits/Helpers/Redirects.php:38 #: assets/src/common/redirect-statuses.js:33 msgid "303 — See Other" msgstr "" #: app/Traits/Helpers/Redirects.php:42 #: assets/src/common/redirect-statuses.js:36 msgid "307 — Temporary Redirect" msgstr "" #: app/Traits/Helpers/Redirects.php:46 #: assets/src/common/redirect-statuses.js:41 msgid "308 — Permanent Redirect" msgstr "" #: app/Traits/Helpers/Redirects.php:50 #: assets/src/common/redirect-statuses.js:44 msgid "410 — Gone" msgstr "" #: app/Traits/Helpers/Redirects.php:54 #: assets/src/common/redirect-statuses.js:47 msgid "451 — Unavailable for Legal Reasons" msgstr "" #: app/Traits/Helpers/Redirects.php:122 #: assets/src/modules/settings/tabs/redirects.js:162 msgid "A custom URL" msgstr "" #: app/Traits/Helpers/Redirects.php:123 #: assets/src/modules/settings/tabs/redirects.js:166 msgid "An existing page" msgstr "" #: app/Traits/Helpers/Redirects.php:124 #: assets/src/modules/redirects/form-fields.js:82 #: assets/src/modules/settings/tabs/redirects.js:173 msgid "No redirect" msgstr "" #: app/Traits/Helpers/Wp.php:90 msgid "Attachments" msgstr "" #. Translators: 1 - A number of seconds. #: app/Utils/ActionScheduler.php:619 #, php-format msgid "Every %1$s seconds" msgstr "" #: assets/src/common/bulk-actions.js:114 msgid "Bulk actions" msgstr "" #: assets/src/common/error-boundary.js:43 msgid "Something went wrong while rendering this page." msgstr "" #: assets/src/common/logo.js:19 msgid "404 to 301, an AIOSEO product" msgstr "" #: assets/src/common/page-select.js:19 #, js-format msgid "Page #%d" msgstr "" #: assets/src/common/page-select.js:109 msgid "Search for a page…" msgstr "" #: assets/src/common/plugin-cta.js:63 msgid "We couldn’t install it from here. Install it from WordPress.org instead." msgstr "" #: assets/src/common/plugin-cta.js:98 #: assets/src/modules/about/index.js:127 #: assets/src/modules/promo/index.js:67 msgid "Activated" msgstr "" #: assets/src/common/plugin-cta.js:108 #: assets/src/common/plugin-cta.js:121 msgid "Install Plugin (Free)" msgstr "" #: assets/src/common/plugin-cta.js:120 #: assets/src/modules/promo/index.js:74 msgid "Installing…" msgstr "" #: assets/src/common/save-changes.js:24 msgid "Saving…" msgstr "" #: assets/src/common/save-changes.js:25 msgid "Save Changes" msgstr "" #: assets/src/hooks/use-logs.js:126 msgid "Failed to load logs." msgstr "" #: assets/src/hooks/use-logs.js:149 #: assets/src/hooks/use-logs.js:229 msgid "Log updated." msgstr "" #: assets/src/hooks/use-logs.js:154 msgid "Failed to update log." msgstr "" #: assets/src/hooks/use-logs.js:188 msgid "Logs deleted." msgstr "" #: assets/src/hooks/use-logs.js:189 msgid "Log deleted." msgstr "" #: assets/src/hooks/use-logs.js:195 msgid "Failed to delete log(s)." msgstr "" #: assets/src/hooks/use-logs.js:228 msgid "Logs updated." msgstr "" #: assets/src/hooks/use-logs.js:235 msgid "Failed to update log(s)." msgstr "" #: assets/src/hooks/use-redirects.js:81 msgid "Failed to load redirects." msgstr "" #: assets/src/hooks/use-redirects.js:104 msgid "Redirect created." msgstr "" #: assets/src/hooks/use-redirects.js:109 msgid "Failed to create redirect." msgstr "" #: assets/src/hooks/use-redirects.js:132 #: assets/src/hooks/use-redirects.js:222 msgid "Redirect updated." msgstr "" #: assets/src/hooks/use-redirects.js:137 msgid "Failed to update redirect." msgstr "" #: assets/src/hooks/use-redirects.js:179 msgid "Redirects deleted." msgstr "" #: assets/src/hooks/use-redirects.js:180 msgid "Redirect deleted." msgstr "" #: assets/src/hooks/use-redirects.js:187 msgid "Failed to delete redirect(s)." msgstr "" #: assets/src/hooks/use-redirects.js:221 msgid "Redirects updated." msgstr "" #: assets/src/hooks/use-redirects.js:229 msgid "Failed to update redirect(s)." msgstr "" #: assets/src/modules/about/index.js:82 msgid "New" msgstr "" #. Translators: 1 - An install count, eg. "300K+". #: assets/src/modules/about/index.js:104 #, js-format msgid "%1$s installs" msgstr "" #: assets/src/modules/about/index.js:136 #: assets/src/modules/about/index.js:143 msgid "Install Plugin" msgstr "" #: assets/src/modules/about/index.js:142 msgid "Activate Plugin" msgstr "" #: assets/src/modules/about/index.js:205 msgid "That didn’t work. Please install it from WordPress.org instead." msgstr "" #: assets/src/modules/about/index.js:240 msgid "About us" msgstr "" #. Translators: 1 - The plugin name ("404 to 301"). #: assets/src/modules/about/index.js:246 #, js-format msgid "The team behind %1$s" msgstr "" #: assets/src/modules/about/index.js:252 msgid "404 to 301 helps you catch every broken URL on your site and send visitors somewhere useful instead. We’re proud to keep building on it — staying simple, fast, and dependable." msgstr "" #: assets/src/modules/about/index.js:259 msgid "Today it’s part of Awesome Motive — the team behind All in One SEO, WPBeginner, OptinMonster, MonsterInsights, and more. Our mission is simple: help small businesses grow and compete with the big guys, with tools that work great together." msgstr "" #: assets/src/modules/about/index.js:272 msgid "Websites use our plugins" msgstr "" #: assets/src/modules/about/index.js:285 msgid "Leading products" msgstr "" #: assets/src/modules/about/index.js:295 msgid "Team members worldwide" msgstr "" #: assets/src/modules/about/index.js:316 msgid "Recommended for you" msgstr "" #: assets/src/modules/about/index.js:353 msgid "More from the family" msgstr "" #. Translators: 1 - A number of plugins. #: assets/src/modules/about/index.js:358 #, js-format msgid "%1$s plugins" msgstr "" #: assets/src/modules/about/plugins.js:98 msgid "Rank higher and drive more organic traffic to your content." msgstr "" #: assets/src/modules/about/plugins.js:102 msgid "The complete SEO toolkit — on-page analysis, schema, sitemaps and redirects, all in one place. It pairs directly with the 404 logs you are already collecting here." msgstr "" #: assets/src/modules/about/plugins.js:113 msgid "Catch and fix broken links before they hurt your SEO." msgstr "" #: assets/src/modules/about/plugins.js:124 msgid "Clone any post or page, then republish it in one click." msgstr "" #: assets/src/modules/about/plugins.js:135 msgid "Beautiful contact, survey & payment forms in minutes." msgstr "" #: assets/src/modules/about/plugins.js:146 msgid "Add a compliant cookie banner in minutes — GDPR & CCPA ready." msgstr "" #: assets/src/modules/about/plugins.js:157 msgid "Let AI assistants manage your site — safely." msgstr "" #: assets/src/modules/about/plugins.js:168 msgid "Make sure your WordPress emails reach the inbox." msgstr "" #: assets/src/modules/about/plugins.js:179 msgid "Reach a global audience — your site in 110+ languages." msgstr "" #: assets/src/modules/about/plugins.js:190 msgid "One-click backups and painless site migrations." msgstr "" #: assets/src/modules/about/plugins.js:201 msgid "Add snippets & tracking code without editing files." msgstr "" #: assets/src/modules/about/plugins.js:212 msgid "Raise more online with donation & fundraising campaigns." msgstr "" #: assets/src/modules/about/plugins.js:223 msgid "Simple, powerful event calendars and management." msgstr "" #: assets/src/modules/about/plugins.js:234 msgid "AI-powered spam protection for forms and comments." msgstr "" #: assets/src/modules/about/plugins.js:245 msgid "See exactly how visitors find and use your site." msgstr "" #: assets/src/modules/about/plugins.js:256 msgid "Turn visitors into subscribers with smart popups." msgstr "" #: assets/src/modules/about/plugins.js:267 msgid "Show Google, Yelp & TripAdvisor reviews on your site." msgstr "" #: assets/src/modules/about/plugins.js:278 msgid "Accept one-time & recurring Stripe payments — no code." msgstr "" #: assets/src/modules/about/plugins.js:289 msgid "Automate WordPress with no-code recipes." msgstr "" #: assets/src/modules/about/plugins.js:297 msgid "Build landing pages & themes with drag-and-drop." msgstr "" #: assets/src/modules/about/plugins.js:308 msgid "Display beautiful, customizable Instagram feeds." msgstr "" #: assets/src/modules/about/plugins.js:319 msgid "Sell digital products the easy way." msgstr "" #: assets/src/modules/about/plugins.js:327 msgid "Create fast, responsive photo galleries & albums." msgstr "" #: assets/src/modules/about/plugins.js:338 msgid "Embed customizable YouTube video feeds." msgstr "" #: assets/src/modules/about/plugins.js:346 msgid "Grow your list with viral giveaways & contests." msgstr "" #: assets/src/modules/about/plugins.js:357 msgid "Display customizable Facebook feeds on your site." msgstr "" #: assets/src/modules/about/plugins.js:368 msgid "Run interactive surveys & polls in seconds." msgstr "" #: assets/src/modules/about/plugins.js:379 msgid "Add a free live chat & messaging widget." msgstr "" #: assets/src/modules/about/plugins.js:387 msgid "Embed PDFs with a clean, mobile-friendly viewer." msgstr "" #: assets/src/modules/logs/configure-modal.js:19 #: assets/src/modules/logs/view-modal.js:36 msgid "Global" msgstr "" #: assets/src/modules/logs/configure-modal.js:20 msgid "Enable" msgstr "" #: assets/src/modules/logs/configure-modal.js:21 msgid "Disable" msgstr "" #: assets/src/modules/logs/configure-modal.js:39 msgid "Redirect" msgstr "" #: assets/src/modules/logs/configure-modal.js:41 msgid "Override the global redirect setting for this URL only." msgstr "" #: assets/src/modules/logs/configure-modal.js:50 msgid "Email" msgstr "" #: assets/src/modules/logs/configure-modal.js:52 msgid "Override whether email alerts fire for this URL." msgstr "" #: assets/src/modules/logs/configure-modal.js:141 msgid "This log has a linked custom redirect. The Redirect override is managed by the redirect row’s Active toggle." msgstr "" #: assets/src/modules/logs/configure-modal.js:150 msgid "Open Custom Redirects" msgstr "" #: assets/src/modules/logs/configure-modal.js:170 #: assets/src/modules/logs/delete-modal.js:55 #: assets/src/modules/redirects/delete-modal.js:51 #: assets/src/modules/redirects/edit-modal.js:187 #: assets/src/modules/settings/components/import-panel/preview-modal.js:303 #: assets/src/modules/settings/components/purge-logs.js:92 msgid "Cancel" msgstr "" #: assets/src/modules/logs/configure-modal.js:180 msgid "Save" msgstr "" #: assets/src/modules/logs/custom-redirect-modal.js:42 msgid "Failed to load the linked redirect." msgstr "" #: assets/src/modules/logs/custom-redirect-modal.js:58 msgid "Custom redirect updated." msgstr "" #: assets/src/modules/logs/custom-redirect-modal.js:76 msgid "Custom redirect created." msgstr "" #: assets/src/modules/logs/custom-redirect-modal.js:91 msgid "Failed to save custom redirect." msgstr "" #. translators: %d: number of selected logs. #: assets/src/modules/logs/delete-modal.js:38 #, js-format msgid "Delete %d log entry? This cannot be undone." msgid_plural "Delete %d log entries? This cannot be undone." msgstr[0] "" msgstr[1] "" #: assets/src/modules/logs/delete-modal.js:66 #: assets/src/modules/logs/list.js:136 #: assets/src/modules/redirects/delete-modal.js:62 #: assets/src/modules/redirects/list.js:97 msgid "Delete" msgstr "" #: assets/src/modules/logs/export-button.js:96 msgid "Export CSV" msgstr "" #: assets/src/modules/logs/fields.js:24 msgid "Today" msgstr "" #: assets/src/modules/logs/fields.js:25 msgid "Last 7 days" msgstr "" #: assets/src/modules/logs/fields.js:26 msgid "Last 30 days" msgstr "" #: assets/src/modules/logs/fields.js:27 msgid "Last 90 days" msgstr "" #: assets/src/modules/logs/fields.js:28 msgid "Last 12 months" msgstr "" #: assets/src/modules/logs/fields.js:33 msgid "Linked from my site" msgstr "" #: assets/src/modules/logs/fields.js:34 msgid "Linked from elsewhere" msgstr "" #: assets/src/modules/logs/fields.js:35 msgid "No referrer" msgstr "" #: assets/src/modules/logs/fields.js:39 msgid "Page or post" msgstr "" #: assets/src/modules/logs/fields.js:40 msgid "File or asset" msgstr "" #: assets/src/modules/logs/fields.js:116 msgid "Referrer source" msgstr "" #: assets/src/modules/logs/fields.js:124 msgid "Request type" msgstr "" #: assets/src/modules/logs/fields.js:134 msgid "Triage" msgstr "" #: assets/src/modules/logs/fields.js:156 #: assets/src/modules/logs/fields.js:159 msgid "Has custom redirect" msgstr "" #: assets/src/modules/logs/fields.js:174 #: assets/src/modules/logs/view-modal.js:122 msgid "First seen" msgstr "" #: assets/src/modules/logs/fields.js:192 #: assets/src/modules/logs/view-modal.js:126 #: assets/src/modules/redirects/fields.js:188 msgid "Last hit" msgstr "" #: assets/src/modules/logs/index.js:22 #: assets/src/modules/redirects/index.js:49 #: assets/src/modules/settings/components/import-panel/preview-modal.js:163 msgid "Total" msgstr "" #: assets/src/modules/logs/index.js:27 msgid "Custom redirects" msgstr "" #: assets/src/modules/logs/index.js:47 msgid "Broken Link Checker finds what is sending visitors here" msgstr "" #: assets/src/modules/logs/index.js:52 msgid "Every row here is a visitor who hit a dead end. Find the links that sent them and fix the source, not one URL at a time." msgstr "" #: assets/src/modules/logs/list.js:75 msgid "View details" msgstr "" #: assets/src/modules/logs/list.js:76 msgid "Log details" msgstr "" #: assets/src/modules/logs/list.js:86 msgid "Configure" msgstr "" #: assets/src/modules/logs/list.js:87 msgid "Configure log" msgstr "" #: assets/src/modules/logs/list.js:106 msgid "Mark fixed" msgstr "" #: assets/src/modules/logs/list.js:113 msgid "Mark ignored" msgstr "" #: assets/src/modules/logs/list.js:120 msgid "Reopen" msgstr "" #: assets/src/modules/logs/list.js:139 msgid "Delete log" msgstr "" #: assets/src/modules/logs/list.js:193 msgid "No logs match your filters" msgstr "" #: assets/src/modules/logs/list.js:194 msgid "Try a different search or date range, or clear your filters to see every logged 404." msgstr "" #: assets/src/modules/logs/list.js:200 #: assets/src/modules/redirects/list.js:150 msgid "Clear filters" msgstr "" #: assets/src/modules/logs/list.js:207 msgid "No 404 errors logged yet" msgstr "" #: assets/src/modules/logs/list.js:208 msgid "Nice — nothing's broken. When a visitor hits a missing URL, it'll show up here automatically." msgstr "" #: assets/src/modules/logs/view-modal.js:32 #: assets/src/modules/redirects/fields.js:150 #: assets/src/modules/redirects/fields.js:156 msgid "Enabled" msgstr "" #: assets/src/modules/logs/view-modal.js:34 #: assets/src/modules/redirects/fields.js:27 #: assets/src/modules/redirects/fields.js:157 msgid "Disabled" msgstr "" #: assets/src/modules/logs/view-modal.js:66 msgid "A custom redirect is set for this path. Future visits will be redirected automatically." msgstr "" #: assets/src/modules/logs/view-modal.js:75 msgid "Request" msgstr "" #: assets/src/modules/logs/view-modal.js:92 msgid "IP address" msgstr "" #: assets/src/modules/logs/view-modal.js:98 msgid "User agent" msgstr "" #: assets/src/modules/logs/view-modal.js:113 msgid "Visit info" msgstr "" #. translators: %d: redirect id. #: assets/src/modules/logs/view-modal.js:145 #, js-format msgid "Linked to redirect #%d" msgstr "" #: assets/src/modules/logs/view-modal.js:151 msgid "Not set" msgstr "" #: assets/src/modules/logs/view-modal.js:155 msgid "Redirect override" msgstr "" #: assets/src/modules/logs/view-modal.js:159 msgid "Email override" msgstr "" #: assets/src/modules/logs/view-modal.js:168 #: assets/src/modules/settings/components/import-panel/preview-modal.js:302 msgid "Close" msgstr "" #: assets/src/modules/migration/banner.js:60 #: assets/src/modules/migration/banner.js:66 msgid "Migration complete." msgstr "" #: assets/src/modules/migration/banner.js:68 msgid "Your old 404 logs have been moved. Reload the page to see them." msgstr "" #: assets/src/modules/migration/banner.js:79 msgid "Reload page" msgstr "" #: assets/src/modules/migration/banner.js:110 #: assets/src/modules/migration/banner.js:118 msgid "Migrating old 404 logs in the background…" msgstr "" #: assets/src/modules/migration/banner.js:124 msgid "rows remaining" msgstr "" #: assets/src/modules/migration/banner.js:127 msgid "Using Action Scheduler" msgstr "" #: assets/src/modules/migration/banner.js:135 msgid "Abort migration" msgstr "" #: assets/src/modules/migration/banner.js:153 #: assets/src/modules/migration/banner.js:160 msgid "Legacy 404 to 301 data detected" msgstr "" #: assets/src/modules/migration/banner.js:164 msgid "There are old 404 logs from the previous version of the plugin that have not been migrated yet." msgstr "" #: assets/src/modules/migration/banner.js:169 msgid "rows are waiting to be moved." msgstr "" #: assets/src/modules/migration/banner.js:181 msgid "Starting…" msgstr "" #: assets/src/modules/migration/banner.js:182 msgid "Start migration" msgstr "" #: assets/src/modules/migration/banner.js:192 msgid "Install Action Scheduler (faster, optional)" msgstr "" #: assets/src/modules/migration/banner.js:206 msgid "Skip migration" msgstr "" #: assets/src/modules/migration/banner.js:219 msgid "Action Scheduler is recommended for sites with many 404 logs — it runs the migration in the background with retries. The migration still works without it, processing rows in chunks while you stay on this page." msgstr "" #: assets/src/modules/promo/blc-visual.js:18 msgid "404" msgstr "" #: assets/src/modules/promo/blc-visual.js:38 msgid "One-click fix" msgstr "" #: assets/src/modules/promo/index.js:68 msgid "Installed" msgstr "" #: assets/src/modules/promo/index.js:73 msgid "Activating…" msgstr "" #: assets/src/modules/promo/index.js:78 msgid "Activate Now" msgstr "" #: assets/src/modules/promo/index.js:79 msgid "Install Now (Free)" msgstr "" #: assets/src/modules/promo/index.js:105 msgid "Something went wrong. Please try again." msgstr "" #. Translators: 1 - The name of the plugin being promoted. #: assets/src/modules/promo/index.js:119 #, js-format msgid "Get %1$s" msgstr "" #: assets/src/modules/promo/plugins.js:28 msgid "The complete SEO toolkit for WordPress" msgstr "" #: assets/src/modules/promo/plugins.js:29 msgid "404 to 301 stops your broken URLs costing you traffic. All in One SEO covers the rest of the picture — titles and meta, schema, sitemaps and on-page analysis — from the same team, in one plugin." msgstr "" #: assets/src/modules/promo/plugins.js:35 msgid "On-page analysis" msgstr "" #: assets/src/modules/promo/plugins.js:36 msgid "TruSEO scores every post and tells you what to change, in plain language." msgstr "" #: assets/src/modules/promo/plugins.js:42 msgid "Schema and sitemaps" msgstr "" #: assets/src/modules/promo/plugins.js:43 msgid "Rich-result markup and XML sitemaps generated for you, with no code to write." msgstr "" #: assets/src/modules/promo/plugins.js:49 msgid "Search Console built in" msgstr "" #: assets/src/modules/promo/plugins.js:50 msgid "Connect Google Search Console and read your search performance inside WordPress." msgstr "" #: assets/src/modules/promo/plugins.js:56 msgid "Trusted on 3 million sites" msgstr "" #: assets/src/modules/promo/plugins.js:57 msgid "The original WordPress SEO plugin, founded in 2007 and built by the same team." msgstr "" #: assets/src/modules/promo/plugins.js:70 msgid "Find and fix broken links — automatically" msgstr "" #: assets/src/modules/promo/plugins.js:71 msgid "404 to 301 catches the visitors who already hit a dead URL — Broken Link Checker stops them getting there. It automatically finds and fixes dead internal and external links across your site, so readers never follow a link to a broken page and your SEO stays protected." msgstr "" #: assets/src/modules/promo/plugins.js:77 msgid "Automatic scanning" msgstr "" #: assets/src/modules/promo/plugins.js:78 msgid "Continuously scans posts, pages, comments and custom content for dead links." msgstr "" #: assets/src/modules/promo/plugins.js:84 msgid "One-click fixes" msgstr "" #: assets/src/modules/promo/plugins.js:85 msgid "Fix or unlink broken links from one dashboard — no editing each post by hand." msgstr "" #: assets/src/modules/promo/plugins.js:91 msgid "Internal and external" msgstr "" #: assets/src/modules/promo/plugins.js:92 msgid "Monitors both internal links and outbound links to other sites." msgstr "" #: assets/src/modules/promo/plugins.js:98 msgid "From the same team" msgstr "" #: assets/src/modules/promo/plugins.js:99 msgid "Trusted on 300K+ sites, built by the same team behind 404 to 301." msgstr "" #: assets/src/modules/promo/plugins.js:111 msgid "Cookie consent that holds up" msgstr "" #: assets/src/modules/promo/plugins.js:112 msgid "If your visitors come from the EU, the UK or California, a banner that only asks isn’t enough — the scripts have to wait for an answer. WPConsent sets that up in minutes, and keeps every consent record in your own database rather than someone else’s." msgstr "" #: assets/src/modules/promo/plugins.js:118 msgid "Blocks scripts, not just asks" msgstr "" #: assets/src/modules/promo/plugins.js:119 msgid "Third-party cookies and tracking scripts are held back until the visitor agrees." msgstr "" #: assets/src/modules/promo/plugins.js:125 msgid "Cookie scanning" msgstr "" #: assets/src/modules/promo/plugins.js:126 msgid "Scan your site for the cookies it already sets and categorise them." msgstr "" #: assets/src/modules/promo/plugins.js:132 msgid "A banner that looks like yours" msgstr "" #: assets/src/modules/promo/plugins.js:133 msgid "Multiple layouts and positions, styled to match your site rather than bolted on." msgstr "" #: assets/src/modules/promo/plugins.js:139 msgid "Self-hosted, no page-view caps" msgstr "" #: assets/src/modules/promo/plugins.js:140 msgid "Consent records live in your WordPress database — no monthly platform fee." msgstr "" #: assets/src/modules/promo/plugins.js:152 msgid "Back up before you change anything" msgstr "" #: assets/src/modules/promo/plugins.js:153 msgid "Redirect rules are cheap to undo; a bad migration is not. Duplicator packages your files and database into a single backup you can restore, move to another host, or clone into staging — without hiring anyone to do it." msgstr "" #: assets/src/modules/promo/plugins.js:159 msgid "Full-site backups" msgstr "" #: assets/src/modules/promo/plugins.js:160 msgid "Files and database in one package you can download and keep." msgstr "" #: assets/src/modules/promo/plugins.js:166 msgid "Migrate between hosts" msgstr "" #: assets/src/modules/promo/plugins.js:167 msgid "Move a site to a new domain or server with no downtime and no manual export." msgstr "" #: assets/src/modules/promo/plugins.js:173 msgid "Works on an empty site" msgstr "" #: assets/src/modules/promo/plugins.js:174 msgid "Install a backup at the destination without setting WordPress up there first." msgstr "" #: assets/src/modules/promo/plugins.js:180 msgid "Clone to staging" msgstr "" #: assets/src/modules/promo/plugins.js:181 msgid "Copy the live site somewhere safe to try a change before it reaches visitors." msgstr "" #: assets/src/modules/promo/plugins.js:193 msgid "Stop spam without CAPTCHAs" msgstr "" #: assets/src/modules/promo/plugins.js:194 msgid "Spam submissions and comments cost you the same attention a real one does. ActiveLayer catches them automatically — no puzzles, no checkboxes and no extra step for the visitors you actually want to hear from." msgstr "" #: assets/src/modules/promo/plugins.js:200 msgid "No CAPTCHAs" msgstr "" #: assets/src/modules/promo/plugins.js:201 msgid "Nothing for a real visitor to solve, so your forms stay fast and frictionless." msgstr "" #: assets/src/modules/promo/plugins.js:207 msgid "Works with your form builder" msgstr "" #: assets/src/modules/promo/plugins.js:208 msgid "WPForms, Contact Form 7, Gravity Forms, Elementor Forms, Fluent Forms and more." msgstr "" #: assets/src/modules/promo/plugins.js:214 msgid "Comments and registration" msgstr "" #: assets/src/modules/promo/plugins.js:215 msgid "Covers native WordPress comments and registration spam, not only forms." msgstr "" #: assets/src/modules/promo/plugins.js:221 msgid "WooCommerce and EDD" msgstr "" #: assets/src/modules/promo/plugins.js:222 msgid "Protects product reviews and customer registration on both stores." msgstr "" #. translators: %d: number of selected redirects. #: assets/src/modules/redirects/delete-modal.js:34 #, js-format msgid "Delete %d redirect? This cannot be undone." msgid_plural "Delete %d redirects? This cannot be undone." msgstr[0] "" msgstr[1] "" #: assets/src/modules/redirects/edit-modal.js:135 msgid "Edit redirect" msgstr "" #: assets/src/modules/redirects/edit-modal.js:136 #: assets/src/modules/redirects/index.js:67 msgid "Add redirect" msgstr "" #: assets/src/modules/redirects/edit-modal.js:155 #: assets/src/modules/redirects/form-fields.js:51 msgid "Source URL or pattern" msgstr "" #: assets/src/modules/redirects/edit-modal.js:165 msgid "Source is locked because this redirect is linked to a 404 log." msgstr "" #: assets/src/modules/redirects/edit-modal.js:198 msgid "Save changes" msgstr "" #: assets/src/modules/redirects/edit-modal.js:199 msgid "Create redirect" msgstr "" #: assets/src/modules/redirects/fields.js:14 #: assets/src/modules/redirects/form-fields.js:69 msgid "Exact" msgstr "" #: assets/src/modules/redirects/fields.js:15 #: assets/src/modules/redirects/form-fields.js:70 msgid "Prefix" msgstr "" #: assets/src/modules/redirects/fields.js:16 #: assets/src/modules/redirects/form-fields.js:71 msgid "Regex" msgstr "" #: assets/src/modules/redirects/fields.js:20 msgid "Link" msgstr "" #: assets/src/modules/redirects/fields.js:21 msgid "Page" msgstr "" #: assets/src/modules/redirects/fields.js:22 msgid "None" msgstr "" #: assets/src/modules/redirects/fields.js:26 #: assets/src/modules/redirects/form-fields.js:147 #: assets/src/modules/redirects/index.js:50 #: assets/src/modules/settings/tabs/mcp/index.js:360 msgid "Active" msgstr "" #: assets/src/modules/redirects/fields.js:61 msgid "Source URL" msgstr "" #: assets/src/modules/redirects/fields.js:71 msgid "Destination" msgstr "" #: assets/src/modules/redirects/fields.js:110 msgid "Type" msgstr "" #: assets/src/modules/redirects/fields.js:131 #: assets/src/modules/settings/components/import-panel/preview-modal.js:187 msgid "Match" msgstr "" #: assets/src/modules/redirects/fields.js:142 msgid "Destination type" msgstr "" #: assets/src/modules/redirects/fields.js:202 msgid "Created" msgstr "" #: assets/src/modules/redirects/fields.js:220 msgid "Last edited by" msgstr "" #: assets/src/modules/redirects/form-fields.js:53 msgid "For \"Exact\" use a full path (e.g. /old-page). For \"Prefix\" use a starting fragment. For \"Regex\" use a PCRE expression." msgstr "" #: assets/src/modules/redirects/form-fields.js:65 msgid "Match type" msgstr "" #: assets/src/modules/redirects/form-fields.js:76 msgid "Target type" msgstr "" #: assets/src/modules/redirects/form-fields.js:80 msgid "Custom URL" msgstr "" #: assets/src/modules/redirects/form-fields.js:81 msgid "Existing page" msgstr "" #: assets/src/modules/redirects/form-fields.js:87 msgid "Target URL" msgstr "" #: assets/src/modules/redirects/form-fields.js:102 msgid "Target page" msgstr "" #: assets/src/modules/redirects/form-fields.js:113 msgid "Redirect status" msgstr "" #: assets/src/modules/redirects/form-fields.js:123 msgid "Query string" msgstr "" #: assets/src/modules/redirects/form-fields.js:126 msgid "How the source URL's query string affects this rule. \"Preserve\" forwards tracking params (utm_*, gclid, …) to the destination." msgstr "" #: assets/src/modules/redirects/form-fields.js:133 msgid "Ignore — strip on match" msgstr "" #: assets/src/modules/redirects/form-fields.js:137 msgid "Preserve — forward to destination" msgstr "" #: assets/src/modules/redirects/form-fields.js:141 msgid "Require — must match exactly" msgstr "" #: assets/src/modules/redirects/form-fields.js:156 msgid "Notes (optional)" msgstr "" #: assets/src/modules/redirects/index.js:51 msgid "Inactive" msgstr "" #: assets/src/modules/redirects/index.js:52 msgid "Total hits" msgstr "" #: assets/src/modules/redirects/index.js:86 msgid "All in One SEO helps you earn the rankings redirects protect" msgstr "" #: assets/src/modules/redirects/index.js:91 msgid "Unlock advanced sitemaps, schema markup, Local SEO, WooCommerce SEO and more with the original SEO plugin for WordPress, now AI-powered." msgstr "" #: assets/src/modules/redirects/list.js:64 msgid "Edit" msgstr "" #: assets/src/modules/redirects/list.js:76 msgid "Activate" msgstr "" #: assets/src/modules/redirects/list.js:84 msgid "Deactivate" msgstr "" #: assets/src/modules/redirects/list.js:100 msgid "Delete redirects" msgstr "" #: assets/src/modules/redirects/list.js:140 msgid "No redirects match your filters" msgstr "" #: assets/src/modules/redirects/list.js:144 msgid "Try a different search, or clear your filters to see all your redirects." msgstr "" #: assets/src/modules/redirects/list.js:157 msgid "No redirects yet" msgstr "" #: assets/src/modules/redirects/list.js:158 msgid "Use \"Add redirect\" above to send an old or broken URL to a new destination." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/age.js:15 msgid "Retention (days)" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/age.js:16 msgid "Delete log rows older than this many days each time the cleaner runs." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:20 msgid "When logs exceed" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:21 msgid "Start trimming once the log table reaches this many rows." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:37 msgid "Trim by" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:38 msgid "How aggressively to trim once the threshold is hit." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:46 msgid "Delete every log" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:50 msgid "Delete a percentage of the oldest" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:57 msgid "Delete a fixed number of the oldest" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:76 msgid "Percentage to delete" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:77 msgid "Percentage of the oldest rows to delete on each run (1–100)." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:98 msgid "Rows to delete" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/count.js:99 msgid "Fixed number of the oldest rows to delete on each run." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:13 msgid "Clear logs every" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:14 msgid "Wipe the entire 404 log table on this schedule. The cron event reschedules itself when you change this." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:20 msgid "Hour" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:23 msgid "12 hours" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:25 msgid "Day" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/controls/periodic.js:26 msgid "Week" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:35 msgid "Auto-prune logs" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:36 msgid "Trim the 404 log table automatically. Off keeps every row forever." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:42 msgid "Off" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:43 msgid "By age" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:46 msgid "By row count" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:50 msgid "Periodic full clear" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:65 msgid "Keep linked redirects" msgstr "" #: assets/src/modules/settings/components/cleaner-panel/fields.js:66 msgid "On by default: redirects stay even when the log rows that referenced them are pruned. Turn off to delete those redirects along with their rows." msgstr "" #: assets/src/modules/settings/components/cleaner-panel/index.js:18 msgid "Log Cleanup" msgstr "" #: assets/src/modules/settings/components/import-export.js:43 msgid "Settings exported." msgstr "" #: assets/src/modules/settings/components/import-export.js:46 msgid "Failed to export settings." msgstr "" #: assets/src/modules/settings/components/import-export.js:83 msgid "That file is not valid JSON." msgstr "" #: assets/src/modules/settings/components/import-export.js:100 msgid "Settings imported." msgstr "" #: assets/src/modules/settings/components/import-export.js:109 msgid "Failed to import settings." msgstr "" #: assets/src/modules/settings/components/import-export.js:117 msgid "Import/Export Settings" msgstr "" #: assets/src/modules/settings/components/import-export.js:120 msgid "Move plugin settings between sites — eg. from staging to production. The export contains every user-facing setting; install-specific state (database versions, migration flags) is excluded." msgstr "" #: assets/src/modules/settings/components/import-export.js:135 msgid "Download settings" msgstr "" #: assets/src/modules/settings/components/import-export.js:144 msgid "Import settings…" msgstr "" #: assets/src/modules/settings/components/import-export.js:160 #, js-format msgid "Applied %1$d setting(s) from %2$s." msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:117 msgid "Could not upload the CSV." msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:138 msgid "There are no importable rows in this source." msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:150 msgid "Preview failed." msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:165 msgid "Import Redirects" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:171 msgid "Import from" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:176 msgid "CSV file" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:180 msgid "Another plugin" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:189 msgid "Required column: `source`. Optional columns: `target_url`, `match_type`, `target_type`, `target_page_id`, `redirect_type`, `is_active`, `query_handling`, `notes`." msgstr "" #. translators: 1: filename, 2: detected row count. #: assets/src/modules/settings/components/import-panel/index.js:205 #, js-format msgid "%1$s — %2$d rows detected" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:226 msgid "We didn't detect any supported redirect plugins on this site. Currently supported: Redirection, 301 Redirects (Redirect Manager)." msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:237 msgid "Source plugin" msgstr "" #. translators: 1: plugin label, 2: row count. #: assets/src/modules/settings/components/import-panel/index.js:247 #, js-format msgid "%1$s — %2$d rows" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:269 msgid "Working…" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:270 msgid "Preview import" msgstr "" #: assets/src/modules/settings/components/import-panel/index.js:274 msgid "Reset" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:138 msgid "Import failed mid-batch." msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:152 msgid "Review import" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:167 msgid "Importable" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:172 msgid "Skipped" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:180 msgid "Sample of mapped rows" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:185 msgid "Source" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:186 msgid "Target" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:188 msgid "Code" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:211 msgid "Update existing redirects" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:212 msgid "When a row matches an existing redirect (same source), overwrite its values instead of skipping the row." msgstr "" #. translators: 1: processed rows, 2: total rows, 3: percent. #: assets/src/modules/settings/components/import-panel/preview-modal.js:238 #, js-format msgid "Imported %1$d of %2$d rows (%3$d%%)" msgstr "" #. translators: 1: created count, 2: updated count, 3: skipped count. #: assets/src/modules/settings/components/import-panel/preview-modal.js:261 #, js-format msgid "Done — %1$d created, %2$d updated, %3$d skipped." msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:292 msgid "Importing…" msgstr "" #: assets/src/modules/settings/components/import-panel/preview-modal.js:293 msgid "Start import" msgstr "" #. translators: %d: row count. #: assets/src/modules/settings/components/import-panel/preview-modal.js:322 #, js-format msgid "%d row needs attention" msgid_plural "%d rows need attention" msgstr[0] "" msgstr[1] "" #. translators: 1: row id/number, 2: error message. #: assets/src/modules/settings/components/import-panel/preview-modal.js:336 #, js-format msgid "Row %1$d: %2$s" msgstr "" #. translators: %d: number of additional skipped rows. #: assets/src/modules/settings/components/import-panel/preview-modal.js:346 #, js-format msgid "…and %d more" msgstr "" #. translators: %d: number of paths in the list. #: assets/src/modules/settings/components/paths-repeater.js:106 #, js-format msgid "%d path" msgid_plural "%d paths" msgstr[0] "" msgstr[1] "" #. translators: %d: row number. #: assets/src/modules/settings/components/paths-repeater.js:125 #, js-format msgid "Path %d" msgstr "" #: assets/src/modules/settings/components/paths-repeater.js:138 msgid "Remove path" msgstr "" #: assets/src/modules/settings/components/paths-repeater.js:157 msgid "Fill in the current row before adding another." msgstr "" #: assets/src/modules/settings/components/paths-repeater.js:163 msgid "Add path" msgstr "" #: assets/src/modules/settings/components/purge-logs.js:33 msgid "All logs have been deleted." msgstr "" #: assets/src/modules/settings/components/purge-logs.js:38 msgid "Could not purge logs. Please try again." msgstr "" #: assets/src/modules/settings/components/purge-logs.js:60 msgid "Permanently delete every entry in the 404 error log. This action cannot be undone. Custom redirects are not affected." msgstr "" #: assets/src/modules/settings/components/purge-logs.js:67 msgid "Purge all logs" msgstr "" #: assets/src/modules/settings/components/purge-logs.js:72 msgid "Purge all logs?" msgstr "" #: assets/src/modules/settings/components/purge-logs.js:77 msgid "This will permanently delete every entry in the 404 error log. This action cannot be undone." msgstr "" #: assets/src/modules/settings/components/purge-logs.js:83 msgid "Custom redirects will not be affected." msgstr "" #: assets/src/modules/settings/components/purge-logs.js:103 msgid "Yes, purge all logs" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:58 msgid "Send periodic email reports" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:59 msgid "Email a digest of your 404 activity on a schedule. Off means no reports are sent." msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:74 msgid "Report frequency" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:75 msgid "How often the digest is dispatched. The cron event reschedules itself when you change this." msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:86 msgid "Daily" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:90 msgid "Weekly" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:94 msgid "Monthly" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:107 msgid "Report recipients" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:108 msgid "Press Enter or comma to add an address. Leave empty to fall back to the site admin email." msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:132 #: assets/src/modules/settings/tabs/notifications.js:145 msgid "name@example.com" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:143 msgid "Attach CSV of 404s since the last report" msgstr "" #: assets/src/modules/settings/components/reports-panel/fields.js:147 msgid "Includes the rows added since the previous report as a UTF-8 CSV attachment." msgstr "" #. translators: %s: ISO timestamp. #: assets/src/modules/settings/components/reports-panel/fields.js:165 #, js-format msgid "Last report sent on %s (UTC)." msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:43 msgid "Bot token" msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:44 msgid "Create a bot with @BotFather in Telegram and paste the token it gives you." msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:69 msgid "Chat ID" msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:70 msgid "The chat, group, or @channel the bot should message. Use @userinfobot or @getidsbot to find your numeric chat ID." msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:92 msgid "Alert on 404 errors" msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:93 msgid "Message the chat whenever a new 404 is logged." msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:109 msgid "Alert on redirects" msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:110 msgid "Message the chat whenever a redirect is served. Busy redirects can be chatty — leave off if unsure." msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:130 #: assets/src/modules/settings/tabs/notifications.js:159 msgid "Hit threshold" msgstr "" #: assets/src/modules/settings/components/telegram-panel/fields.js:131 msgid "Only alert once a URL has been hit this many times. Set to 1 to alert on every hit." msgstr "" #. translators: %s: error description from Telegram. #: assets/src/modules/settings/components/telegram-panel/fields.js:160 #, js-format msgid "Last delivery failed: %s" msgstr "" #. translators: %s: UTC timestamp. #: assets/src/modules/settings/components/telegram-panel/fields.js:179 #, js-format msgid "Last alert delivered on %s (UTC)." msgstr "" #: assets/src/modules/settings/components/telegram-panel/index.js:30 msgid "Telegram Alerts" msgstr "" #: assets/src/modules/settings/components/telegram-panel/index.js:33 msgid "Telegram Alerts is no longer maintained. It keeps working here because a connection is already set up, but switching it off is permanent — it cannot be switched back on." msgstr "" #: assets/src/modules/settings/components/telegram-panel/index.js:44 msgid "Push a Telegram message when a 404 is logged or a redirect is served. Delivery runs in the background, so visitors never wait on it." msgstr "" #: assets/src/modules/settings/components/telegram-panel/index.js:48 msgid "Enable Telegram Alerts" msgstr "" #: assets/src/modules/settings/tabs/index.js:27 msgid "Notifications" msgstr "" #: assets/src/modules/settings/tabs/index.js:31 msgid "Import/Export" msgstr "" #: assets/src/modules/settings/tabs/index.js:35 msgid "MCP" msgstr "" #: assets/src/modules/settings/tabs/logs.js:49 msgid "Save every 404 hit to the database so you can review and fix them from the Logs page." msgstr "" #: assets/src/modules/settings/tabs/logs.js:60 msgid "Skip search engine bots" msgstr "" #: assets/src/modules/settings/tabs/logs.js:61 msgid "Skip 404s from obvious crawlers (bot, spider, slurp, …) to keep the log table small." msgstr "" #: assets/src/modules/settings/tabs/logs.js:72 msgid "Skip duplicate URLs" msgstr "" #: assets/src/modules/settings/tabs/logs.js:73 msgid "Only the first hit for each URL is recorded, so a URL that keeps 404ing does not fill the log." msgstr "" #: assets/src/modules/settings/tabs/logs.js:84 msgid "Don’t store IP addresses" msgstr "" #: assets/src/modules/settings/tabs/logs.js:85 msgid "Drop visitor IPs before they hit the database. Useful for GDPR." msgstr "" #: assets/src/modules/settings/tabs/logs.js:97 msgid "Also process 404 requests that occur on the WordPress admin side. Off by default — most sites only care about front-end 404s." msgstr "" #: assets/src/modules/settings/tabs/logs.js:109 msgid "Paths to ignore" msgstr "" #: assets/src/modules/settings/tabs/logs.js:114 msgid "e.g. /feed/ or /20*/" msgstr "" #: assets/src/modules/settings/tabs/logs.js:120 msgid "Any 404 whose path contains one of these is skipped — no log, no redirect, no email. Use * to stand for any run of characters, so /20*/ covers every year of date-based archives in one row." msgstr "" #: assets/src/modules/settings/tabs/logs.js:133 msgid "Broken Link Checker fixes the links behind these 404s" msgstr "" #: assets/src/modules/settings/tabs/logs.js:138 msgid "Logging shows which URLs break. It finds the links pointing at them across your content, so you can fix the source." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:66 #: assets/src/modules/settings/tabs/mcp/clients.js:112 #: assets/src/modules/settings/tabs/mcp/clients.js:154 msgid "Save to:" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:77 msgid "Open the file for your operating system above, creating it if it does not exist. On Linux, use the Claude Code tab instead." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:81 #: assets/src/modules/settings/tabs/mcp/clients.js:124 #: assets/src/modules/settings/tabs/mcp/clients.js:176 msgid "Paste the snippet into the file." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:82 msgid "Restart Claude Desktop to pick up the 404 to 301 abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:92 msgid "Run in:" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:93 msgid "Your terminal" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:100 msgid "Open a terminal in your project directory." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:101 msgid "Paste the command and press enter." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:102 msgid "Start a new Claude Code session to pick up the 404 to 301 abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:120 msgid "Open the file above, creating it if it does not exist." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:125 msgid "Restart the Gemini CLI to pick up the 404 to 301 abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:135 msgid "Add in:" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:136 msgid "Settings → MCP → Add Server" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:139 msgid "In Cursor, go to Settings → MCP → Add Server." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:143 msgid "Paste the snippet as a new server." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:144 msgid "Enable the server in the MCP list to pick up the 404 to 301 abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:172 msgid "Create the file above in your workspace, or use the user-level equivalent." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:177 msgid "Open the Chat view in agent mode and start the server to pick up the 404 to 301 abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:186 msgid "ChatGPT’s developer-mode connectors only support OAuth, which this site does not offer. Use Claude, Gemini, Cursor or VS Code instead." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:215 msgid "Connect an AI Client" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:218 msgid "Pick the tool you want to connect, then copy its configuration. Your application password is filled in for you while this page is open." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:241 msgid "Not supported:" msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:248 msgid "Your application password is filled into the snippet below — copy and paste it as-is." msgstr "" #: assets/src/modules/settings/tabs/mcp/clients.js:267 msgid "Copy snippet" msgstr "" #: assets/src/modules/settings/tabs/mcp/copy-button.js:34 msgid "Copied" msgstr "" #: assets/src/modules/settings/tabs/mcp/copy-button.js:35 msgid "Copy" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:26 msgid "Which 404s got the most hits last month?" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:27 msgid "Redirect /old-pricing/ to /pricing/" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:28 msgid "What happens if someone visits /blog/2019/?" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:29 msgid "Fix my top ten 404s by pointing them at the closest page" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:130 msgid "The install failed. Check the site’s connectivity and write permissions, then try again." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:161 msgid "Could not generate an application password." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:193 msgid "Your application password was rejected — it may have been revoked. Generate a new one and test again." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:207 msgid "The abilities endpoint answered, but not with a list of abilities. Check the MCP Adapter is active and try again." msgstr "" #. Translators: 1 - A number of abilities, 2 - A round-trip time in milliseconds. #: assets/src/modules/settings/tabs/mcp/index.js:224 #, js-format msgid "Signed in with your application password and found %1$d 404 to 301 abilities in %2$dms. Your site is ready to connect an AI client below." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:235 msgid "Could not reach the abilities endpoint. Check the site is reachable and try again." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:258 msgid "This version of WordPress does not include the Abilities API." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:263 msgid "Update WordPress" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:265 msgid "to 6.9 or later, then come back to this page." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:276 msgid "The Abilities API is available but nothing at all is registered on it, which means something is switching it off — usually a security plugin or a snippet in the site’s code. Re-enable it, then reload this page." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:286 msgid "The Abilities API is working, but this plugin’s abilities did not register. Deactivating and reactivating 404 to 301 usually clears it; if not, please contact support." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:297 msgid "404 to 301 abilities registered" msgstr "" #. Translators: 1 - A number of abilities. #: assets/src/modules/settings/tabs/mcp/index.js:301 #, js-format msgid "%1$d redirect and 404 abilities registered with the WordPress Abilities API" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:307 msgid "Nothing for an AI client to call yet" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:310 msgid "Ready" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:314 msgid "Not registered" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:315 msgid "Needs WP 6.9+" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:328 msgid "Hide abilities" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:329 msgid "View all abilities" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:338 msgid "These are the redirect and 404 operations an AI client can perform on this site. Reads are marked read-only; the rest change your redirects, logs or settings." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:353 msgid "MCP Adapter installed" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:354 msgid "Bridges registered abilities to the Model Context Protocol" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:363 #: assets/src/modules/settings/tabs/mcp/index.js:432 #: assets/src/modules/settings/tabs/mcp/index.js:558 msgid "Action needed" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:377 msgid "Activate MCP Adapter" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:378 msgid "Install MCP Adapter" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:385 msgid "The MCP Adapter plugin is installed but not active. Activate it so AI clients can call these abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:389 msgid "The MCP Adapter is a free WordPress plugin that exposes registered abilities over the Model Context Protocol. Install it so AI clients can call them." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:410 msgid "Application password generated" msgstr "" #. Translators: 1 - A WordPress username. #: assets/src/modules/settings/tabs/mcp/index.js:414 #, js-format msgid "Generated for %1$s" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:418 msgid "An AI client needs a credential to sign in with" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:422 msgid "Application passwords are switched off on this site" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:428 msgid "Generated" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:436 msgid "Unavailable" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:445 msgid "Manage in your profile" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:457 msgid "Generate password" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:465 msgid "Application passwords are disabled on this site. A security plugin, or a constant or filter in your site’s code, is switching the feature off. Re-enable it, then reload this page." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:469 msgid "Application passwords are disabled because this site is not served over HTTPS. Switch the site to HTTPS to enable them." msgstr "" #. Translators: 1 - A WordPress username. #: assets/src/modules/settings/tabs/mcp/index.js:478 #, js-format msgid "An application password lets an AI client sign in to this site as %1$s. It carries the same access your own account has, and you can revoke it from your profile at any time." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:490 msgid "This password will not be shown again. Copy it now." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:498 msgid "Username" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:506 msgid "Password" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:513 msgid "It is also filled into the configuration snippets below for as long as this page stays open." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:538 msgid "Connection confirmed" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:539 msgid "Connection failed" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:541 msgid "Ready to connect" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:542 msgid "Test the connection" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:544 msgid "Every step above is complete — configure a client below." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:548 msgid "We’ll sign in with your application password and confirm an AI client can reach these abilities." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:554 msgid "Verified" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:560 msgid "Pending" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:573 msgid "Test again" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:574 msgid "Test connection" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:581 msgid "Available once the steps above are complete." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:590 msgid "Your site is set up and ready for an AI client. A live test signs in with the password itself, and WordPress only reveals one at the moment it is created — so testing means generating another." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:603 msgid "Generate a new password" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:640 msgid "Let your AI assistant handle your redirects" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:647 msgid "Connect any MCP-compatible AI client and it can read your 404 logs, create redirects and check where a URL lands — from chat." msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:655 msgid "Try asking:" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:668 msgid "Setup complete" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:669 msgid "Setup" msgstr "" #. Translators: 1 - Completed steps, 2 - Total steps. #: assets/src/modules/settings/tabs/mcp/index.js:676 #, js-format msgid "%1$d of %2$d steps complete" msgstr "" #. Translators: 1 - The title of the next step. #: assets/src/modules/settings/tabs/mcp/index.js:686 #, js-format msgid "next up: %1$s" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:774 msgid "Let AI assistants manage the rest of your site" msgstr "" #: assets/src/modules/settings/tabs/mcp/index.js:779 msgid "Your redirects and 404 logs are connected. WPVibe brings the same to the rest of WordPress — letting AI assistants manage your site, safely." msgstr "" #: assets/src/modules/settings/tabs/notifications.js:88 msgid "WP Mail SMTP makes sure these emails arrive" msgstr "" #: assets/src/modules/settings/tabs/notifications.js:94 msgid "WordPress mail often lands in spam, or fails with no error at all. Route it through a provider you control and confirm every one arrived." msgstr "" #: assets/src/modules/settings/tabs/notifications.js:100 msgid "Instant Alerts" msgstr "" #: assets/src/modules/settings/tabs/notifications.js:104 msgid "Notify me on 404 errors" msgstr "" #: assets/src/modules/settings/tabs/notifications.js:105 msgid "Send an email when a 404 fires. Honors the threshold below so the inbox does not get flooded on busy sites." msgstr "" #: assets/src/modules/settings/tabs/notifications.js:120 msgid "Recipient emails" msgstr "" #: assets/src/modules/settings/tabs/notifications.js:121 msgid "Press Enter or comma to add an address. Add as many recipients as you need." msgstr "" #: assets/src/modules/settings/tabs/notifications.js:160 msgid "Only send an email once a URL has racked up at least this many 404 hits." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:57 msgid "Default Redirect Behavior" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:63 msgid "WordPress tries to auto-correct an unknown URL before 404 to 301 sees it. Blocking closest-post guesses stops it picking a similar post; blocking all guessing also stops its trailing-slash, capitalization and attachment fallbacks." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:71 msgid "Don’t block — let WordPress guess (default)" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:78 msgid "Block closest-post guesses" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:85 msgid "Block all guessing" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:94 msgid "Monitor post slug changes" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:95 msgid "Automatically create a redirect from the old URL to the new one when a post or page slug is renamed." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:105 msgid "Default 404 Redirect" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:109 msgid "Enable default 404 redirect" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:110 msgid "When on, 404 URLs without a specific custom redirect fall back to the destination configured here." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:122 msgid "The redirect is off. Per-URL redirects from the Redirects page still fire." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:136 msgid "Redirect type" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:137 msgid "HTTP status code used when this fallback redirect fires." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:154 msgid "Redirect to" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:155 msgid "Where 404 requests land when no custom redirect matches." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:188 msgid "Destination URL" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:189 msgid "Absolute URL (including https://)." msgstr "" #: assets/src/modules/settings/tabs/redirects.js:209 msgid "Destination page" msgstr "" #: assets/src/modules/settings/tabs/redirects.js:210 msgid "Search and pick the page that should serve as the 404 destination." msgstr "" #: assets/src/store/migration/actions.js:54 msgid "Could not start the migration." msgstr "" #: assets/src/store/migration/actions.js:79 msgid "Migration tick failed — will retry on next page load." msgstr "" #: assets/src/store/migration/actions.js:99 msgid "Migration aborted." msgstr "" #: assets/src/store/migration/actions.js:104 msgid "Could not abort the migration." msgstr "" #: assets/src/store/settings/actions.js:47 msgid "Settings saved." msgstr "" #: assets/src/store/settings/actions.js:52 msgid "Could not save settings." msgstr ""