# Copyright (C) 2026 LazyCodeLab # This file is distributed under the GPLv2 or later. msgid "" msgstr "" "Project-Id-Version: AI Blackout - Block AI Crawlers & Stop AI Training 2.0.0\n" "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/ai-blackout\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-10T18:38:57+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "X-Generator: WP-CLI 2.12.0\n" "X-Domain: ai-blackout\n" #. Plugin Name of the plugin #: ai-blackout.php msgid "AI Blackout - Block AI Crawlers & Stop AI Training" msgstr "" #. Description of the plugin #: ai-blackout.php msgid "Block AI crawlers from taking your content, formally reserve your rights against AI training, and turn off the AI features WordPress and other plugins add to your site." msgstr "" #. Author of the plugin #: ai-blackout.php msgid "LazyCodeLab" msgstr "" #. Author URI of the plugin #: ai-blackout.php msgid "https://lazycodelab.com" msgstr "" #. translators: 1: Required PHP version, 2: Current PHP version. #: ai-blackout.php:52 #, php-format msgid "AI Blackout requires PHP %1$s or later. This server is running PHP %2$s, so the plugin has not been loaded." msgstr "" #: ai-blackout.php:68 msgid "AI Blackout could not load its files because the Composer autoloader is missing. Run \"composer install\" in the plugin directory." msgstr "" #: data/releases.php:15 msgid "Four screens became one" msgstr "" #: data/releases.php:16 msgid "Status, Setup, Crawler Control and Declarations were four menu items asking about one decision. They are now one screen with three tabs. Nothing you had chosen has changed." msgstr "" #: data/releases.php:20 msgid "Status" msgstr "" #: data/releases.php:21 msgid "The Protection tab" msgstr "" #: data/releases.php:26 msgid "Setup" msgstr "" #: data/releases.php:27 msgid "The one question at the top of Protection" msgstr "" #: data/releases.php:32 msgid "Crawler Control" msgstr "" #: data/releases.php:33 msgid "The Advanced tab" msgstr "" #: data/releases.php:38 msgid "Declarations" msgstr "" #: data/releases.php:39 msgid "The Legal declaration tab" msgstr "" #: data/releases.php:47 msgid "The apply buttons are gone" msgstr "" #: data/releases.php:48 msgid "Saving now writes every layer your server can take, and rewrites them whenever you change your answer. If you had deliberately left .htaccess alone, check the Advanced tab." msgstr "" #: data/releases.php:51 msgid "Your protection, without opening the plugin" msgstr "" #: data/releases.php:52 msgid "A dashboard widget, an admin bar entry, and a status line on the Plugins screen. Protection also tracks how long you have been covered without a break." msgstr "" #: data/releases.php:55 msgid "Crawlers that bring you visitors are flagged" msgstr "" #: data/releases.php:56 msgid "Anything that would cost you search visibility says so on its own row, with Allow shown as the recommended answer. Blocking one still asks you to confirm." msgstr "" #: data/releases.php:59 msgid "Turning the plugin off and on restores your rules" msgstr "" #: data/releases.php:60 msgid "Deactivating still removes them, so it stays a real test of whether this plugin is causing a problem. Activating puts them back from your settings instead of asking first." msgstr "" #: data/releases.php:63 msgid "The dated record no longer repeats itself" msgstr "" #: data/releases.php:64 msgid "It added three rows every time you saved, whether anything had changed or not. It now records only real changes and clears out the old duplicates. No dates are lost." msgstr "" #. translators: %s: Status label, e.g. "Blocking". #: src/Admin/AdminBarStatus.php:98 #, php-format msgid "AI Blackout: %s" msgstr "" #. translators: %s: Number of crawlers. #: src/Admin/Assets.php:81 #: src/Admin/CrawlerTable.php:357 #, php-format msgid "%s blocked" msgid_plural "%s blocked" msgstr[0] "" msgstr[1] "" #. translators: %s: Number of crawlers. #: src/Admin/Assets.php:83 #: src/Admin/CrawlerTable.php:359 #, php-format msgid "%s asking" msgid_plural "%s asking" msgstr[0] "" msgstr[1] "" #. translators: %s: Number of crawlers. #. translators: %s: Number of uses. #: src/Admin/Assets.php:85 #: src/Admin/CrawlerTable.php:361 #: src/Admin/DeclarationsPanel.php:320 #, php-format msgid "%s allowed" msgid_plural "%s allowed" msgstr[0] "" msgstr[1] "" #: src/Admin/BlackoutScreen.php:117 #: src/Admin/BlackoutScreen.php:118 #: src/Admin/BlackoutScreen.php:231 #: src/Audit/Checks/BlackoutCheck.php:74 msgid "AI inside WordPress" msgstr "" #: src/Admin/BlackoutScreen.php:144 #: src/Admin/DeclarationsPanel.php:158 #: src/Admin/DeclarationsPanel.php:220 #: src/Admin/MainScreen.php:358 #: src/Admin/MainScreen.php:384 #: src/Admin/ReviewRequest.php:156 msgid "You do not have permission to change these settings." msgstr "" #: src/Admin/BlackoutScreen.php:209 msgid "You do not have permission to clear this log." msgstr "" #: src/Admin/BlackoutScreen.php:227 #: src/Admin/MainScreen.php:440 #: src/Admin/WhatsNewScreen.php:365 msgid "You do not have permission to view this page." msgstr "" #: src/Admin/BlackoutScreen.php:238 msgid "WordPress 7.0 ships with AI built in, and many plugins add their own. This page switches that off and shows you what your site has been sending to AI companies." msgstr "" #: src/Admin/BlackoutScreen.php:242 msgid "What your site has been sending to AI companies" msgstr "" #: src/Admin/BlackoutScreen.php:260 msgid "AI built into WordPress" msgstr "" #: src/Admin/BlackoutScreen.php:266 msgid "AI added by your other plugins" msgstr "" #: src/Admin/BlackoutScreen.php:272 msgid "Outgoing requests to AI companies" msgstr "" #: src/Admin/BlackoutScreen.php:280 msgid "Which AI companies to watch for" msgstr "" #. translators: %s: Number of AI companies being watched. #: src/Admin/BlackoutScreen.php:284 #, php-format msgid "%s watched" msgid_plural "%s watched" msgstr[0] "" msgstr[1] "" #: src/Admin/BlackoutScreen.php:287 msgid "None watched" msgstr "" #: src/Admin/BlackoutScreen.php:293 #: src/Admin/MainScreen.php:835 msgid "Save changes" msgstr "" #: src/Admin/BlackoutScreen.php:309 msgid "Log missing" msgstr "" #: src/Admin/BlackoutScreen.php:315 msgid "Nothing recorded" msgstr "" #. translators: %s: Number of distinct sources recorded. #: src/Admin/BlackoutScreen.php:320 #, php-format msgid "%s entry" msgid_plural "%s entries" msgstr[0] "" msgstr[1] "" #: src/Admin/BlackoutScreen.php:334 msgid "None installed" msgstr "" #: src/Admin/BlackoutScreen.php:356 #: src/Audit/Result.php:201 msgid "Blocking" msgstr "" #: src/Admin/BlackoutScreen.php:359 msgid "Watching" msgstr "" #: src/Admin/BlackoutScreen.php:362 #: src/Admin/BlackoutScreen.php:376 #: src/Admin/DeclarationsPanel.php:353 #: src/Admin/DeclarationsPanel.php:373 #: src/Audit/Result.php:213 msgid "Off" msgstr "" #: src/Admin/BlackoutScreen.php:380 msgid "All on" msgstr "" #. translators: 1: Number switched on. 2: Total number available. #: src/Admin/BlackoutScreen.php:385 #, php-format msgid "%1$s of %2$s on" msgstr "" #: src/Admin/BlackoutScreen.php:401 msgid "Settings saved." msgstr "" #: src/Admin/BlackoutScreen.php:409 msgid "Activity log cleared." msgstr "" #: src/Admin/BlackoutScreen.php:426 #: src/Admin/MainScreen.php:1120 #: src/Audit/Auditor.php:91 msgid "AI Blackout is switched off." msgstr "" #: src/Admin/BlackoutScreen.php:427 msgid "AIBLACKOUT_DISABLE is set in wp-config.php, so nothing on this page is currently doing anything. You can still change these settings; they will take effect when that line is removed." msgstr "" #: src/Admin/BlackoutScreen.php:443 msgid "The activity log table is missing, so nothing can be recorded. Deactivating and reactivating AI Blackout will create it." msgstr "" #: src/Admin/BlackoutScreen.php:451 #: src/Admin/DeclarationsPanel.php:780 msgid "Nothing recorded yet." msgstr "" #: src/Admin/BlackoutScreen.php:456 msgid "Watching outgoing requests is switched off, so nothing is being recorded. Turn it on below to find out which of your plugins talk to AI companies." msgstr "" #: src/Admin/BlackoutScreen.php:461 msgid "Nothing on your site has tried to reach an AI company since this was switched on. Attempts appear here as they happen." msgstr "" #: src/Admin/BlackoutScreen.php:472 msgid "What made the request" msgstr "" #: src/Admin/BlackoutScreen.php:473 msgid "Where it was going" msgstr "" #: src/Admin/BlackoutScreen.php:474 msgid "Times" msgstr "" #: src/Admin/BlackoutScreen.php:475 msgid "Result" msgstr "" #: src/Admin/BlackoutScreen.php:476 msgid "Last seen" msgstr "" #: src/Admin/BlackoutScreen.php:489 msgid "Blocked" msgstr "" #: src/Admin/BlackoutScreen.php:489 msgid "Allowed through" msgstr "" #: src/Admin/BlackoutScreen.php:502 msgid "Counts are grouped by day. Records older than 30 days are removed automatically." msgstr "" #: src/Admin/BlackoutScreen.php:510 msgid "Clear this log" msgstr "" #: src/Admin/BlackoutScreen.php:526 msgid "This version of WordPress does not include AI features, so there is nothing here to switch off. These settings will start applying if you update to a version that does." msgstr "" #: src/Admin/BlackoutScreen.php:534 msgid "Turn off WordPress's AI" msgstr "" #: src/Admin/BlackoutScreen.php:535 msgid "Stops WordPress offering AI features to any plugin, and stops it registering AI providers or storing their API keys. This uses the off-switch WordPress itself provides, so plugins asking for AI get a clean refusal rather than an error." msgstr "" #: src/Admin/BlackoutScreen.php:540 msgid "Close the AI agent interface" msgstr "" #: src/Admin/BlackoutScreen.php:541 msgid "WordPress 7.0 added a way for AI agents to list and run actions on your site over the web. This removes every registered action and makes those web addresses return \"not found\". The code still loads; the doors are shut." msgstr "" #: src/Admin/BlackoutScreen.php:546 msgid "Hide the AI keys screen" msgstr "" #: src/Admin/BlackoutScreen.php:547 msgid "Removes Settings → Connectors, where AI provider API keys are entered, and refuses direct access to it. Keys already saved are left alone rather than deleted. They simply cannot be used while AI is off." msgstr "" #. translators: %s: A comma-separated list of ability names. #: src/Admin/BlackoutScreen.php:560 #, php-format msgid "One AI action was removed on this page load: %s." msgid_plural "These AI actions were removed on this page load: %s." msgstr[0] "" msgstr[1] "" #: src/Admin/BlackoutScreen.php:577 msgid "AI keys are set on your server." msgstr "" #. translators: %s: A comma-separated list of constant or environment variable names. #: src/Admin/BlackoutScreen.php:581 #, php-format msgid "Found: %s. These live in wp-config.php or your server environment, where no plugin can reach them. They cannot be used while AI is switched off here, but they would work again if this plugin were removed." msgstr "" #: src/Admin/BlackoutScreen.php:601 msgid "None of the plugins AI Blackout knows how to switch AI off in are installed here. Nothing to do." msgstr "" #. translators: 1: Installed version, 2: Version this was tested against. #: src/Admin/BlackoutScreen.php:619 #, php-format msgid "You have version %1$s; this was tested against %2$s. If that plugin has moved its AI setting since, this may no longer switch it off. The protection status page will not claim it did." msgstr "" #. translators: %s: Plugin name. #: src/Admin/BlackoutScreen.php:630 #, php-format msgid "Turn off AI in %s" msgstr "" #: src/Admin/BlackoutScreen.php:652 msgid "This watches every request your site makes through WordPress and can refuse the ones going to AI companies. It covers WordPress itself and nearly every plugin. A plugin that makes its own network connection instead of using WordPress would not be stopped, and this page will never claim otherwise." msgstr "" #: src/Admin/BlackoutScreen.php:659 msgid "Watch outgoing AI requests" msgstr "" #: src/Admin/BlackoutScreen.php:660 msgid "Turning this off means nothing is watched and nothing is recorded." msgstr "" #: src/Admin/BlackoutScreen.php:664 msgid "What to do with them" msgstr "" #: src/Admin/BlackoutScreen.php:669 msgid "Watch only" msgstr "" #: src/Admin/BlackoutScreen.php:670 msgid "Record every request to an AI company and let it through. Start here: you cannot sensibly decide what to block until you can see what your site is actually doing." msgstr "" #: src/Admin/BlackoutScreen.php:673 msgid "Block them" msgstr "" #: src/Admin/BlackoutScreen.php:674 msgid "Refuse the request and record it. The plugin that tried gets a clear error. Some plugins handle that gracefully and some will show an error message to whoever clicked the button." msgstr "" #: src/Admin/BlackoutScreen.php:704 msgid "The bundled list of AI companies could not be read, so nothing can be watched or blocked. Reinstalling AI Blackout will replace the missing file." msgstr "" #: src/Admin/BlackoutScreen.php:724 msgid "AI built into plugins you may be paying for" msgstr "" #: src/Admin/BlackoutScreen.php:728 msgid "These are switched off here by default. Blocking one of these stops that plugin's AI at the network level. That is a blunter tool than the per-plugin switches above, so use those first." msgstr "" #: src/Admin/BlackoutScreen.php:790 #: src/Admin/DeclarationsPanel.php:491 #: src/Admin/DeclarationsPanel.php:558 #: src/Admin/DeclarationsPanel.php:667 #: src/Admin/DeclarationsPanel.php:677 #: src/Admin/DeclarationsPanel.php:724 msgid "On" msgstr "" #. translators: %s: Number of crawlers. #: src/Admin/CrawlerTable.php:78 #, php-format msgid "All %s crawler, one at a time" msgid_plural "All %s crawlers, one at a time" msgstr[0] "" msgstr[1] "" #: src/Admin/CrawlerTable.php:86 msgid "Each crawler can be refused, asked to stay away in robots.txt without being refused, or allowed. Setting one here overrides your answer on the Protection tab for that crawler alone -- and changing that answer later starts every crawler again from its defaults." msgstr "" #. translators: %s: Ruleset version, a date such as 2026-08-16. #: src/Admin/CrawlerTable.php:94 #, php-format msgid "Crawler list version %s. It ships with the plugin and updates when the plugin does. Nothing is fetched from the internet." msgstr "" #: src/Admin/CrawlerTable.php:104 msgid "Collapse all" msgstr "" #: src/Admin/CrawlerTable.php:105 msgid "Expand all" msgstr "" #: src/Admin/CrawlerTable.php:225 msgid "Some crawlers you blocked cannot be refused by your server:" msgstr "" #: src/Admin/CrawlerTable.php:238 msgid "A rule built on a name that short would turn away ordinary visitors too. They are still named in robots.txt." msgstr "" #: src/Admin/CrawlerTable.php:285 msgid "Their documentation" msgstr "" #: src/Admin/CrawlerTable.php:286 #: src/Admin/DeclarationsPanel.php:892 msgid "(opens in a new tab)" msgstr "" #. translators: %s: Number of crawlers. #: src/Admin/CrawlerTable.php:304 #, php-format msgid "%s affects search" msgid_plural "%s affect search" msgstr[0] "" msgstr[1] "" #: src/Admin/CrawlerTable.php:322 msgid "Crawler" msgstr "" #: src/Admin/CrawlerTable.php:323 msgid "What it does" msgstr "" #: src/Admin/CrawlerTable.php:324 msgid "Your decision" msgstr "" #: src/Admin/CrawlerTable.php:394 msgid "Leave each one as it is" msgstr "" #: src/Admin/CrawlerTable.php:395 msgid "Block all of them" msgstr "" #: src/Admin/CrawlerTable.php:396 msgid "Ask all of them" msgstr "" #: src/Admin/CrawlerTable.php:397 msgid "Allow all of them" msgstr "" #. translators: %s: Company name, e.g. OpenAI. #: src/Admin/CrawlerTable.php:408 #, php-format msgid "Everything %s runs:" msgstr "" #. translators: 1: Company name, e.g. OpenAI. 2: Comma-separated crawler names. #: src/Admin/CrawlerTable.php:440 #, php-format msgid "%1$s also runs a crawler that brings people to your site: %2$s. Blocking the whole company is refused until you confirm that one below." msgid_plural "%1$s also runs crawlers that bring people to your site: %2$s. Blocking the whole company is refused until you confirm those below." msgstr[0] "" msgstr[1] "" #: src/Admin/CrawlerTable.php:472 msgid "retired" msgstr "" #: src/Admin/CrawlerTable.php:492 msgid "This one has no crawler of its own. It is a name that only works as a request in robots.txt, which the company can honour or ignore." msgstr "" #: src/Admin/CrawlerTable.php:499 msgid "Unlike the others here, this one can send visitors your way. Only Allow keeps your pages in those results: Ask only and Block both publish the same line in robots.txt, and this crawler obeys it." msgstr "" #. translators: %s: Crawler user-agent token. #: src/Admin/CrawlerTable.php:506 #, php-format msgid "What to do about %s" msgstr "" #: src/Admin/CrawlerTable.php:509 msgid "Block" msgstr "" #: src/Admin/CrawlerTable.php:510 msgid "Ask only" msgstr "" #: src/Admin/CrawlerTable.php:511 msgid "Allow" msgstr "" #: src/Admin/CrawlerTable.php:517 msgid "Recommended" msgstr "" #: src/Admin/CrawlerTable.php:558 msgid "You confirmed the search impact of blocking this." msgstr "" #: src/Admin/CrawlerTable.php:559 msgid "Search impact already confirmed. Blocking this applies straight away." msgstr "" #: src/Admin/CrawlerTable.php:569 msgid "This one affects where my site appears in search. I understand, and I still want to block it." msgstr "" #: src/Admin/CrawlerTable.php:591 msgid "Affects web search" msgstr "" #: src/Admin/CrawlerTable.php:592 msgid "Affects AI search" msgstr "" #: src/Admin/CrawlerTable.php:622 msgid "Collects content to train AI models" msgstr "" #: src/Admin/CrawlerTable.php:625 msgid "Builds public datasets others train on" msgstr "" #: src/Admin/CrawlerTable.php:628 msgid "A scraping tool anyone can point at your site" msgstr "" #: src/Admin/CrawlerTable.php:631 msgid "Powers an AI search or answer feature" msgstr "" #: src/Admin/CrawlerTable.php:634 msgid "Fetches a page because a person asked for it" msgstr "" #: src/Admin/CrawlerTable.php:637 msgid "Purpose not stated" msgstr "" #: src/Admin/DashboardWidget.php:73 #: src/Admin/MainScreen.php:243 #: src/Admin/MainScreen.php:270 #: src/Admin/MainScreen.php:453 msgid "AI Blackout" msgstr "" #. translators: %s: Number of consecutive days. #: src/Admin/DashboardWidget.php:104 #, php-format msgid "Verified protected for %s day in a row." msgid_plural "Verified protected for %s days in a row." msgstr[0] "" msgstr[1] "" #. translators: 1: Number of companies blocked. 2: Total known companies. #: src/Admin/DashboardWidget.php:120 #, php-format msgid "Blocking %1$d of %2$d known AI companies." msgstr "" #. translators: 1: Number of requests. 2: Date. #: src/Admin/DashboardWidget.php:137 #, php-format msgid "%1$s requests refused by WordPress since %2$s -- a floor, not a total, since most crawlers never reach WordPress at all. A small or flat number usually means it is working, not failing." msgstr "" #: src/Admin/DashboardWidget.php:149 msgid "This blocks crawlers that identify themselves honestly. It cannot stop one that disguises itself as an ordinary browser." msgstr "" #: src/Admin/DashboardWidget.php:155 msgid "See full protection status" msgstr "" #: src/Admin/DeclarationsPanel.php:246 msgid "Blocking a crawler stops it reading your site. A declaration states, in a form courts and companies both recognise, that you have not given permission for your work to be used to train AI. It costs nothing, cannot break your site, and is the part that still counts if someone takes your content anyway." msgstr "" #: src/Admin/DeclarationsPanel.php:256 #: src/Admin/DeclarationsPanel.php:905 msgid "Reservation of rights" msgstr "" #: src/Admin/DeclarationsPanel.php:257 msgid "Reserved" msgstr "" #: src/Admin/DeclarationsPanel.php:257 msgid "Not reserved" msgstr "" #: src/Admin/DeclarationsPanel.php:262 msgid "What you allow, use by use" msgstr "" #: src/Admin/DeclarationsPanel.php:268 #: src/Admin/DeclarationsPanel.php:911 msgid "Page-level notices" msgstr "" #: src/Admin/DeclarationsPanel.php:274 msgid "Say so on your site" msgstr "" #: src/Admin/DeclarationsPanel.php:281 msgid "Save and publish" msgstr "" #: src/Admin/DeclarationsPanel.php:286 msgid "A clause for your terms page" msgstr "" #: src/Admin/DeclarationsPanel.php:287 msgid "What you have declared, and since when" msgstr "" #: src/Admin/DeclarationsPanel.php:292 msgid "If you delete AI Blackout" msgstr "" #: src/Admin/DeclarationsPanel.php:293 msgid "Kept" msgstr "" #: src/Admin/DeclarationsPanel.php:293 msgid "Not kept" msgstr "" #. translators: %s: Number of uses. #: src/Admin/DeclarationsPanel.php:322 #, php-format msgid "%s not allowed" msgid_plural "%s not allowed" msgstr[0] "" msgstr[1] "" #. translators: %s: Number of uses. #: src/Admin/DeclarationsPanel.php:324 #, php-format msgid "%s unset" msgid_plural "%s unset" msgstr[0] "" msgstr[1] "" #. translators: %s: Number of notices switched on, out of 2. #: src/Admin/DeclarationsPanel.php:358 #, php-format msgid "%s of 2 on" msgstr "" #: src/Admin/DeclarationsPanel.php:376 msgid "Visible" msgstr "" #: src/Admin/DeclarationsPanel.php:376 msgid "Not shown yet" msgstr "" #: src/Admin/DeclarationsPanel.php:388 msgid "Nothing recorded yet" msgstr "" #. translators: %s: Date the reservation was first published. #: src/Admin/DeclarationsPanel.php:393 #, php-format msgid "Since %s" msgstr "" #: src/Admin/DeclarationsPanel.php:406 msgid "Deleting the plugin always puts your files back and always removes the activity log. That part is not a choice: rules left in a file that nothing is managing any more are worse than no rules at all." msgstr "" #: src/Admin/DeclarationsPanel.php:411 msgid "What you can keep is every setting on this page and every other page of AI Blackout -- which crawlers you block, how enforcement is set up, your declarations -- plus the record above, so that reinstalling picks up where you left off instead of starting from nothing." msgstr "" #: src/Admin/DeclarationsPanel.php:421 msgid "Keep my settings and my declaration record if I delete AI Blackout" msgstr "" #: src/Admin/DeclarationsPanel.php:426 msgid "This keeps information, not protection. Once AI Blackout is deleted nothing is blocking any crawler, whichever way this box is ticked." msgstr "" #: src/Admin/DeclarationsPanel.php:431 msgid "Save this choice" msgstr "" #: src/Admin/DeclarationsPanel.php:447 msgid "Saved. Your declarations are published and the change has been recorded below." msgstr "" #: src/Admin/DeclarationsPanel.php:456 msgid "Saved. Your settings and your declaration record will be kept if you delete AI Blackout." msgstr "" #: src/Admin/DeclarationsPanel.php:457 msgid "Saved. Deleting AI Blackout will remove everything it stored, including your declaration record." msgstr "" #: src/Admin/DeclarationsPanel.php:465 msgid "One change was not applied." msgstr "" #: src/Admin/DeclarationsPanel.php:466 msgid "Telling search engines not to index your site was left as it was, because the confirmation box next to it was not ticked. Everything else on this page was saved." msgstr "" #: src/Admin/DeclarationsPanel.php:480 msgid "European copyright law lets anyone mine published work for text and data unless the rights holder has reserved that right in a machine-readable way. This publishes exactly that reservation, at a standard address AI companies check, so \"we did not know\" stops being available to them." msgstr "" #: src/Admin/DeclarationsPanel.php:486 msgid "Reserve my rights" msgstr "" #: src/Admin/DeclarationsPanel.php:495 msgid "Publishes a reservation under Article 4(3) of the EU copyright directive, as a file at /.well-known/tdmrep.json, as a tag on every page, and as an HTTP header." msgstr "" #: src/Admin/DeclarationsPanel.php:500 msgid "Link to your terms" msgstr "" #: src/Admin/DeclarationsPanel.php:508 msgid "Optional. The address of the page holding your terms. Publishing one makes the reservation harder to argue with, because it points at the conditions in full. The clause further down this page is written to go there." msgstr "" #: src/Admin/DeclarationsPanel.php:519 msgid "Nothing is being published." msgstr "" #: src/Admin/DeclarationsPanel.php:520 msgid "With this switched off, your site makes no reservation of rights, and mining your content stays lawful by default in the EU." msgstr "" #. translators: %s: The URL of the published tdmrep.json file. #: src/Admin/DeclarationsPanel.php:531 #, php-format msgid "What is published at %s" msgstr "" #: src/Admin/DeclarationsPanel.php:547 msgid "Blocking a crawler is all or nothing. This is finer: it separates being findable in search from being fed to an AI, and states your answer for each one in your robots.txt file, in the wording the Content Signals policy defines. Leaving one unanswered says nothing about it either way, which is not the same as saying no." msgstr "" #: src/Admin/DeclarationsPanel.php:553 msgid "Publish these signals" msgstr "" #: src/Admin/DeclarationsPanel.php:564 msgid "Appearing in search results" msgstr "" #: src/Admin/DeclarationsPanel.php:565 msgid "Indexing your pages so a search engine can return a link and a short excerpt to a person. This does not include AI-written summaries." msgstr "" #: src/Admin/DeclarationsPanel.php:571 msgid "Being used to answer questions" msgstr "" #: src/Admin/DeclarationsPanel.php:572 msgid "Reading your page at the moment someone asks an AI a question, and using it to write the answer. Your content does the work; the answer usually replaces the visit." msgstr "" #: src/Admin/DeclarationsPanel.php:578 msgid "Being used as training data" msgstr "" #: src/Admin/DeclarationsPanel.php:579 msgid "Using your work to train or fine-tune an AI model. This is the one most people mean when they say AI is stealing their content." msgstr "" #: src/Admin/DeclarationsPanel.php:585 msgid "Right now:" msgstr "" #: src/Admin/DeclarationsPanel.php:595 msgid "What this adds to your robots.txt" msgstr "" #: src/Admin/DeclarationsPanel.php:614 msgid "Allowed" msgstr "" #: src/Admin/DeclarationsPanel.php:615 msgid "Not allowed" msgstr "" #: src/Admin/DeclarationsPanel.php:616 msgid "Say nothing about it" msgstr "" #: src/Admin/DeclarationsPanel.php:641 msgid "Setting this to \"Not allowed\" asks search engines to stop indexing your site, which will cost you traffic. Tick this to confirm you mean it. Without it the change is refused." msgstr "" #: src/Admin/DeclarationsPanel.php:656 msgid "Two older directives that some tools and stock libraries check, added to every page. They are not a standard and nobody is obliged to honour them. They cost nothing, and they add one more place where your refusal is on the record." msgstr "" #: src/Admin/DeclarationsPanel.php:662 msgid "Refuse AI use of my text" msgstr "" #: src/Admin/DeclarationsPanel.php:672 msgid "Refuse AI use of my images" msgstr "" #: src/Admin/DeclarationsPanel.php:691 msgid "What this adds to every page" msgstr "" #: src/Admin/DeclarationsPanel.php:713 msgid "An optional mark for your footer. It is off unless you switch it on, and it never appears unless you are actually declaring or blocking something. A badge on a site doing neither would be the kind of claim this plugin exists to argue against." msgstr "" #: src/Admin/DeclarationsPanel.php:719 msgid "Show the badge" msgstr "" #: src/Admin/DeclarationsPanel.php:726 msgid "Added to the footer of your site, styled to inherit your theme's colours. Nothing is loaded from anywhere else. It links to the plugin, marked so it passes no ranking value either way." msgstr "" #: src/Admin/DeclarationsPanel.php:734 msgid "The badge would not appear yet." msgstr "" #: src/Admin/DeclarationsPanel.php:735 msgid "Nothing is declared and no crawler is refused, so there is nothing for it to be true about. Switch on the reservation of rights above, or block a crawler, and it will show." msgstr "" #: src/Admin/DeclarationsPanel.php:742 msgid "How it looks:" msgstr "" #: src/Admin/DeclarationsPanel.php:755 msgid "Everything above is machine-readable, which is what an AI company's crawler reads. This is the same position in words, for the page a person reads. It is written from your settings, so the two agree." msgstr "" #: src/Admin/DeclarationsPanel.php:781 msgid "Saving this page records what you published and when, so you can always answer \"since when?\" about your own reservation." msgstr "" #. translators: %s: Number of recorded changes. #: src/Admin/DeclarationsPanel.php:795 #, php-format msgid "Show the %s recorded change" msgid_plural "Show all %s recorded changes" msgstr[0] "" msgstr[1] "" #: src/Admin/DeclarationsPanel.php:805 msgid "Newest first. Times are shown in your site's timezone; each entry also stores the UTC time it was recorded." msgstr "" #: src/Admin/DeclarationsPanel.php:809 msgid "When" msgstr "" #: src/Admin/DeclarationsPanel.php:810 msgid "Declaration" msgstr "" #: src/Admin/DeclarationsPanel.php:811 msgid "What it said" msgstr "" #. translators: %s: Date the reservation was first published. #: src/Admin/DeclarationsPanel.php:851 #, php-format msgid "You have been reserving your rights since %s." msgstr "" #. translators: %s: Date the declaration last changed. #: src/Admin/DeclarationsPanel.php:863 #, php-format msgid "Last changed %s." msgstr "" #: src/Admin/DeclarationsPanel.php:880 msgid "This is your own record, kept on your own site. It is here so you can answer \"since when?\" — but because it lives in your database, it is not something you could hold up as proof against anyone else." msgstr "" #: src/Admin/DeclarationsPanel.php:885 msgid "For a dated copy nobody can say you wrote yourself, ask the Internet Archive to save your robots.txt. That timestamps the published file independently of you, which is the copy worth having if it ever comes up — and worth repeating whenever you change something here." msgstr "" #: src/Admin/DeclarationsPanel.php:891 msgid "Archive my robots.txt now" msgstr "" #: src/Admin/DeclarationsPanel.php:908 msgid "Content signals" msgstr "" #: src/Admin/MainScreen.php:271 msgid "Your content" msgstr "" #: src/Admin/MainScreen.php:424 msgid "You do not have permission to run this test." msgstr "" #: src/Admin/MainScreen.php:462 msgid "The bundled crawler list could not be read, so no crawler can be blocked. Reinstalling AI Blackout will replace the missing file." msgstr "" #: src/Admin/MainScreen.php:496 msgid "Protection" msgstr "" #: src/Admin/MainScreen.php:497 msgid "Legal declaration" msgstr "" #: src/Admin/MainScreen.php:498 msgid "Advanced" msgstr "" #: src/Admin/MainScreen.php:566 msgid "Your server" msgstr "" #: src/Admin/MainScreen.php:567 msgid "WordPress" msgstr "" #: src/Admin/MainScreen.php:568 msgid "robots.txt" msgstr "" #: src/Admin/MainScreen.php:569 msgid "Your legal declaration" msgstr "" #: src/Admin/MainScreen.php:570 msgid "AI switched off inside WordPress" msgstr "" #: src/Admin/MainScreen.php:595 msgid "Protecting you right now:" msgstr "" #. translators: %s: Number of findings. #: src/Admin/MainScreen.php:630 #, php-format msgid "%s thing needs your attention" msgid_plural "%s things need your attention" msgstr[0] "" msgstr[1] "" #: src/Admin/MainScreen.php:644 #: src/Admin/MainScreen.php:1062 msgid "What to do:" msgstr "" #: src/Admin/MainScreen.php:662 msgid "The AIBLACKOUT_DISABLE setting in wp-config.php turns off everything this plugin does." msgstr "" #: src/Admin/MainScreen.php:669 msgid "No AI crawler is being refused or asked to stay away. Your legal declaration is still published." msgstr "" #. translators: %s: Number of crawlers. #: src/Admin/MainScreen.php:675 #, php-format msgid "%s AI crawler is asked in robots.txt to stay away. Nothing is being refused, which is what you chose." msgid_plural "%s AI crawlers are asked in robots.txt to stay away. Nothing is being refused, which is what you chose." msgstr[0] "" msgstr[1] "" #. translators: %s: Number of crawlers. #: src/Admin/MainScreen.php:688 #, php-format msgid "%s AI crawler is refused by your server, before WordPress runs — so pages served from a cache are covered too." msgid_plural "%s AI crawlers are refused by your server, before WordPress runs — so pages served from a cache are covered too." msgstr[0] "" msgstr[1] "" #. translators: %s: Number of crawlers. #: src/Admin/MainScreen.php:700 #, php-format msgid "%s AI crawler is refused by WordPress. Pages served from a cache are not covered, because WordPress never runs for them." msgid_plural "%s AI crawlers are refused by WordPress. Pages served from a cache are not covered, because WordPress never runs for them." msgstr[0] "" msgstr[1] "" #: src/Admin/MainScreen.php:726 msgid "One line needs adding by hand" msgstr "" #: src/Admin/MainScreen.php:732 msgid "Your site runs on nginx, which keeps its configuration outside your site folder. Changing it needs root access and a server restart, so no WordPress plugin can do it for you — any plugin that says it blocks crawlers at the server on nginx is not telling you the truth." msgstr "" #: src/Admin/MainScreen.php:733 msgid "We could not confirm which web server this site runs on, so nothing has been written to it. Blocking is still happening inside WordPress." msgstr "" #: src/Admin/MainScreen.php:740 msgid "The rule, and a message you can send your host" msgstr "" #: src/Admin/MainScreen.php:746 msgid "The nginx rule" msgstr "" #: src/Admin/MainScreen.php:752 msgid "A message you can send to your host" msgstr "" #: src/Admin/MainScreen.php:760 msgid "Until that rule is installed, blocked crawlers are still refused by robots.txt and by WordPress itself." msgstr "" #. translators: 1: Site URL. 2: The nginx configuration snippet. #: src/Admin/MainScreen.php:774 #, php-format msgid "" "Hello,\n" "\n" "I would like to block a number of AI crawlers from my site, %1$s, at the server rather than in WordPress, so that the rule still applies to cached pages.\n" "\n" "Could you add the following to the nginx server block for this site and reload nginx?\n" "\n" "%2$s\n" "\n" "Thank you." msgstr "" #: src/Admin/MainScreen.php:804 msgid "What should AI be allowed to do with your content?" msgstr "" #: src/Admin/MainScreen.php:808 msgid "Block AI from taking my content" msgstr "" #: src/Admin/MainScreen.php:809 msgid "Refuses every crawler that collects content to train AI models, build datasets or scrape sites wholesale. Leaves AI search alone, so people can still find you." msgstr "" #: src/Admin/MainScreen.php:810 msgid "Recommended. Stops what people mean by \"AI is stealing my content\", without costing you a single visitor." msgstr "" #: src/Admin/MainScreen.php:816 msgid "Block everything AI" msgstr "" #: src/Admin/MainScreen.php:817 msgid "Also refuses the crawlers behind ChatGPT, Claude and Perplexity search, and the ones that fetch a page because a person asked. Ordinary search engines are never touched." msgstr "" #: src/Admin/MainScreen.php:825 msgid "Just state my terms" msgstr "" #: src/Admin/MainScreen.php:826 msgid "Refuses nobody. Publishes your reservation of rights and asks in robots.txt that your work is not used for AI training." msgstr "" #: src/Admin/MainScreen.php:840 msgid "Saving writes every layer your server can take. Nothing else to apply, and nothing to switch on afterwards." msgstr "" #: src/Admin/MainScreen.php:854 msgid "I understand this takes my pages out of AI assistants' answers, and I still want it." msgstr "" #: src/Admin/MainScreen.php:899 msgid "Since you installed it" msgstr "" #. translators: 1: Number of companies blocked. 2: Total known companies. #: src/Admin/MainScreen.php:906 #, php-format msgid "%1$s of %2$s" msgstr "" #: src/Admin/MainScreen.php:910 msgid "AI companies blocked" msgstr "" #. translators: %s: Number of consecutive days. #: src/Admin/MainScreen.php:919 msgid "day verified protected" msgid_plural "days verified protected" msgstr[0] "" msgstr[1] "" #: src/Admin/MainScreen.php:927 msgid "requests refused by WordPress" msgstr "" #. translators: %s: Date. #: src/Admin/MainScreen.php:930 #, php-format msgid "Since %s — a floor, not a total. Your server turns most crawlers away before WordPress ever sees them." msgstr "" #: src/Admin/MainScreen.php:939 msgid "rights reserved since" msgstr "" #: src/Admin/MainScreen.php:974 msgid "Everything on this tab is optional. The answer on the Protection tab already sets every crawler below; this is for changing one of them by hand, and for seeing exactly what the plugin has written to your site." msgstr "" #: src/Admin/MainScreen.php:985 msgid "Save crawler choices" msgstr "" #: src/Admin/MainScreen.php:1001 msgid "Layer by layer" msgstr "" #: src/Admin/MainScreen.php:1005 msgid "Each layer of protection, what it is doing, and the evidence for it. Reading files and settings tells you what should happen; the button below finds out what really does, by asking your own site for a page while pretending to be an AI crawler. Nothing is sent anywhere else." msgstr "" #: src/Admin/MainScreen.php:1013 msgid "Test it from the outside" msgstr "" #: src/Admin/MainScreen.php:1020 msgid "Showing the results of a real request made to your site just now, pretending to be an AI crawler." msgstr "" #: src/Admin/MainScreen.php:1030 msgid "AI Blackout refuses crawlers that identify themselves, and publishes a declaration that covers the rest in law. It cannot stop a crawler that hides what it is. Nothing running on your own server can." msgstr "" #: src/Admin/MainScreen.php:1080 msgid "The exact bytes crawlers receive at /robots.txt" msgstr "" #: src/Admin/MainScreen.php:1081 msgid "What WordPress would serve at /robots.txt" msgstr "" #: src/Admin/MainScreen.php:1082 msgid "The robots.txt file currently on disk" msgstr "" #: src/Admin/MainScreen.php:1108 msgid "Saved, and your site has been updated to match." msgstr "" #: src/Admin/MainScreen.php:1121 msgid "AIBLACKOUT_DISABLE is set in wp-config.php, so nothing is being blocked and nothing is being declared. You can still change these settings; they take effect when that line is removed." msgstr "" #: src/Admin/MainScreen.php:1138 msgid "Your protection could not be written to your server:" msgstr "" #: src/Admin/MainScreen.php:1163 msgid "Saved, but some of it could not be applied:" msgstr "" #. translators: %s: Number of consecutive days. #: src/Admin/PluginRowStatus.php:75 #, php-format msgid "%s day protected" msgid_plural "%s days protected" msgstr[0] "" msgstr[1] "" #. translators: %s: Number of AI companies blocked. #: src/Admin/PluginRowStatus.php:85 #, php-format msgid "blocking %s AI company" msgid_plural "blocking %s AI companies" msgstr[0] "" msgstr[1] "" #: src/Admin/PluginRowStatus.php:97 msgid "AI Blackout:" msgstr "" #: src/Admin/RatingFooter.php:42 msgid "Leave a review for AI Blackout on WordPress.org" msgstr "" #: src/Admin/RatingFooter.php:43 msgid "leave a review" msgstr "" #. translators: 1: Plugin name. 2: Link reading "leave a review". #: src/Admin/RatingFooter.php:48 #, php-format msgid "Enjoyed %1$s? Please %2$s. Help stop AI bots taking your content!" msgstr "" #: src/Admin/ReviewRequest.php:129 msgid "Is AI Blackout doing its job?" msgstr "" #: src/Admin/ReviewRequest.php:130 msgid "If it is working for you, a review helps another site owner find it before their content gets scraped." msgstr "" #: src/Admin/ReviewRequest.php:134 msgid "Sure, happy to!" msgstr "" #: src/Admin/ReviewRequest.php:139 msgid "Maybe later" msgstr "" #: src/Admin/ReviewRequest.php:144 msgid "Something's not working" msgstr "" #: src/Admin/WhatsNewScreen.php:134 #: src/Admin/WhatsNewScreen.php:380 msgid "What's new in AI Blackout" msgstr "" #: src/Admin/WhatsNewScreen.php:135 #: src/Admin/WhatsNewScreen.php:257 #: src/Admin/WhatsNewScreen.php:275 msgid "What's new" msgstr "" #. translators: %s: Number of unread release notes. #: src/Admin/WhatsNewScreen.php:172 #, php-format msgid "%s unread release note" msgid_plural "%s unread release notes" msgstr[0] "" msgstr[1] "" #. translators: %s: Plugin version number. #: src/Admin/WhatsNewScreen.php:252 #, php-format msgid "AI Blackout %s" msgstr "" #: src/Admin/WhatsNewScreen.php:386 msgid "There are no release notes for this version." msgstr "" #: src/Admin/WhatsNewScreen.php:413 msgid "You have read these already. They are kept here so you can come back to them." msgstr "" #. translators: %s: The version now installed. #: src/Admin/WhatsNewScreen.php:424 #, php-format msgid "AI Blackout has been updated to %s. Your settings, your crawler choices and your dated record are unchanged — but some things have moved, so here is where they went." msgstr "" #. translators: 1: The version previously installed. 2: The version now installed. #: src/Admin/WhatsNewScreen.php:429 #, php-format msgid "AI Blackout has been updated from %1$s to %2$s. Your settings, your crawler choices and your dated record are unchanged — but some things have moved, so here is where they went." msgstr "" #. translators: %s: Version number. #: src/Admin/WhatsNewScreen.php:450 #, php-format msgid "Version %s" msgstr "" #: src/Admin/WhatsNewScreen.php:486 msgid "Where things went" msgstr "" #: src/Admin/WhatsNewScreen.php:490 msgid "Used to be" msgstr "" #: src/Admin/WhatsNewScreen.php:491 msgid "Now" msgstr "" #: src/Admin/WhatsNewScreen.php:542 msgid "Before" msgstr "" #: src/Admin/WhatsNewScreen.php:543 msgid "After" msgstr "" #: src/Admin/WhatsNewScreen.php:592 msgid "Continue to AI Blackout" msgstr "" #: src/Admin/WhatsNewScreen.php:598 msgid "Full changelog" msgstr "" #: src/Audit/Auditor.php:92 msgid "The AIBLACKOUT_DISABLE setting in wp-config.php turns off everything this plugin does. Nothing is being blocked and nothing is being declared." msgstr "" #: src/Audit/Auditor.php:93 #: src/Audit/Checks/HtaccessCheck.php:92 #: src/Audit/Checks/PhpGateCheck.php:113 #: src/Audit/Checks/RobotsTxtCheck.php:81 msgid "Remove the AIBLACKOUT_DISABLE line from wp-config.php to turn protection back on." msgstr "" #: src/Audit/Auditor.php:106 msgid "Your content is not protected." msgstr "" #: src/Audit/Auditor.php:107 msgid "Nothing is currently blocking AI crawlers or telling them to stay away." msgstr "" #: src/Audit/Auditor.php:108 msgid "Choose what AI is allowed to do with your content, below." msgstr "" #: src/Audit/Auditor.php:121 msgid "You are asking AI crawlers to stay away, and not stopping them." msgstr "" #: src/Audit/Auditor.php:122 msgid "Your robots.txt rules are published, and crawlers that choose to obey them will leave you alone. Crawlers that ignore robots.txt are getting your content, because nothing is refusing them." msgstr "" #: src/Audit/Auditor.php:123 msgid "This is what \"just state my terms\" means. Choose one of the blocking answers below to turn it into a barrier." msgstr "" #: src/Audit/Auditor.php:136 msgid "AI crawlers are being blocked, but part of your setup needs attention." msgstr "" #: src/Audit/Auditor.php:137 msgid "At least one layer is refusing AI crawlers. Something else is not working the way it should." msgstr "" #: src/Audit/Auditor.php:138 msgid "Open \"Check exactly what is protecting you\" below and follow the step on the layer marked for attention." msgstr "" #: src/Audit/Auditor.php:150 msgid "AI crawlers that identify themselves are being refused." msgstr "" #: src/Audit/Auditor.php:151 msgid "Requests from the AI crawlers you chose to block are turned away, and your robots.txt asks the rest to stay away. This does not stop a crawler that hides what it is. Nothing running on your own server can." msgstr "" #: src/Audit/Auditor.php:152 msgid "Nothing else to do." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:94 msgid "AI Blackout is switched off in wp-config.php." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:95 msgid "WordPress AI features, the Abilities API and outgoing AI requests are all running normally." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:96 msgid "Remove the AIBLACKOUT_DISABLE line from wp-config.php to switch the plugin back on." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:106 msgid "AI is switched on inside your WordPress." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:107 msgid "WordPress 7.0 ships with AI built in, and other plugins add their own. Nothing here is being turned off, and nothing is watching what your site sends to AI companies." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:108 msgid "Turn the switches on the AI inside WordPress screen on, to switch off the AI features built into WordPress and your other plugins." msgstr "" #. translators: %s: A comma-separated list of what is switched off. #: src/Audit/Checks/BlackoutCheck.php:120 #, php-format msgid "AI features are switched off (%s), but outgoing AI requests are only being watched." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:123 msgid "Your site can still send content to AI companies. Every attempt is being recorded so you can see who is doing it, but nothing is being stopped." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:124 msgid "Look at what has been recorded, then switch outgoing requests from \"Watch only\" to \"Block them\"." msgstr "" #. translators: %s: A comma-separated list of what is switched off. #: src/Audit/Checks/BlackoutCheck.php:136 #, php-format msgid "AI features are switched off (%s). Outgoing requests are not being watched." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:139 msgid "Plugins on your site can still send your content to AI companies, and nothing is recording it." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:140 msgid "Turn watching for outgoing requests on, at least in \"Watch only\" mode, to find out what your site is sending." msgstr "" #. translators: %s: A comma-separated list of constant or environment variable names. #: src/Audit/Checks/BlackoutCheck.php:154 #, php-format msgid "AI is blocked, but AI provider keys are still configured on the server (%s)." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:157 msgid "Requests to AI companies are being refused, so the keys cannot currently be used. But they live in wp-config.php or your server environment, where no plugin can remove them. If this plugin is switched off or deleted, they work again immediately." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:158 msgid "Remove those lines from wp-config.php or your server environment if you no longer want AI keys on this site." msgstr "" #. translators: %s: A comma-separated list of what is switched off. #: src/Audit/Checks/BlackoutCheck.php:169 #, php-format msgid "AI is switched off inside WordPress (%s), and outgoing AI requests are refused." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:172 msgid "Plugins on your site cannot reach AI companies through WordPress. This covers anything using the normal WordPress way of making a request, which is nearly everything. A plugin that opens its own network connection would not be stopped." msgstr "" #: src/Audit/Checks/BlackoutCheck.php:187 msgid "WordPress's own AI" msgstr "" #: src/Audit/Checks/BlackoutCheck.php:191 msgid "the AI agent interface" msgstr "" #: src/Audit/Checks/BlackoutCheck.php:195 msgid "the AI keys screen" msgstr "" #: src/Audit/Checks/BlackoutCheck.php:205 msgid "nothing" msgstr "" #: src/Audit/Checks/CloudflareCheck.php:46 msgid "Cloudflare" msgstr "" #: src/Audit/Checks/CloudflareCheck.php:61 msgid "This site is being served through Cloudflare." msgstr "" #: src/Audit/Checks/CloudflareCheck.php:62 msgid "Cloudflare sees every request before your server does, including requests that would be served from a cache. That makes it the strongest place to block AI crawlers, and it can see traffic this plugin never will." msgstr "" #: src/Audit/Checks/CloudflareCheck.php:63 msgid "Cloudflare has its own AI crawler controls in your Cloudflare dashboard, under Security. This plugin does not manage them for you." msgstr "" #: src/Audit/Checks/CloudflareCheck.php:72 msgid "This request did not come through Cloudflare." msgstr "" #: src/Audit/Checks/CloudflareCheck.php:73 msgid "Blocking is happening on your own server only. A site can be signed up to Cloudflare and still bypass it, if the DNS record is set to DNS-only rather than proxied. In that case Cloudflare sees nothing and cannot block anything." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:93 msgid "Legal declarations" msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:97 msgid "a reservation of text and data mining rights" msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:101 msgid "content signals in robots.txt" msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:105 msgid "noai and noimageai directives" msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:124 #: src/Audit/Checks/HtaccessCheck.php:90 #: src/Audit/Checks/PhpGateCheck.php:111 #: src/Audit/Checks/RobotsTxtCheck.php:79 msgid "AI Blackout is switched off by the AIBLACKOUT_DISABLE setting in wp-config.php." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:125 msgid "No declarations are being published. Your previously recorded declaration history is kept." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:126 msgid "Remove the AIBLACKOUT_DISABLE line from wp-config.php to publish them again." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:136 msgid "You are not declaring any rights over your content." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:137 msgid "Blocking a crawler stops it taking your content today. A declaration states, in a form a court can read, that you never gave permission. That is what matters if content has already been taken." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:138 msgid "Turn on the rights reservation. It publishes a legal statement, changes nothing a visitor sees, and cannot affect your search ranking." msgstr "" #. translators: %s: Comma-separated list of published declarations. #: src/Audit/Checks/DeclarationsCheck.php:149 #, php-format msgid "You are publishing %s." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:165 msgid "This does not block anything. Under EU copyright law a machine-readable reservation removes the permission that would otherwise let anyone mine your content for AI training, so scraping it becomes an infringement rather than something allowed by default." msgstr "" #: src/Audit/Checks/DeclarationsCheck.php:174 msgid "It was published today. It applies from now on, not to anything taken before." msgstr "" #. translators: 1: Number of days, 2: Date the declaration was first published. #: src/Audit/Checks/DeclarationsCheck.php:179 #, php-format msgid "It has stood for %1$d day, since %2$s. It applies to what happened after that date, not before." msgid_plural "It has stood for %1$d days, since %2$s. It applies to what happened after that date, not before." msgstr[0] "" msgstr[1] "" #: src/Audit/Checks/DeclarationsCheck.php:203 msgid " and " msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:97 msgid "Blocking by your host or another plugin" msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:106 msgid "This site could not reach itself, so this test could not run." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:107 msgid "We cannot tell whether your host is blocking AI crawlers. Some hosts block a site from requesting its own pages, which is normal and does not mean anything is wrong." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:108 msgid "This check can be skipped. Everything else on this screen is unaffected." msgstr "" #. translators: %d: HTTP status code. #: src/Audit/Checks/HostBlockingCheck.php:120 #, php-format msgid "An ordinary browser request to your own home page returned %d instead of 200." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:123 msgid "Because a normal visit does not succeed, we cannot use this test to tell whether AI crawlers are being blocked separately. Something is affecting all requests, not just crawlers." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:124 msgid "Check whether your site is reachable normally, or whether a maintenance mode or security plugin is refusing requests." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:136 msgid "Every AI crawler is set to blocked, so there was no safe way to test this." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:137 msgid "When you block a crawler yourself, a refusal could be coming from this plugin or from your host, and the two look identical from outside. We will not guess which." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:138 msgid "To test this, temporarily allow one AI crawler and run the test again." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:171 msgid "The test requests could not be completed." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:172 msgid "We cannot tell whether your host is blocking AI crawlers." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:173 msgid "Try running the test again in a moment." msgstr "" #. translators: %s: Comma-separated crawler names. #: src/Audit/Checks/HostBlockingCheck.php:185 #, php-format msgid "Something other than this plugin is refusing these AI crawlers: %s" msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:188 msgid "You have these crawlers set to allowed, but they are being refused anyway. The block is coming from your host, a security plugin, or a service in front of your site. This is worth knowing either way: you may already be more protected than this screen suggests, or you may be losing traffic you wanted to keep." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:189 msgid "If you want these crawlers allowed, ask your host whether they block AI crawlers, and check any security plugins you have installed." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:198 msgid "Nothing outside this plugin appears to be blocking AI crawlers." msgstr "" #: src/Audit/Checks/HostBlockingCheck.php:199 msgid "The AI crawlers you allow are being served normally, so your host is not refusing them. Whatever blocking is happening is yours, and under your control." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:73 msgid "Server-level blocking (.htaccess)" msgstr "" #: src/Audit/Checks/HtaccessCheck.php:91 msgid "Even if rules are present in .htaccess, this plugin is not managing them." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:104 msgid "This layer cannot block anything on Apache 2.2. The rules we write use the Apache 2.4 access syntax, and writing a block that parses and then blocks nothing would be worse than writing none at all." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:105 msgid "Ask your host to move you to Apache 2.4 or later. Version 2.2 stopped receiving security fixes in 2018. Until then blocking happens in your PHP layer, which a page cache can skip, or at the edge with Cloudflare." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:116 msgid "This layer cannot work here. nginx does not read .htaccess files. Blocking has to happen in your PHP layer, which a page cache can skip, or in a CDN in front of your site." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:117 msgid "We could not confirm what web server this site runs on, so we cannot promise this layer would work. It has been left off rather than reporting protection we cannot verify." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:119 msgid "Add the nginx rule to your server configuration, or send it to your host and ask them to add it. If you have no server access at all, a CDN in front of your site can block these requests instead. That is set up in the CDN, not here." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:120 msgid "Ask your host which web server your site runs on." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:130 msgid "We could not work out which folder your site is served from, so we cannot read or write .htaccess." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:131 msgid "This layer cannot be checked or applied until that is resolved. It is reported as unknown rather than as missing rules, because nothing has gone wrong with the file. We simply cannot find it." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:132 msgid "Check that the WordPress Address and Site Address in Settings → General match how your site is actually reached, then run this again." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:143 msgid "Blocking rules are still in .htaccess, but no crawler is set to be blocked." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:144 msgid "No rules are needed here, because no crawler is set to be blocked." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:146 msgid "Your server is refusing crawlers that your settings no longer refuse. The two disagree." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:147 msgid "Your robots.txt still asks AI crawlers to stay away, and your declaration is still published. Nothing is being turned away at the door, which is what you chose." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:149 msgid "Save your choices again. That rewrites the file to match them, removing the rules." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:160 msgid "Crawlers are set to be blocked, but no AI Blackout rules were found in .htaccess." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:161 msgid "This layer is not blocking anything. Either the file could not be written, or something removed the rules -- usually another plugin rewriting the file, or a host that resets it." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:162 msgid "Save your choices again to rewrite the file. If the rules disappear again, another plugin or your host is overwriting it." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:172 msgid "Blocking rules are present in .htaccess, but they do not match which crawlers you currently have set to block." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:173 msgid "Your server is still refusing whichever crawlers were blocked the last time this was applied -- not necessarily the ones your current choices ask for. Something you meant to block may be getting through, or something you meant to allow may still be refused." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:174 msgid "Save your choices again. That rewrites the file to match them." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:183 msgid "Blocking rules are present in .htaccess and your server reads them." msgstr "" #: src/Audit/Checks/HtaccessCheck.php:184 msgid "Blocked AI crawlers are refused by the web server itself, before WordPress runs. This keeps working even when pages are served from a cache." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:83 msgid "Page caching" msgstr "" #. translators: %s: Comma-separated plugin names. #: src/Audit/Checks/PageCacheCheck.php:103 #, php-format msgid "A page cache is running (%s)." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:106 msgid "A page cache is running." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:108 msgid "Visitors are often served without WordPress running. Your server-level rules block AI crawlers before that happens, so caching does not weaken your protection." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:109 msgid "Visitors are often served without WordPress running, which means WordPress-level blocking is skipped for those requests. AI crawlers hitting a cached page are not being refused." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:113 msgid "Server rules run before the cache and would close this gap. See the .htaccess layer for why they are not in place." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:114 msgid "Add the nginx rule to your server configuration, or ask your host to add it." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:125 msgid "Because pages are not being cached, requests are reaching WordPress and WordPress-level blocking is working. If you switch to a host or setup where this cache starts working, check this screen again." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:135 msgid "No page cache was found inside WordPress." msgstr "" #: src/Audit/Checks/PageCacheCheck.php:136 msgid "Requests appear to be reaching WordPress, so WordPress-level blocking should be working. Caching run by your host or a CDN is invisible from inside WordPress, so this is not a guarantee. The self-test can confirm what visitors actually receive." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:94 msgid "WordPress blocking (PHP)" msgstr "" #: src/Audit/Checks/PhpGateCheck.php:112 msgid "No requests are being blocked by WordPress." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:123 msgid "WordPress is refusing nobody, because no crawler is set to be blocked." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:124 msgid "Nothing is being refused, because nothing has been chosen to refuse." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:125 #: src/Audit/Checks/ServedRobotsCheck.php:136 msgid "Choose one of the blocking answers at the top of this screen." msgstr "" #. translators: %d: Number of crawler tokens. #: src/Audit/Checks/PhpGateCheck.php:137 #, php-format msgid "WordPress is set to refuse %d crawler, but a page cache is serving visitors before WordPress runs." msgid_plural "WordPress is set to refuse %d crawlers, but a page cache is serving visitors before WordPress runs." msgstr[0] "" msgstr[1] "" #: src/Audit/Checks/PhpGateCheck.php:145 msgid "Most AI crawlers are getting your pages anyway. When a page is served from the cache, WordPress never loads, so this layer never gets the chance to refuse anything. Right now robots.txt is the only thing asking them to stay away, and it is a request, not a barrier." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:147 msgid "Server rules would close this gap completely, and they could not be written. See the .htaccess layer above for why." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:148 msgid "Add the nginx rule to your server configuration, or ask your host to add it. A CDN in front of your site, such as Cloudflare, can also block these requests before the cache is consulted. That is set up in the CDN, not here." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:158 msgid "WordPress is refusing crawlers, and your server rules are covering the requests it cannot see." msgstr "" #: src/Audit/Checks/PhpGateCheck.php:159 msgid "A page cache is active, so many visitors never reach WordPress. But your server-level rules block AI crawlers before the cache is consulted, so they are refused either way." msgstr "" #. translators: %d: Number of crawler tokens. #: src/Audit/Checks/PhpGateCheck.php:171 #, php-format msgid "WordPress is refusing %d AI crawler." msgid_plural "WordPress is refusing %d AI crawlers." msgstr[0] "" msgstr[1] "" #: src/Audit/Checks/PhpGateCheck.php:179 msgid "Blocked crawlers get a 403 refusal. No page cache was detected, so requests are reaching WordPress and this layer is doing its job. If you add a caching plugin later, check this screen again." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:63 msgid "robots.txt rules" msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:80 msgid "No robots.txt rules are being published at all. Crawlers see nothing from this plugin." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:91 msgid "We could not work out which folder your site is served from, so we cannot tell what robots.txt is being served." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:92 msgid "If a robots.txt file exists on disk it overrides WordPress entirely, and we cannot check for one without knowing where to look. Your rules may or may not be reaching crawlers." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:93 msgid "Check that the WordPress Address and Site Address in Settings → General match how your site is actually reached, then run this again. Opening /robots.txt in your browser will show you what is really being served." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:103 msgid "WordPress is serving robots.txt, and your AI crawler rules are included in it." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:104 msgid "Crawlers that check robots.txt and choose to obey it will stay away. This is a request, not a barrier. It does not stop a crawler that ignores the rules." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:115 msgid "A robots.txt file exists on disk and your AI crawler rules have been merged into it." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:116 msgid "Crawlers that check robots.txt and choose to obey it will stay away. Because the file is on disk, WordPress does not generate it -- so the plugin rewrites it every time you save." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:126 msgid "A robots.txt file exists on disk and does not contain your AI crawler rules." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:127 msgid "None of your robots.txt rules are reaching crawlers. The web server serves this file directly and never asks WordPress, so the rules shown in your settings are not the rules being published." msgstr "" #: src/Audit/Checks/RobotsTxtCheck.php:128 msgid "Save your choices again. That merges your rules into the existing file, leaving everything already in it untouched." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:73 msgid "What crawlers actually receive at /robots.txt" msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:81 msgid "Your robots.txt could not be fetched, so we cannot show what crawlers receive." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:82 msgid "Some hosts stop a site from requesting its own pages. This does not mean your robots.txt is wrong, only that we could not read it back." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:83 msgid "Open /robots.txt in your browser to see it yourself." msgstr "" #. translators: %d: HTTP status code. #: src/Audit/Checks/ServedRobotsCheck.php:108 #, php-format msgid "Requesting /robots.txt returned %d instead of 200." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:111 msgid "Crawlers cannot read your robots.txt, so none of your rules are reaching them, whatever the settings screen shows." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:112 msgid "Check whether a redirect, security rule or server setting is blocking access to /robots.txt." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:122 msgid "Your robots.txt is being served, but your AI crawler rules are not in it." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:123 msgid "This is what crawlers actually receive, and your rules are missing from it. Something between WordPress and the visitor is replacing the file. Usually that is a robots.txt on disk, a CDN, or a server rule." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:124 msgid "Check whether a robots.txt file exists on disk, and whether a CDN or caching service is serving an older copy." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:134 msgid "This is exactly what crawlers receive at /robots.txt." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:135 msgid "No AI crawler rules are set, so none appear in the file." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:145 msgid "This is exactly what crawlers receive, and your AI rules are in it." msgstr "" #: src/Audit/Checks/ServedRobotsCheck.php:146 msgid "Confirmed by fetching the file the same way a crawler would. Remember this is a request that crawlers can ignore, not a barrier that stops them." msgstr "" #. translators: %s: Comma-separated list of plugin names. #: src/Audit/PageCache.php:135 #, php-format msgid "Caching plugin active: %s" msgstr "" #: src/Audit/PageCache.php:141 msgid "The advanced-cache.php drop-in is installed and enabled, so pages can be served before plugins load." msgstr "" #: src/Audit/PageCache.php:142 msgid "No advanced-cache.php drop-in is installed, so WordPress is not serving pages from a plugin page cache." msgstr "" #: src/Audit/PageCache.php:160 msgid "LiteSpeed Cache is active, but its page cache only works on a LiteSpeed server. This site is not on one, so it is not caching pages." msgstr "" #: src/Audit/PageCache.php:163 msgid "A caching plugin is active but has not installed a page cache, so pages are not being served from a cache." msgstr "" #: src/Audit/Result.php:204 msgid "Asking only" msgstr "" #: src/Audit/Result.php:207 msgid "Not working" msgstr "" #: src/Audit/Result.php:210 msgid "Needs attention" msgstr "" #: src/Audit/Result.php:216 msgid "Cannot tell" msgstr "" #: src/Audit/Result.php:219 msgid "Information" msgstr "" #: src/Badge/Badge.php:121 msgid "Your content is not training data." msgstr "" #: src/Badge/Badge.php:127 msgid "NO AI" msgstr "" #: src/Blackout/AdminUi.php:166 msgid "The AI Connectors screen is switched off by AI Blackout. This is where WordPress stores API keys for AI providers." msgstr "" #: src/Blackout/AdminUi.php:167 msgid "AI Connectors disabled" msgstr "" #: src/Blackout/AdminUi.php:172 msgid "Change this on the AI inside WordPress screen" msgstr "" #: src/Blackout/CallerResolver.php:244 msgid "WordPress core" msgstr "" #: src/Blackout/CallerResolver.php:248 msgid "Unidentified code" msgstr "" #: src/Blackout/Integrations/ElementorAi.php:41 msgid "Elementor" msgstr "" #: src/Blackout/Integrations/ElementorAi.php:50 msgid "Turns off Elementor AI for everyone on the site: the AI buttons in the editor, AI image generation, the AI media library, the AI effects controls, and the \"Create with AI\" banner. Elementor keeps working normally. The AI checkbox stays on each user profile, so nothing is taken away permanently." msgstr "" #: src/Blackout/Integrations/YoastAi.php:48 msgid "Yoast SEO" msgstr "" #: src/Blackout/Integrations/YoastAi.php:57 msgid "Turns off Yoast SEO's AI features: the AI title and description generator, its AI consent prompts, the content planner and the AI suggestions in the bulk editor. Everything else Yoast does is untouched, and your Yoast settings are not changed." msgstr "" #. translators: %s: Host name, for example api.openai.com. #: src/Blackout/OutboundFirewall.php:139 #, php-format msgid "Blocked by AI Blackout: this site does not permit outgoing requests to %s." msgstr "" #: src/Crawlers/Policy.php:175 #: src/Crawlers/Policy.php:226 #: src/Crawlers/Policy.php:271 msgid "That is not a valid crawler policy." msgstr "" #: src/Crawlers/Policy.php:184 msgid "That crawler group is not in the bundled list." msgstr "" #: src/Crawlers/Policy.php:235 msgid "That is not a crawler purpose this plugin recognises." msgstr "" #: src/Crawlers/Policy.php:280 msgid "That crawler is not in the bundled list." msgstr "" #. translators: %s: Crawler user-agent token, e.g. OAI-SearchBot. #: src/Crawlers/Policy.php:327 #, php-format msgid "Blocking %s will reduce where your site appears in search. Confirm you want this before it can be enabled." msgstr "" #: src/Crawlers/UserAgentMatcher.php:143 msgid "The token is too short to identify a crawler reliably and would match ordinary visitors." msgstr "" #: src/Crawlers/UserAgentMatcher.php:153 msgid "The token appears in ordinary browser user agents and would block real visitors." msgstr "" #. translators: %s: Name of a protected crawler, e.g. Googlebot. #: src/Crawlers/UserAgentMatcher.php:165 #, php-format msgid "A rule for this token would also match %s, which this plugin never blocks." msgstr "" #: src/Declarations/ContentSignals.php:161 msgid "No content signals are being published." msgstr "" #: src/Declarations/ContentSignals.php:168 msgid "search engines may index this site" msgstr "" #: src/Declarations/ContentSignals.php:169 msgid "search engines may not index this site" msgstr "" #: src/Declarations/ContentSignals.php:174 msgid "AI systems may use this content to answer questions" msgstr "" #: src/Declarations/ContentSignals.php:175 msgid "AI systems may not use this content to answer questions" msgstr "" #: src/Declarations/ContentSignals.php:180 msgid "this content may be used to train AI models" msgstr "" #: src/Declarations/ContentSignals.php:181 msgid "this content may not be used to train AI models" msgstr "" #: src/Declarations/MetaTags.php:152 msgid "noai and noimageai directives withdrawn." msgstr "" #. translators: %s: Comma-separated directive names. #: src/Declarations/MetaTags.php:155 #, php-format msgid "Publishing the %s directive(s) in page markup and HTTP headers." msgstr "" #: src/Declarations/Tdmrep.php:270 msgid "Text and data mining reservation withdrawn." msgstr "" #: src/Declarations/Tdmrep.php:279 msgid "Reserved text and data mining rights site-wide under EU Directive 2019/790 Article 4." msgstr "" #. translators: 1: Site name, 2: Site host. #: src/Declarations/TermsClause.php:52 #, php-format msgid "Reservation of rights for text and data mining. All content published on %1$s (%2$s) is protected by copyright and related rights. The operator of this website expressly reserves the right to prohibit the use of this content for text and data mining, within the meaning of Article 4(3) of Directive (EU) 2019/790 on copyright and related rights in the Digital Single Market." msgstr "" #: src/Declarations/TermsClause.php:57 msgid "This reservation applies to all automated analysis of this content, including but not limited to the collection, extraction, reproduction, storage or processing of the content for the purpose of training, fine-tuning, evaluating or grounding artificial intelligence or machine learning systems." msgstr "" #: src/Declarations/TermsClause.php:60 msgid "Accessing this website constitutes acceptance of these terms. Permission is not granted to use this content as training data for any artificial intelligence or machine learning model." msgstr "" #: src/Declarations/TermsClause.php:64 msgid "Permission is not granted to supply this content to an artificial intelligence system at the time of a query, including for retrieval-augmented generation, grounding, or the generation of summaries or answers." msgstr "" #: src/Declarations/TermsClause.php:68 msgid "Nothing in this reservation restricts the indexing of this content by a conventional search engine for the purpose of returning links and short excerpts to human readers." msgstr "" #. translators: %s: Absolute URL of the published tdmrep.json file. #: src/Declarations/TermsClause.php:73 #, php-format msgid "These reservations are additionally expressed by machine-readable means at %s and in this website's robots.txt file." msgstr "" #: src/Declarations/TermsClause.php:87 msgid "This is a starting point, not legal advice. It is written to match what this plugin publishes, so the wording and the machine-readable declarations agree with each other. Have a lawyer review it before relying on it, especially outside the EU." msgstr "" #: src/Enforcement/Filesystem.php:95 msgid "WordPress could not work out which folder your site is served from, so this file cannot be found or written safely. This usually means the WordPress Address and Site Address settings do not match how the server actually reaches your site. Nothing has been changed." msgstr "" #: src/Enforcement/Filesystem.php:113 msgid "WordPress cannot write files directly on this host, so this file cannot be updated automatically. Copy the block below and add it to the file yourself." msgstr "" #: src/Enforcement/Htaccess.php:250 msgid "There are no crawlers set to block, so there is nothing to write." msgstr "" #. translators: %s: Absolute file path. #: src/Enforcement/Htaccess.php:277 #, php-format msgid "The file %s is not writable, so the .htaccess layer is not active. Your robots.txt and PHP layers are still working, but requests served from a page cache are not being blocked." msgstr "" #. translators: %s: Absolute directory path. #: src/Enforcement/Htaccess.php:289 #, php-format msgid "The directory %s is not writable, so an .htaccess file cannot be created. The .htaccess layer is not active." msgstr "" #: src/Enforcement/Htaccess.php:305 msgid "Writing to .htaccess failed. The .htaccess layer is not active." msgstr "" #: src/Enforcement/Htaccess.php:332 msgid "There is no .htaccess file, so there was nothing to remove." msgstr "" #: src/Enforcement/Htaccess.php:339 msgid "The AI Blackout block is not in .htaccess, so there was nothing to remove." msgstr "" #. translators: %s: Absolute file path. #: src/Enforcement/Htaccess.php:348 #, php-format msgid "The file %s could not be written, so the block was not removed. It is still in place and still blocking. Delete the lines between the AI Blackout markers by hand to remove it." msgstr "" #. translators: %s: Absolute file path. #: src/Enforcement/Htaccess.php:366 #, php-format msgid "The AI Blackout rules were removed, but the empty %s file it created could not be deleted. Nothing is being blocked by it. Delete the file by hand to finish clearing up." msgstr "" #: src/Enforcement/Htaccess.php:376 msgid "The AI Blackout block was removed, and the .htaccess file was deleted because your site did not have one before AI Blackout created it." msgstr "" #: src/Enforcement/Htaccess.php:390 msgid "Removing the block from .htaccess failed. It is still in place." msgstr "" #: src/Enforcement/Htaccess.php:401 msgid "The AI Blackout block was removed and .htaccess is byte-for-byte what it was before." msgstr "" #: src/Enforcement/Htaccess.php:402 #: src/Enforcement/RobotsTxt.php:338 msgid "The AI Blackout block was removed. The file does not exactly match the backup taken before the first write, because it was edited outside the markers in the meantime. Those edits have been kept." msgstr "" #: src/Enforcement/PhpGate.php:160 msgid "This site does not permit AI crawling. Your content is not training data." msgstr "" #: src/Enforcement/RobotsTxt.php:241 msgid "There is no robots.txt file to merge into. WordPress is serving a virtual one, which this plugin already controls." msgstr "" #. translators: %s: Absolute file path. #: src/Enforcement/RobotsTxt.php:250 #, php-format msgid "The file %s could not be written, so the rules were not added. Your robots.txt rules are not live. Fix the file permissions, or paste the block in yourself." msgstr "" #: src/Enforcement/RobotsTxt.php:262 msgid "Writing to robots.txt failed. Your robots.txt rules are not live." msgstr "" #: src/Enforcement/RobotsTxt.php:287 msgid "There is no robots.txt file, so there was nothing to remove." msgstr "" #. translators: %s: Absolute file path. #: src/Enforcement/RobotsTxt.php:296 #, php-format msgid "The file %s could not be written, so the block was not removed. It is still in place. Delete the lines between the AI Blackout markers by hand to remove it." msgstr "" #: src/Enforcement/RobotsTxt.php:307 msgid "The AI Blackout block is not in robots.txt, so there was nothing to remove." msgstr "" #: src/Enforcement/RobotsTxt.php:325 msgid "Removing the block from robots.txt failed. It is still in place." msgstr "" #: src/Enforcement/RobotsTxt.php:337 msgid "The AI Blackout block was removed and robots.txt is byte-for-byte what it was before." msgstr "" #. translators: %s: Apache version string, such as 2.2.34. #: src/Enforcement/ServerProfile.php:165 #, php-format msgid "Your site runs Apache %s. The .htaccess rules this plugin writes need Apache 2.4, so that layer has been switched off here rather than writing rules that would block nothing." msgstr "" #: src/Enforcement/ServerProfile.php:170 msgid "Your site runs on Apache, so the .htaccess layer works here." msgstr "" #: src/Enforcement/ServerProfile.php:173 msgid "Your site runs on LiteSpeed, which reads .htaccess, so that layer works here." msgstr "" #: src/Enforcement/ServerProfile.php:176 msgid "Your site runs on nginx, which does not read .htaccess. Use the nginx snippet instead. A plugin cannot write nginx configuration." msgstr "" #: src/Enforcement/ServerProfile.php:179 msgid "Your server did not identify itself, so the .htaccess layer has been switched off rather than reporting protection that may not exist." msgstr ""