{"id":381885,"date":"2026-10-11T11:55:49","date_gmt":"2026-10-11T11:55:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/errorhandle\/"},"modified":"2026-10-12T12:20:35","modified_gmt":"2026-10-12T12:20:35","slug":"errorhandle","status":"publish","type":"plugin","link":"https:\/\/es-pr.wordpress.org\/plugins\/errorhandle\/","author":23580909,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.2.9","stable_tag":"0.2.9","tested":"7.1.3","requires":"6.9","requires_php":"8.1","requires_plugins":null,"header_name":"errorHandle","header_author":"errorHandle LLC","header_description":"Tell WordPress what you want it to do. Describe an outcome in plain English; errorHandle designs a safe automation, explains it, tests it, and \u2014 once you approve \u2014 runs it as ordinary PHP with no further AI calls.","assets_banners_color":"4b455a","last_updated":"2026-10-12 12:20:35","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/errorhandle.com\/errorhandle\/","header_author_uri":"https:\/\/errorhandle.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":133,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.2.0":{"tag":"0.2.0","author":"errorhandle","date":"2026-10-11 13:00:56","revision":3739505},"0.2.1":{"tag":"0.2.1","author":"errorhandle","date":"2026-10-11 16:29:12","revision":3739787},"0.2.2":{"tag":"0.2.2","author":"errorhandle","date":"2026-10-11 17:33:34","revision":3739881},"0.2.3":{"tag":"0.2.3","author":"errorhandle","date":"2026-10-11 20:09:04","revision":3740060},"0.2.4":{"tag":"0.2.4","author":"errorhandle","date":"2026-10-11 20:54:39","revision":3740122},"0.2.5":{"tag":"0.2.5","author":"errorhandle","date":"2026-10-11 23:16:26","revision":3740267},"0.2.6":{"tag":"0.2.6","author":"errorhandle","date":"2026-10-11 23:58:39","revision":3740282},"0.2.7":{"tag":"0.2.7","author":"errorhandle","date":"2026-10-12 00:52:58","revision":3740315},"0.2.8":{"tag":"0.2.8","author":"errorhandle","date":"2026-10-12 01:15:02","revision":3740333},"0.2.9":{"tag":"0.2.9","author":"errorhandle","date":"2026-10-12 12:20:35","revision":3741469}},"upgrade_notice":{"0.2.9":"<p>Health checks now show what they found, not just how many things. Worth\nupdating if you use the site checks.<\/p>","0.2.8":"<p>You can now ask errorHandle what is wrong with your site, not only tell\nit what to change. Looking is free and changes nothing.<\/p>","0.2.7":"<p>Pro now shows when your credits refresh, and a stale balance after the\nmonth turned is fixed.<\/p>","0.2.6":"<p>Fixes the Upgrade button, which did not open the payment page in 0.2.5.\nUpdate if you intend to subscribe.<\/p>","0.2.5":"<p>errorHandle Pro is now available at $9 a month, and a new Health screen\nchecks your site for free. Nothing that was free has become paid.<\/p>","0.2.4":"<p>Plainer wording and a much shorter preview. The buttons are now Preview\nchanges, Test changes and Approve changes. Nothing errorHandle can do has\nchanged, and no setting needs revisiting.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3739447,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3739447,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3739474,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3739474,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","0.2.5","0.2.6","0.2.7","0.2.8","0.2.9"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3740124,"resolution":"1","location":"assets","locale":"","width":1280,"height":795},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3740124,"resolution":"2","location":"assets","locale":"","width":1280,"height":1305},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3740124,"resolution":"3","location":"assets","locale":"","width":1280,"height":720},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3740124,"resolution":"4","location":"assets","locale":"","width":1280,"height":720},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3740124,"resolution":"5","location":"assets","locale":"","width":1280,"height":720},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3740124,"resolution":"6","location":"assets","locale":"","width":1280,"height":1119},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3740124,"resolution":"7","location":"assets","locale":"","width":1280,"height":2769}},"screenshots":{"1":"Ask in your own words. No menus to learn, no code to write.","2":"Before anything happens: how many pages are affected, what the change is,\nand what it will leave alone.","3":"Approve when you are ready \u2014 or test it first. Nothing moves before this.","4":"Done, checked, and undoable in one click.","5":"Creating a page works the same way, and it tells you what to check.","6":"Set up a job once and it runs by itself \u2014 free, because automations never\nuse AI.","7":"Every change errorHandle has made, with undo next to each one."}},"plugin_section":[],"plugin_tags":[2353,569,529,201155,286],"plugin_category":[45],"plugin_contributors":[285796],"plugin_business_model":[],"class_list":["post-381885","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-automation","plugin_tags-content","plugin_tags-no-code","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-errorhandle","plugin_committers-errorhandle"],"banners":{"banner":"https:\/\/ps.w.org\/errorhandle\/assets\/banner-772x250.png?rev=3739474","banner_2x":"https:\/\/ps.w.org\/errorhandle\/assets\/banner-1544x500.png?rev=3739474","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/errorhandle\/assets\/icon-128x128.png?rev=3739447","icon_2x":"https:\/\/ps.w.org\/errorhandle\/assets\/icon-256x256.png?rev=3739447","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-1.png?rev=3740124","caption":"Ask in your own words. No menus to learn, no code to write."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-2.png?rev=3740124","caption":"Before anything happens: how many pages are affected, what the change is,\nand what it will leave alone."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-3.png?rev=3740124","caption":"Approve when you are ready \u2014 or test it first. Nothing moves before this."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-4.png?rev=3740124","caption":"Done, checked, and undoable in one click."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-5.png?rev=3740124","caption":"Creating a page works the same way, and it tells you what to check."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-6.png?rev=3740124","caption":"Set up a job once and it runs by itself \u2014 free, because automations never\nuse AI."},{"src":"https:\/\/ps.w.org\/errorhandle\/assets\/screenshot-7.png?rev=3740124","caption":"Every change errorHandle has made, with undo next to each one."}],"raw_content":"<!--section=description-->\n<p><strong>Tell errorHandle what is wrong with your website.<\/strong> It looks for the\nproblem, explains what it found in plain English, and \u2014 where it can \u2014 offers\nto fix it. Nothing is changed until you say so.<\/p>\n\n<p>You can also just tell it what you want done. Both work the same way: you\nsee the plan, you approve it, and it checks the result afterwards.<\/p>\n\n<p>No code. No page builder. No support ticket.<\/p>\n\n<h4>Ask \u2192 Preview \u2192 Approve \u2192 Done<\/h4>\n\n<p><strong>1. Ask.<\/strong> <em>\"Change our phone number to 020 7946 0100 everywhere.\"<\/em><\/p>\n\n<p><strong>2. Preview.<\/strong> Every page affected, with the exact before and after.<\/p>\n\n<p><strong>3. Approve.<\/strong> One click. Nothing moves before it.<\/p>\n\n<p><strong>4. Done.<\/strong> It checks the change worked \u2014 and you can undo it.<\/p>\n\n<h4>Problems you can hand it<\/h4>\n\n<ul>\n<li><em>\"My website is slow. What is causing it?\"<\/em><\/li>\n<li><em>\"Something is wrong with my website. Find the problem.\"<\/em><\/li>\n<li><em>\"Check my website's health and explain what needs attention.\"<\/em><\/li>\n<li><em>\"Find unnecessary data that is slowing down my website.\"<\/em><\/li>\n<li><em>\"Check for problems before they affect visitors.\"<\/em><\/li>\n<\/ul>\n\n<p>errorHandle looks over your site \u2014 updates, unsupported PHP, scheduled\njobs that stopped running, plugins no longer maintained, debug settings\nleft switched on, and data being loaded on every single page \u2014 and tells\nyou what it found, with the numbers behind each one. <strong>Looking costs\nnothing and changes nothing.<\/strong><\/p>\n\n<p>Some findings come with a fix it can carry out for you, which you approve\nseparately, and which it checks afterwards.<\/p>\n\n<h4>Changes you can ask for<\/h4>\n\n<ul>\n<li><em>\"Create a draft page called Returns Policy with our 30-day policy.\"<\/em><\/li>\n<li><em>\"Change our phone number to 020 7946 0100 everywhere it appears.\"<\/em><\/li>\n<li><em>\"Fix the typo 'recieve' on the Contact page.\"<\/em><\/li>\n<li><em>\"Publish the About page.\"<\/em><\/li>\n<li><em>\"Replace 'Call us today' with 'Schedule a consultation' across the site.\"<\/em><\/li>\n<li><em>\"When a new customer registers, email me their name and address.\"<\/em><\/li>\n<\/ul>\n\n<p>One sentence can correct every page at once. The last one becomes an\nautomation that then runs by itself, free, forever.<\/p>\n\n<h4>Why people keep it<\/h4>\n\n<ul>\n<li><strong>You stay in control.<\/strong> Every change is previewed and approved by you \u2014\nnever applied behind your back.<\/li>\n<li><strong>It tells you the truth.<\/strong> Afterwards it reads the change back and\nreports done, partly applied, or failed. Never a success it cannot\nconfirm.<\/li>\n<li><strong>Mistakes are reversible.<\/strong> Undo from History, and the preview warns you\nfirst about anything that cannot be undone.<\/li>\n<li><strong>Automations cost nothing to run.<\/strong> AI is used only while you build.<\/li>\n<\/ul>\n\n<h4>10 free AI commands<\/h4>\n\n<p><strong>3 straight away<\/strong> \u2014 no account, no email, no card. <strong>7 more<\/strong> when you\nconfirm an email address. Ten in total for that site, for good.<\/p>\n\n<p>When they run out, everything you have built keeps working: automations,\nhistory and undo never use AI. Only new AI planning pauses \u2014 and you can\ncarry on free with your own API key, or with the offline planner.<\/p>\n\n<h4>What it will not do<\/h4>\n\n<p>No code of any kind \u2014 no CSS, JavaScript, PHP or HTML, and no setting that\nturns that on. No changes to your server, theme, plugin files or site\nsettings. And no phoning home: a fresh install makes no external request at\nall until you choose an AI option.<\/p>\n\n<h4>errorHandle Pro<\/h4>\n\n<p>If the ten free commands are not enough, <strong>Pro is $9 a month or $90 a\nyear<\/strong> and gives you 300 credits a month with no API key to manage.<\/p>\n\n<p>A credit is one thing you asked for and applied \u2014 everything errorHandle\ndoes today costs one credit. More involved work we are building, such as\ninvestigating a problem across your whole site, will use more, and\nerrorHandle always tells you the cost before it starts.<\/p>\n\n<p>Buy and cancel it from inside your own dashboard; payment is handled by\nStripe and errorHandle never sees your card. <strong>Nothing that is free today\nbecomes paid<\/strong>, and the plugin will not interrupt you to sell anything.<\/p>\n\n<h3>Who makes this<\/h3>\n\n<p>errorHandle is developed and operated by <strong>errorHandle LLC<\/strong> \u2014\nhttps:\/\/errorhandle.com\/<\/p>\n\n<p>Two things carry the errorHandle name, under two different licences:<\/p>\n\n<ul>\n<li><p><strong>This plugin<\/strong> is Copyright \u00a9 2026 errorHandle LLC, licensed under the\n<strong>GNU General Public License, version 2 or later<\/strong>. You may use, study,\nmodify and redistribute it, including commercially. Those rights are\ngranted to you and are not withdrawn by anything on this page or on our\nwebsite. The full licence ships in <code>LICENSE<\/code>.<\/p><\/li>\n<li><p><strong>The errorHandle hosted AI service<\/strong> \u2014 the optional service supplying AI\nat wp.errorhandle.com, including the free allowance \u2014 is a separate,\nproprietary service. \u00a9 2026 errorHandle LLC. All rights reserved. Nothing\nabout it limits your rights to the plugin, and the plugin works fully\nwithout it.<\/p><\/li>\n<\/ul>\n\n<p>The plugin bundles no third-party code \u2014 no libraries, frameworks or\nvendored dependencies \u2014 so there is nothing beyond the GPL to attribute.<\/p>\n\n<h3>External services<\/h3>\n\n<p>errorHandle contacts an external service <strong>only when you have explicitly\nchosen one.<\/strong> On first run it asks, and nothing is contacted until you\nanswer. The default is the offline planner, which contacts nothing.<\/p>\n\n<h4>errorHandle AI (optional)<\/h4>\n\n<p>Uses errorHandle's hosted service at wp.errorhandle.com. You are shown what\nis sent and must press a button to agree.<\/p>\n\n<p>At registration it receives your site's address and your WordPress, PHP and\nplugin versions, then asks your site to publish a single-use token at one\npublic URL to prove the site is yours. For each request it receives the text\nyou typed plus the site summary listed below, and forwards them to\n<strong>Anthropic<\/strong>, which generates the plan.<\/p>\n\n<p>It records how many commands you have used and approximate token counts. It\ndoes not keep your requests, your content, your users or your IP address. A\nconfirmed email address is stored hashed and encrypted, and the confirmation\nemail is sent through <strong>Microsoft Graph<\/strong>.<\/p>\n\n<p>Terms: https:\/\/errorhandle.com\/wp-errorhandle-terms\/\nPrivacy: https:\/\/errorhandle.com\/wp-errorhandle-privacy\/<\/p>\n\n<h4>Your own AI provider (optional)<\/h4>\n\n<p>With your own key, or with WordPress AI, requests go directly from your\nserver to that provider. errorHandle is not involved and receives nothing.<\/p>\n\n<ul>\n<li><strong>Anthropic<\/strong> \u2014 api.anthropic.com \u2014\nTerms: https:\/\/www.anthropic.com\/legal\/consumer-terms \u2014\nPrivacy: https:\/\/www.anthropic.com\/legal\/privacy<\/li>\n<li><strong>OpenAI<\/strong> \u2014 api.openai.com \u2014\nTerms: https:\/\/openai.com\/policies\/terms-of-use \u2014\nPrivacy: https:\/\/openai.com\/policies\/privacy-policy<\/li>\n<li><strong>Google Gemini<\/strong> \u2014 generativelanguage.googleapis.com \u2014\nTerms: https:\/\/ai.google.dev\/gemini-api\/terms \u2014\nPrivacy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h4>What a provider receives<\/h4>\n\n<p>Whichever you choose, the provider receives:<\/p>\n\n<ul>\n<li>the text of the request you typed<\/li>\n<li>the list of operations your site supports \u2014 names and descriptions, not\nyour data<\/li>\n<li>a technical summary of your site: WordPress and PHP versions, active theme\nname, whether WooCommerce or Elementor are active, counts of posts and\npages, public post type names, timezone and currency code<\/li>\n<li>the titles and IDs of a few pages that look relevant to your request<\/li>\n<\/ul>\n\n<p>It does <strong>not<\/strong> receive post or page content, customer records, orders, user\naccounts, email addresses, passwords, API keys, or anything about your\nvisitors.<\/p>\n\n<h4>Every host this plugin can contact<\/h4>\n\n<p>Four, and no others:<\/p>\n\n<ul>\n<li>api.anthropic.com \u2014 only with your own Anthropic key<\/li>\n<li>api.openai.com \u2014 only with your own OpenAI key<\/li>\n<li>generativelanguage.googleapis.com \u2014 only with your own Google key<\/li>\n<li>wp.errorhandle.com \u2014 only after you choose errorHandle AI<\/li>\n<\/ul>\n\n<p>Plus any address <strong>you<\/strong> enter yourself in a webhook or fetch action.<\/p>\n\n<p>Other hostnames appear in the source and none is ever contacted: links shown\nfor you to click, a blocklist of private and cloud-metadata addresses that\noutbound requests are refused for, and a list of host-preview and\ndevelopment-tunnel suffixes used to recognise a throwaway copy of a site so\nit cannot claim a second free trial. errorHandle holds no credentials for\nthose services and makes no request to any of them.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>Everything the plugin stores stays in your own WordPress database: your\nrequests and the plans they produced, execution history, applied changes and\ntheir undo data, your automations, and your encrypted provider credentials.<\/p>\n\n<p>What leaves your site depends entirely on which AI option you chose, and is\nset out in full under <strong>External services<\/strong> above. With the offline planner,\nnothing leaves at all. With your own key or WordPress AI, errorHandle is not\nin the path. With errorHandle AI, the hosted service counts your commands and\nforwards your request to Anthropic; it does not keep your requests, your page\ncontent, your users or your IP address.<\/p>\n\n<p>Uninstalling removes the plugin's data from your WordPress database. It does\nnot delete the record on our side of how many free commands a site has used,\nbecause that record is what stops a reinstall granting another ten.<\/p>\n\n<p>Full policy: https:\/\/errorhandle.com\/wp-errorhandle-privacy\/<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install from <strong>Plugins \u2192 Add New<\/strong>, or upload the ZIP.<\/li>\n<li>Activate it.<\/li>\n<li>Open <strong>errorHandle<\/strong> and choose how to power it.<\/li>\n<\/ol>\n\n<p>Step 3 is where you pick errorHandle AI, your own API key, or the offline\nplanner \u2014 <strong>nothing is sent anywhere until you make that choice.<\/strong><\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20to%20know%20how%20to%20code%3F\"><h3>Do I need to know how to code?<\/h3><\/dt>\n<dd><p>No. That is the point. You describe the outcome in ordinary English and\napprove the plan errorHandle shows you.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20pay%20for%20ai%3F\"><h3>Do I need to pay for AI?<\/h3><\/dt>\n<dd><p>No. A new install comes with ten free AI commands \u2014 three immediately, seven\nafter confirming an email address \u2014 needing no account and no card. After\nthose you can connect your own provider key, which errorHandle does not\nmeter, or use the offline planner, which contacts nothing. See \"How is the\nAI powered\" below.<\/p><\/dd>\n<dt id=\"will%20this%20run%20up%20an%20ai%20bill%3F\"><h3>Will this run up an AI bill?<\/h3><\/dt>\n<dd><p>Only when you ask it to build something, and only against your own provider\naccount. Running an automation never contacts an AI service, so the cost does\nnot grow with your traffic. Identical requests are cached for 24 hours, and\nSettings shows your monthly usage.<\/p>\n\n<p>A consumer ChatGPT, Claude or Gemini subscription does not include API\naccess \u2014 that is billed separately by the provider.<\/p><\/dd>\n<dt id=\"how%20is%20the%20ai%20powered%2C%20and%20do%20i%20need%20an%20api%20key%3F\"><h3>How is the AI powered, and do I need an API key?<\/h3><\/dt>\n<dd><p>Four ways, and you choose on first run. <strong>Nothing is sent anywhere until you\ndo.<\/strong><\/p>\n\n<ol>\n<li><strong>errorHandle AI<\/strong> \u2014 the ten free commands above. Opt in with a button.<\/li>\n<li><strong>WordPress AI<\/strong> \u2014 recommended on WordPress 7.0+. Your site holds the\nkey; errorHandle never sees or stores one.<\/li>\n<li><strong>Your own API key<\/strong> \u2014 Anthropic, OpenAI or Google Gemini. Requests go\nstraight from your server to your provider, and <strong>errorHandle does not\ncount or cap them.<\/strong><\/li>\n<li><strong>The offline planner<\/strong> \u2014 runs on your server and contacts nothing at\nall. It recognises common request shapes rather than free-form\ndescription.<\/li>\n<\/ol><\/dd>\n<dt id=\"what%20happens%20when%20my%20pro%20credits%20run%20out%3F\"><h3>What happens when my Pro credits run out?<\/h3><\/dt>\n<dd><p>AI planning pauses until your next monthly refresh, and that is all.\nYour subscription carries on, nothing is cancelled, and you are not\ncharged again for the refresh. Everything you have already built keeps\nworking, because automations, history and undo never use AI \u2014 and you\ncan carry on creating immediately with your own API key, which\nerrorHandle does not meter.<\/p>\n\n<p>Both plans refresh monthly. An annual subscription is billed once a year\nbut still gives you 300 credits every month; unused credits do not carry\nover to the next month.<\/p><\/dd>\n<dt id=\"can%20i%20undo%20a%20change%3F\"><h3>Can I undo a change?<\/h3><\/dt>\n<dd><p>Yes, for anything reversible, from the History screen. The preview tells you\nup front when something cannot be undone \u2014 sending an email, for example.<\/p><\/dd>\n<dt id=\"what%20exactly%20can%20it%20change%3F\"><h3>What exactly can it change?<\/h3><\/dt>\n<dd><p>Your pages and posts \u2014 create, edit wording, replace text across the site,\npublish and unpublish. Your automations. Emails and webhooks you ask it to\nsend. With WooCommerce: order notes, order status and order custom fields.\nIt does not change site settings, themes, plugins or files.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20change%20does%20not%20work%3F\"><h3>What happens if a change does not work?<\/h3><\/dt>\n<dd><p>It says so. After applying, the change is verified independently and reported\nas done, partly applied, or failed \u2014 never as a success it cannot confirm.<\/p><\/dd>\n<dt id=\"can%20i%20paste%20in%20code%20i%20found%20online%3F\"><h3>Can I paste in code I found online?<\/h3><\/dt>\n<dd><p>No. errorHandle does not store or run CSS, JavaScript, PHP or raw HTML, and\nthere is no setting that enables it. Every action it can take is a defined,\nreviewable operation on your content, automations or WooCommerce orders.<\/p><\/dd>\n<dt id=\"can%20it%20change%20my%20server%20configuration%3F\"><h3>Can it change my server configuration?<\/h3><\/dt>\n<dd><p>No, and it will tell you so. Requests about nginx, Apache, <code>.htaccess<\/code>,\n    php.ini, DNS, Cloudflare, SSH or file permissions are recognised and\ndeclined with an explanation of who can help.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%3F\"><h3>Does it work with WooCommerce?<\/h3><\/dt>\n<dd><p>Yes, when WooCommerce is active: order triggers, order notes, order custom\nfields and order status changes become available. Without WooCommerce they\nreport themselves unavailable rather than silently disappearing.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20elementor%3F\"><h3>Does it work with Elementor?<\/h3><\/dt>\n<dd><p>Partly, and honestly. Elementor stores content in its own format, and writing\nto it incorrectly would corrupt the page \u2014 so errorHandle detects Elementor\npages and declines in-content text editing rather than pretending. Everything\nelse, including automations and WooCommerce actions, works normally.<\/p><\/dd>\n<dt id=\"who%20can%20use%20it%3F\"><h3>Who can use it?<\/h3><\/dt>\n<dd><p>Administrators only. Every screen and every endpoint requires the\n    manage_options capability.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.9<\/h4>\n\n<p>A check now tells you what it found.<\/p>\n\n<ul>\n<li><strong>Findings are listed, not just counted.<\/strong> 0.2.8 would say \"found 2\nsmaller notes\" and never say what they were, which is the one thing\nyou asked. Each finding now shows how serious it is, what it is, what\nit means, the measurements behind it, and whether errorHandle can fix\nit for you.<\/li>\n<li>Severity is written as a word \u2014 Serious, Worth attention, Minor,\nFine \u2014 as well as shown in colour, so it reads the same for everyone.<\/li>\n<li><strong>No more \"Undo this\" after a check that changed nothing.<\/strong> The button\nnow appears only when there is genuinely something to undo.<\/li>\n<li>The Ask screen invites a problem as readily as a change.<\/li>\n<\/ul>\n\n<h4>0.2.8<\/h4>\n\n<p>You can now tell errorHandle what is <em>wrong<\/em>, not only what to change.<\/p>\n\n<ul>\n<li><strong>\"My website is slow. What is causing it?\"<\/strong> now works. So does\n\"something is wrong, find the problem\" and \"check my site's health\".\nerrorHandle investigates and reports what it found.<\/li>\n<li>The health checks existed in 0.2.5 but only behind a Health tab you\nhad to know to open \u2014 no use to someone who does not know what is\nwrong and therefore does not know where to look. They are now on the\nend of a sentence.<\/li>\n<li>Asking about speed gets an answer about speed. Asking about security\ngets an answer about security.<\/li>\n<li><strong>Looking changes nothing and costs no credits<\/strong>, so you can ask as\noften as you like, even on an exhausted trial.<\/li>\n<\/ul>\n\n<h4>0.2.7<\/h4>\n\n<p>Clearer credits, and a fix to when they appeared to refresh.<\/p>\n\n<ul>\n<li><strong>Pro now shows when your credits refresh<\/strong>, by name: \"Pro \u2014 258\ncredits left this month. Your 300 credits refresh on 14 November.\"<\/li>\n<li><strong>Running out is explained properly.<\/strong> You get 300 more on a named\ndate, your subscription is not affected, nothing is cancelled, and you\nare not charged again for the refresh.<\/li>\n<li><strong>Fixed a stale balance.<\/strong> The monthly refresh only happened when you\nnext ran a command, so after the month turned the plugin could still\nshow nothing left until you tried to use it. The refresh was real; the\nnumber on screen was out of date. Reading your balance now gives the\nsame answer as spending from it.<\/li>\n<li>A trial shows no refresh date, because ten commands are for the\nlifetime of the site rather than a monthly allowance.<\/li>\n<\/ul>\n\n<h4>0.2.6<\/h4>\n\n<p>Fixes the Upgrade button, which did not work in 0.2.5.<\/p>\n\n<ul>\n<li><strong>The Upgrade and Manage subscription buttons sent you to the wrong\nplace.<\/strong> The plugin was handing the browser the address of its own API\ninstead of the Stripe page, so pressing Upgrade appeared to do nothing.\nFound by running the whole purchase on a real site rather than trusting\nthat the request succeeded \u2014 it did succeed; the answer was simply read\nwrongly.<\/li>\n<li>The allowance now reports credits, so a Pro site reads \"258 credits left\nthis month\" rather than counting in free commands it no longer has.<\/li>\n<\/ul>\n\n<h4>0.2.5<\/h4>\n\n<p>errorHandle Pro is available.<\/p>\n\n<ul>\n<li><strong>Pro: $9 a month or $90 a year<\/strong>, for 300 credits a month with no API\nkey to manage. Buy it, and cancel it, from your own dashboard \u2014 payment\nis handled by Stripe and errorHandle never sees your card.<\/li>\n<li>A credit is one thing you asked for and applied. Everything errorHandle\ndoes today costs one credit; more involved work will cost more, and you\nare always told before it starts.<\/li>\n<li><strong>Nothing that was free has become paid.<\/strong> The ten free commands, your\nown API key with no metering, the offline planner and every capability\nare exactly as they were.<\/li>\n<li>Added a Health screen: nine read-only checks over your site \u2014 updates,\nunsupported PHP, overdue scheduled tasks, unmaintained plugins, debug\nsettings left on, and data loading on every page. Scans are free, make\nno external request, and never cost a credit.<\/li>\n<li>Two repairs you can approve from a finding: stop an oversized leftover\nsetting loading on every page (exactly reversible), and clear expired\ntemporary data (which cannot be undone, and says so).<\/li>\n<\/ul>\n\n<h4>0.2.4<\/h4>\n\n<p>Plainer wording and a shorter preview, for people who do not think in\nWordPress terms.<\/p>\n\n<ul>\n<li>The Ask screen now says <strong>\"What would you like errorHandle to do?\"<\/strong> and\nexplains what happens next: errorHandle shows you the plan and asks for\nyour approval.<\/li>\n<li>The buttons say what they do: <strong>Preview changes<\/strong>, <strong>Test changes<\/strong>,\n<strong>Approve changes<\/strong>. \"Build it\", \"Test it\" and \"Apply\" are gone.<\/li>\n<li><strong>A much shorter preview.<\/strong> It leads with how many pages are affected and\nwhat the change actually is. The page-by-page list \u2014 eleven rows for an\neleven-page change \u2014 now folds behind \"Show all 11 pages this affects\".\nNothing is hidden from you; it is one click away, and warnings are still\nshown in full and never folded.<\/li>\n<li><strong>The Ask box empties once a request has been applied<\/strong>, so the next one\nstarts clean. A draft you have typed but not submitted, or a plan you have\npreviewed or tested but not approved, is left exactly as you left it.<\/li>\n<li>Rewrote the plugin description around what errorHandle actually does for\nyou: Ask, Preview, Approve, Done, with real examples. It is about 40%\nshorter, and the technical detail about AI providers moved into the FAQ.<\/li>\n<li>New screenshots following one real change from request to result.<\/li>\n<li><strong>Correction:<\/strong> the previous description said errorHandle could change\nsite \"settings\". It cannot, and never could \u2014 there is no such operation.\nThe FAQ now lists exactly what it can change.<\/li>\n<\/ul>\n\n<h4>0.2.3<\/h4>\n\n<p>Ownership and licensing, stated plainly. No functional change.<\/p>\n\n<ul>\n<li>errorHandle is developed and operated by <strong>errorHandle LLC<\/strong>. The plugin\nheader, this readme, the website and the portal now say so consistently.<\/li>\n<li>Added the standard GPL copyright notice to the plugin file, which was\nmissing.<\/li>\n<li>A new \"Who makes this\" section separates the two things that carry the\nerrorHandle name: <strong>this plugin is GPLv2-or-later and always will be<\/strong>,\nand the optional hosted AI service is a separate proprietary service.\nNothing about the service limits your rights to the plugin.<\/li>\n<li>No \"all rights reserved\" notice appears on the plugin, and none will.\nUnder the GPL those rights are granted to you, not reserved.<\/li>\n<\/ul>\n\n<h4>0.2.2<\/h4>\n\n<ul>\n<li>Fixed a privacy label that could call a reused plan \"cached\" when it had\nbeen generated fresh, and vice versa.<\/li>\n<li>Clearer wording throughout the approval and simulation screens.<\/li>\n<\/ul>\n\n<h4>0.2.1<\/h4>\n\n<ul>\n<li>Simplified the whole interface for non-technical administrators.<\/li>\n<li>Fixed the Ask box not clearing after a request was submitted.<\/li>\n<li>Proper mobile layout for every screen.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>First public release on WordPress.org.<\/li>\n<li>Removed the ability to store or run CSS and JavaScript, along with several\nother changes requested in plugin review.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial private beta.<\/li>\n<\/ul>","raw_excerpt":"Tell errorHandle what is wrong with your site. It finds the problem, explains it, and fixes it with your approval.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/381885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=381885"}],"author":[{"embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/errorhandle"}],"wp:attachment":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=381885"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=381885"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=381885"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=381885"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=381885"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=381885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}