{"id":324178,"date":"2026-06-17T08:34:44","date_gmt":"2026-06-17T08:34:44","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/coretex-seo\/"},"modified":"2026-09-25T04:52:39","modified_gmt":"2026-09-25T04:52:39","slug":"coretex-seo","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/coretex-seo\/","author":23513894,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"5.1.0","stable_tag":"trunk","tested":"7.1.2","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Coretex SEO","header_author":"Coretex SEO","header_description":"The SEO operating system for WordPress with AI providers, human approval, title scan, meta scan, spell check, and admin settings.","assets_banners_color":"f6f5fc","last_updated":"2026-09-25 04:52:39","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/coretex-seo.co.uk\/","header_author_uri":"https:\/\/coretex-seo.co.uk\/","rating":5,"author_block_rating":0,"active_installs":0,"downloads":1242,"num_ratings":2,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"5.1.0":"<p>The GEO health checklist, keyword research and AI article writer now live in the separate Coretex SEO Agency add-on \u2014 install it to keep using them. Your existing data is preserved either way.<\/p>","5.0.0":"<p>No licence key is needed any more. If you were using rank tracking, competitor analysis, client reports or advanced GEO generation, those features now live in the separate Coretex SEO Agency add-on \u2014 install it to keep them. Your existing data is preserved either way.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":2},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3661455,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3661455,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3661455,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3661455,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3680818,"resolution":"1","location":"assets","locale":"","width":1371,"height":653},"screenshot-10.jpg":{"filename":"screenshot-10.jpg","revision":3680818,"resolution":"10","location":"assets","locale":"","width":1064,"height":637},"screenshot-12.jpg":{"filename":"screenshot-12.jpg","revision":3680818,"resolution":"12","location":"assets","locale":"","width":1080,"height":782},"screenshot-13.jpg":{"filename":"screenshot-13.jpg","revision":3680818,"resolution":"13","location":"assets","locale":"","width":1063,"height":301},"screenshot-14.jpg":{"filename":"screenshot-14.jpg","revision":3680818,"resolution":"14","location":"assets","locale":"","width":1063,"height":297},"screenshot-15.jpg":{"filename":"screenshot-15.jpg","revision":3680818,"resolution":"15","location":"assets","locale":"","width":1066,"height":416},"screenshot-16.jpg":{"filename":"screenshot-16.jpg","revision":3680818,"resolution":"16","location":"assets","locale":"","width":1071,"height":323},"screenshot-17.jpg":{"filename":"screenshot-17.jpg","revision":3680818,"resolution":"17","location":"assets","locale":"","width":1052,"height":590},"screenshot-18.jpg":{"filename":"screenshot-18.jpg","revision":3680818,"resolution":"18","location":"assets","locale":"","width":1106,"height":702},"screenshot-19.jpg":{"filename":"screenshot-19.jpg","revision":3680818,"resolution":"19","location":"assets","locale":"","width":1002,"height":279},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3680818,"resolution":"2","location":"assets","locale":"","width":1105,"height":823},"screenshot-20.jpg":{"filename":"screenshot-20.jpg","revision":3680818,"resolution":"20","location":"assets","locale":"","width":1049,"height":239},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3680818,"resolution":"3","location":"assets","locale":"","width":1053,"height":620},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3680818,"resolution":"4","location":"assets","locale":"","width":1054,"height":504},"screenshot-5.jpg":{"filename":"screenshot-5.jpg","revision":3680818,"resolution":"5","location":"assets","locale":"","width":1062,"height":555},"screenshot-6.jpg":{"filename":"screenshot-6.jpg","revision":3680818,"resolution":"6","location":"assets","locale":"","width":1055,"height":868},"screenshot-7.jpg":{"filename":"screenshot-7.jpg","revision":3680818,"resolution":"7","location":"assets","locale":"","width":1065,"height":706},"screenshot-8.jpg":{"filename":"screenshot-8.jpg","revision":3680818,"resolution":"8","location":"assets","locale":"","width":1087,"height":664},"screenshot-9.jpg":{"filename":"screenshot-9.jpg","revision":3680818,"resolution":"9","location":"assets","locale":"","width":1084,"height":638}},"screenshots":[]},"plugin_section":[],"plugin_tags":[2353,5777,1117,186,1557],"plugin_category":[55],"plugin_contributors":[282641],"plugin_business_model":[],"class_list":["post-324178","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-meta-description","plugin_tags-schema","plugin_tags-seo","plugin_tags-sitemap","plugin_category-seo-and-marketing","plugin_contributors-jamiekay","plugin_committers-jamiekay"],"banners":{"banner":"https:\/\/ps.w.org\/coretex-seo\/assets\/banner-772x250.png?rev=3661455","banner_2x":"https:\/\/ps.w.org\/coretex-seo\/assets\/banner-1544x500.png?rev=3661455","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/coretex-seo\/assets\/icon-128x128.png?rev=3661455","icon_2x":"https:\/\/ps.w.org\/coretex-seo\/assets\/icon-256x256.png?rev=3661455","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-1.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-2.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-3.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-4.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-5.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-6.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-7.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-8.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-9.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-10.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-12.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-13.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-14.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-15.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-16.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-17.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-18.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-19.jpg?rev=3680818","caption":""},{"src":"https:\/\/ps.w.org\/coretex-seo\/assets\/screenshot-20.jpg?rev=3680818","caption":""}],"raw_content":"<!--section=description-->\n<p>Your SEO plugin has been showing you red lights for years. This meta description is too short. That page has no H2. These two posts have the same title.<\/p>\n\n<p>Fine. Now write 200 of them.<\/p>\n\n<p>Coretex SEO does that part. It reads a post the way an editor would, drafts the actual replacement text, and puts it in a queue for you to approve. Not a score. Not a checklist. The words you would otherwise have written yourself.<\/p>\n\n<p><strong>Nothing on your site changes until you click approve.<\/strong> Every suggestion sits in a queue where you can read it, edit it, take it or bin it. You can clear a hundred in a sitting or leave them for a month.<\/p>\n\n<h4>What it fixes<\/h4>\n\n<ul>\n<li><strong>SEO titles and meta descriptions<\/strong> \u2014 rewritten for length, clarity and click-through, not padded to hit a character count<\/li>\n<li><strong>Heading structure<\/strong> \u2014 audits your H2\/H3 hierarchy and proposes an outline that actually nests<\/li>\n<li><strong>Internal linking<\/strong> \u2014 finds related content and suggests the anchor phrase to link it with<\/li>\n<li><strong>Image SEO<\/strong> \u2014 descriptive titles and genuine screen-reader alt text across your media library<\/li>\n<li><strong>Spelling and grammar<\/strong> \u2014 AI proofreading over everything you have published<\/li>\n<li><strong>Broken links<\/strong> \u2014 every link on every published page, checked<\/li>\n<li><strong>Duplicate titles and descriptions<\/strong> \u2014 the ones quietly splitting your own rankings<\/li>\n<li><strong>Accidental noindex<\/strong> \u2014 canonical and robots tags hiding pages you meant to rank<\/li>\n<li><strong>Content scoring<\/strong> \u2014 a readability and optimisation score for every post and page<\/li>\n<li><strong>robots.txt editor<\/strong> \u2014 with a guard that refuses to save a file that would deindex your whole site<\/li>\n<li><strong>IndexNow<\/strong> \u2014 push changed URLs to Bing and Yandex the moment you approve them<\/li>\n<li><strong>Scheduled audits<\/strong> \u2014 run the whole audit on a schedule and get an email when something regresses<\/li>\n<\/ul>\n\n<h4>Bring your own AI, pay nobody a markup<\/h4>\n\n<p>There is no account here. No licence key. No call home. You pick a provider, paste your own API key, and requests go straight from your site to them.<\/p>\n\n<p>OpenAI, Anthropic, Google Gemini, Mistral, Groq, DeepSeek, xAI, Perplexity, OpenRouter \u2014 or Ollama on your own hardware, in which case your content never leaves your server and the running cost is nothing.<\/p>\n\n<p>Provider choice is never restricted, in any version.<\/p>\n\n<h4>Works alongside your current SEO plugin<\/h4>\n\n<p>Coretex writes to its own post meta and only outputs title and description tags if you switch that on. Leave it off and it sits happily beside Yoast, Rank Math or All in One SEO as a suggestion engine \u2014 you keep your existing setup and use this for the writing.<\/p>\n\n<h4>Running SEO for clients?<\/h4>\n\n<p>Everything above is free, forever, with no feature held back.<\/p>\n\n<p>If you do this for a living, there is a paid add-on \u2014 <strong>Coretex SEO Agency<\/strong> \u2014 that adds the things agencies specifically need:<\/p>\n\n<ul>\n<li>Rank tracking with position history, and Google Search Console connected<\/li>\n<li>Competitor and content-gap analysis against a rival URL<\/li>\n<li>Backlink profiles and SERP landscape analysis<\/li>\n<li>Technical Site Audit, Local SEO audit and Full Site Analysis<\/li>\n<li>The full-site engine \u2014 every scan type across every page, spread over several nights<\/li>\n<li><strong>Print-ready client reports with your own branding<\/strong> \u2014 your logo, your colours, your header wording, the Coretex name gone entirely<\/li>\n<li>White labelling across the admin<\/li>\n<li>GEO health checklist and advanced GEO generation \u2014 direct-answer blocks, JSON-LD schema, E-E-A-T rewrites, social meta<\/li>\n<li>Keyword research \u2014 ideas with intent and difficulty, and real search volume if you connect DataForSEO<\/li>\n<li>AI article writer \u2014 article ideas drawn from your existing topics, and full drafts on request<\/li>\n<li>Batches of 50 items per scan instead of 10<\/li>\n<\/ul>\n\n<p>It installs as a separate add-on and attaches through this plugin's own hooks. Nothing here is disabled to make room for it, and if you uninstall it this plugin carries on exactly as before. Details at <a href=\"https:\/\/coretex-seo.co.uk\/\">coretex-seo.co.uk<\/a>.<\/p>\n\n<h4>Built to be extended<\/h4>\n\n<p>Coretex SEO publishes a documented set of action and filter hooks. Any plugin can register its own admin screens, scan types, feature flags and settings panels without touching a line of this one. The full reference ships as <code>HOOKS.txt<\/code> in the plugin folder.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin does not contact Coretex servers. It contacts third-party services only when you configure them and only when you trigger an action that needs them.<\/p>\n\n<p><strong>AI providers (required for AI features, you choose which)<\/strong><\/p>\n\n<p>To generate suggestions, the plugin sends the title, excerpt and, where relevant, the content of the post being scanned, plus your Site Profile text if you filled one in, to the AI provider you selected, authenticated with the API key you entered. No request is made until you click a scan button or enable a scheduled audit.<\/p>\n\n<ul>\n<li>OpenAI \u2014 https:\/\/api.openai.com \u2014 <a href=\"https:\/\/openai.com\/policies\/terms-of-use\">Terms<\/a> \u2014 <a href=\"https:\/\/openai.com\/policies\/privacy-policy\">Privacy<\/a><\/li>\n<li>Anthropic \u2014 https:\/\/api.anthropic.com \u2014 <a href=\"https:\/\/www.anthropic.com\/legal\/consumer-terms\">Terms<\/a> \u2014 <a href=\"https:\/\/www.anthropic.com\/legal\/privacy\">Privacy<\/a><\/li>\n<li>Google Gemini \u2014 https:\/\/generativelanguage.googleapis.com \u2014 <a href=\"https:\/\/policies.google.com\/terms\">Terms<\/a> \u2014 <a href=\"https:\/\/policies.google.com\/privacy\">Privacy<\/a><\/li>\n<li>Mistral \u2014 https:\/\/api.mistral.ai \u2014 <a href=\"https:\/\/mistral.ai\/terms\">Terms<\/a> \u2014 <a href=\"https:\/\/mistral.ai\/terms#privacy-policy\">Privacy<\/a><\/li>\n<li>Groq \u2014 https:\/\/api.groq.com \u2014 <a href=\"https:\/\/groq.com\/terms-of-use\/\">Terms<\/a> \u2014 <a href=\"https:\/\/groq.com\/privacy-policy\/\">Privacy<\/a><\/li>\n<li>DeepSeek \u2014 https:\/\/api.deepseek.com \u2014 <a href=\"https:\/\/platform.deepseek.com\/downloads\/DeepSeek%20Terms%20of%20Use.html\">Terms<\/a> \u2014 <a href=\"https:\/\/platform.deepseek.com\/downloads\/DeepSeek%20Privacy%20Policy.html\">Privacy<\/a><\/li>\n<li>xAI \u2014 https:\/\/api.x.ai \u2014 <a href=\"https:\/\/x.ai\/legal\/terms-of-service\">Terms<\/a> \u2014 <a href=\"https:\/\/x.ai\/legal\/privacy-policy\">Privacy<\/a><\/li>\n<li>Perplexity \u2014 https:\/\/api.perplexity.ai \u2014 <a href=\"https:\/\/www.perplexity.ai\/hub\/legal\/terms-of-service\">Terms<\/a> \u2014 <a href=\"https:\/\/www.perplexity.ai\/hub\/legal\/privacy-policy\">Privacy<\/a><\/li>\n<li>OpenRouter \u2014 https:\/\/openrouter.ai \u2014 <a href=\"https:\/\/openrouter.ai\/terms\">Terms<\/a> \u2014 <a href=\"https:\/\/openrouter.ai\/privacy\">Privacy<\/a><\/li>\n<li>Ollama \u2014 a URL you specify, by default http:\/\/localhost:11434 \u2014 runs on your own hardware, so nothing leaves your server<\/li>\n<\/ul>\n\n<p><strong>IndexNow (optional)<\/strong><\/p>\n\n<p>When you click \"Submit Recent Content to IndexNow\", the URLs of your recently changed posts and pages, plus a site-specific key the plugin generates, are sent to https:\/\/api.indexnow.org so Bing and Yandex learn about the change immediately. Nothing is sent unless you click the button. <a href=\"https:\/\/www.indexnow.org\/documentation\">Terms and documentation<\/a>.<\/p>\n\n<p><strong>Your own site<\/strong><\/p>\n\n<p>The SEO audit fetches pages of your own site over HTTP to check links, canonical tags and indexability. These requests go to your domain, not to any third party.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Go to <strong>Coretex SEO \u2192 Settings<\/strong> and pick an AI provider.<\/li>\n<li>Paste that provider's API key and click <strong>Save Settings<\/strong>, then <strong>Test Connection<\/strong>.<\/li>\n<li>Optionally fill in <strong>Site Profile<\/strong> so suggestions match your niche and tone.<\/li>\n<li>Go to <strong>Site Scans<\/strong> and run a scan.<\/li>\n<li>Review what it proposes in the <strong>Queue<\/strong> and approve what you want.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20account%20or%20a%20licence%20key%3F\"><h3>Do I need an account or a licence key?<\/h3><\/dt>\n<dd><p>No. The plugin is fully functional on activation. There is no key to enter, no registration, and no call to our servers.<\/p><\/dd>\n<dt id=\"does%20it%20change%20my%20site%20automatically%3F\"><h3>Does it change my site automatically?<\/h3><\/dt>\n<dd><p>No. Every suggestion waits in the approval queue. Your site changes only when you approve an item.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20pay%20for%20an%20ai%20provider%3F\"><h3>Do I need to pay for an AI provider?<\/h3><\/dt>\n<dd><p>You need an API key from one of the supported providers, and those charge for usage. The exception is Ollama, which runs models on your own hardware at no cost.<\/p><\/dd>\n<dt id=\"is%20my%20content%20sent%20anywhere%3F\"><h3>Is my content sent anywhere?<\/h3><\/dt>\n<dd><p>Only to the AI provider you chose, and only when you run a scan. See the External services section above for exactly what is sent. With Ollama, nothing leaves your server.<\/p><\/dd>\n<dt id=\"will%20it%20conflict%20with%20yoast%2C%20rank%20math%20or%20all%20in%20one%20seo%3F\"><h3>Will it conflict with Yoast, Rank Math or All in One SEO?<\/h3><\/dt>\n<dd><p>Coretex SEO writes to its own post meta and only outputs title and description tags when you switch that on in Settings. Leave that off and it works alongside your existing SEO plugin as a suggestion engine.<\/p><\/dd>\n<dt id=\"what%20is%20geo%3F\"><h3>What is GEO?<\/h3><\/dt>\n<dd><p>Generative Engine Optimisation \u2014 structuring content so AI answer engines can quote it. The Agency add-on includes a health checklist and generation tools that tell you where you stand and write the fix.<\/p><\/dd>\n<dt id=\"is%20anything%20crippled%20or%20time-limited%20in%20the%20free%20version%3F\"><h3>Is anything crippled or time-limited in the free version?<\/h3><\/dt>\n<dd><p>No. Every feature listed above is in the free plugin permanently, at full capacity. Nothing is disabled after a trial period and nothing is a teaser for the paid add-on. The Agency add-on adds screens of its own; it never takes anything away from this one.<\/p><\/dd>\n<dt id=\"what%20exactly%20does%20the%20agency%20add-on%20add%3F\"><h3>What exactly does the Agency add-on add?<\/h3><\/dt>\n<dd><p>Rank tracking with history, Google Search Console, competitor and content-gap analysis, backlinks, SERP analysis, the Technical Site Audit, Local SEO audit and Full Site Analysis, the full-site scan engine, XML sitemap control, GEO health checklist and advanced GEO generation, keyword research, the AI article writer, and white-labelled client reports you can hand straight to a client. It is aimed at people running SEO for other people. See <a href=\"https:\/\/coretex-seo.co.uk\/\">coretex-seo.co.uk<\/a>.<\/p><\/dd>\n<dt id=\"can%20i%20really%20put%20my%20own%20branding%20on%20the%20reports%3F\"><h3>Can I really put my own branding on the reports?<\/h3><\/dt>\n<dd><p>That is what the white-label screen is for. Your logo, your accent colour, and your own wording for the report's heading, subtitle and footer. With vendor branding switched off, a generated report contains no mention of Coretex anywhere, including in the page source.<\/p><\/dd>\n<dt id=\"how%20many%20posts%20can%20it%20handle%3F\"><h3>How many posts can it handle?<\/h3><\/dt>\n<dd><p>Scans run in batches so a large site does not time out, and each run picks up where the last one left off. The free plugin does 10 items per scan by default and the batch size is an editable setting. Scheduled audits let you work through a big site unattended.<\/p><\/dd>\n<dt id=\"can%20other%20plugins%20extend%20it%3F\"><h3>Can other plugins extend it?<\/h3><\/dt>\n<dd><p>Yes. See <code>HOOKS.txt<\/code> in the plugin folder for the full list of actions and filters, with examples.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>5.1.0<\/h4>\n\n<ul>\n<li>The GEO health checklist, keyword research and the AI article writer have moved to the optional Coretex SEO Agency add-on, alongside the advanced GEO generation, rank tracking and reporting tools that were already there. Nothing about this plugin's own scans, queue or approval workflow changes, and your existing data for these three tools is preserved if you install Agency to keep using them.<\/li>\n<li>Removed the DataForSEO integration from this plugin along with keyword research, since it had no other purpose here.<\/li>\n<\/ul>\n\n<h4>5.0.0<\/h4>\n\n<ul>\n<li>Full line-by-line audit: fixed a REST endpoint that returned undefined variables, restored translation loading (the language setting had stopped working), corrected six wrong option names in the uninstaller and made it clean up every site on a multisite network, and fixed the IndexNow key file 404ing after activation.<\/li>\n<li>A scan whose every AI call failed now reports the error instead of \"0 new recommendations\".<\/li>\n<li>The spelling check's results now count toward the Run All Scans total, and its progress bar no longer reports 100% while it is still working.<\/li>\n<li>Fixed the admin stylesheet failing to load, caused by a dependency on a style handle that had been removed.<\/li>\n<li>Passes Plugin Check clean: prepared every database query, added translator comments throughout, sanitised all form input, and escaped all output.<\/li>\n<li>Removed the Google Fonts request from wp-admin \u2014 the plugin now loads nothing from a third party to render its own interface.<\/li>\n<li>Queue reads are cached in the object cache and invalidated on write, so the dashboard no longer re-counts on every page load.<\/li>\n<li>set_time_limit() is now guarded rather than error-suppressed, so hosts that disable it no longer produce warnings.<\/li>\n<li>Rewritten as a standalone plugin. No licence key, no registration, no calls to Coretex servers.<\/li>\n<li>New feature registry with filter-based extension points, so other plugins can add features cleanly.<\/li>\n<li>New tab registry \u2014 admin screens are registered rather than hard-coded, and add-ons can contribute their own.<\/li>\n<li>Scheduled audits and bulk approve\/reject are now part of the plugin for everyone.<\/li>\n<li>Audit sections are now a filtered registry, so an add-on can contribute a section complete with its card, runner and results block.<\/li>\n<li>The scan batch size is now an editable performance setting rather than a fixed number, with a <code>cortex_seo_batch_cap<\/code> filter.<\/li>\n<li>Added <code>HOOKS.txt<\/code>, documenting every action and filter.<\/li>\n<li>Removed the licence checker, its daily cron job and its admin notices.<\/li>\n<li>Fixed a REST route whose permission callback returned true before running its own capability check.<\/li>\n<li>Advanced GEO generation, rank tracking, competitor analysis, SERP, backlinks, client reports, white labelling, the full-site engine, and the Technical Site Audit, Local SEO and Full Site Analysis audit sections moved to the optional Coretex SEO Agency add-on.<\/li>\n<\/ul>\n\n<h4>4.1.0<\/h4>\n\n<ul>\n<li>Site Profile, React admin dashboard, REST backend, AI Visibility view.<\/li>\n<\/ul>","raw_excerpt":"Most SEO plugins tell you what is wrong. Coretex writes the fix, shows it to you, and changes nothing until you approve it.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/324178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=324178"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jamiekay"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=324178"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=324178"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=324178"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=324178"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=324178"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=324178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}