== Changelog == = 1.1.123 = * New: an AI assistant connected to Recomaze (Claude or ChatGPT) can write the new product names and descriptions you approve in the chat into WooCommerce, through two routes Recomaze calls with the plugin's own secret key (recomaze/v1/products/agent and recomaze/v1/products/agent/apply). Recomaze reads the current name and description first, emails you a backup of them as a CSV, and only then writes; the same backup puts them back. Only a product's name and description change, through WooCommerce's own product objects, and a description is saved whole, embedded videos included. = 1.1.122 = * Change: the AI Visibility screens no longer say your tracked prompts come from your store chat; the chat feeds article ideas. The domain help, Support, Connectors, the Knowledge Base, the signup and the setup steps speak of your site and your business instead of your store. = 1.1.121 = * Change: a site that sells services rather than products no longer reads a store's words. Agent Analytics leaves out product clicks, add to cart, the purchase rate and the product cards, and its funnel ends on "Ready to get in touch"; the widget settings leave out prices, the cart, the wishlist and the product answers, and the assistant has one set of rules, "Answers"; HQ introduces Recomaze without a storefront and drops the Product copy badge; billing names the website chat. * Change: everywhere else the copy speaks of visitors and the chat on your website instead of shoppers and a storefront, and the HQ badges ask about the chatbot on your website and a LinkedIn post for your business. * Fix: the quick actions an HQ proposal saved are kept on the Customization page. They used to be replaced by the default shop chips there, and a save wrote those back over your own. = 1.1.120 = * New: SEO → Performance shows how fast the site answers and what the server holds. The front page, a product, a category, a post and the cart are measured from the server itself (response time, PHP time, database queries, memory, page weight, compression, cache), next to PHP, OPcache, the object cache, the database size and largest tables, autoloaded options, scheduled jobs, disk space and recent PHP errors, with 90 days of history marked at plugin and theme changes and one-click fixes (compression, database and Action Scheduler cleanup) kept in Checkup → Changes. * New: SEO → Bulk editor edits the SEO title, meta description and focus keyword of many pages at once, scored as you type, from its page or from "Edit SEO in bulk" in the post lists. "Draft with AI" writes them with Fix with AI (10 credits a page) and nothing is saved until you approve; every save can be undone from Checkup → Changes. * New: AI assistants (Claude, ChatGPT and others through MCP) can read and fix the site's SEO through WordPress abilities (WordPress 6.9 or later), with the signed-in user's own permissions: a post's SEO fields, content scores, redirects, the 404 log, the sitemap status, the checkup and llms.txt; every change is journaled with Undo. /schemamap.xml lists the site's schema for AI agents in the format Yoast uses (on by default, under Sitemap settings). * Fix: the focus keyword check ("Another post already targets this focus keyword") counts only the pages that compete for it in search: published or scheduled, indexable, in the same language, with it as their first keyword. A draft or private copy of an article no longer marks the published one, a page that lists the keyword among its secondary ones no longer counts, and Fix with AI no longer picks a new keyword because of either. * Fix: performance plugins that hold JavaScript until the visitor interacts (WP Rocket's Delay JavaScript execution, Perfmatters, FlyingPress) leave the Recomaze script alone, so the chat and the visit tracking start with the page instead of after the first scroll or tap. The tag loads async and carries the opt-outs LiteSpeed Cache, Autoptimize and Cloudflare's Rocket Loader read, WP Rocket's minify and combine leave the loader and the checkout helper out (a minified copy lost the client id), and the update clears WP Rocket's cache once so the live pages pick the new tag up. SEO → Checkup warns when a performance plugin still holds the script, names it and says what to exclude. * Fix: a page scored again at the number it already had is no longer left among "Published pages have no SEO score, or an old one" in SEO → Checkup. After an edit through the REST API or in an editor, "Score them now" and the editor stored the score but the page kept its out-of-date mark when the number did not change. * Fix: "The home page has no meta description" in SEO → Checkup reads the home page as it prints it. A static front page with a description of its own passes, and a failing check says what the template takes: the site tagline only when the template reads it and it is empty, the page's excerpt otherwise. * Fix: "PHP has too little memory for the site" in SEO → Checkup reads the memory the pages measured by SEO → Performance used, against the limit they ran under, instead of the request that ran the checkup, which went from 10 to 62 MB depending on who asked. WP_MEMORY_LIMIT alone no longer fails it: WordPress only ever raises PHP's limit to it, so a 40 MB constant under a larger PHP limit is no shortage, and the 64 MB the card asked for without a source is gone. * Fix: "Repeated 404s have no redirect" in SEO → Checkup leaves out what no redirect helps: addresses asked for by scanners, whose requests name the address itself as where they came from, and the files and pages bots ask every site for (security.txt, ads.txt, humans.txt, /.well-known/, other systems' logins, WordPress installs looked for in a folder, language versions). The SEO medic no longer redirects them into real pages. Repeated addresses are also counted in the 404 monitor's advanced mode, which keeps a row per visit, and the monitor marks the rows the check leaves out. * New: an item of "Published pages are marked noindex" or "Repeated 404s have no redirect" can be marked as intended with Ignore in SEO → Checkup; the check, the score and the SEO medic leave it out until it is counted again. The shop's cart, checkout and account pages no longer count as marked noindex by mistake. * Fix: "Pages have too little text" in SEO → Checkup counts a page that a template of the theme writes (a front-page.php, a page template, a page-{slug}.php) by the text it prints between the header and the footer, read from the server the way a crawler gets it, instead of by its empty editor. Other pages still count by the editor's text, and the card says which were read how. * Fix: "Pages nothing links to" in SEO → Checkup and the Links page count the links the theme prints too: the header and footer of every page, and the lists a page template writes (such as "Other services"), read from the pages as the site prints them. A page linked only from the theme's menu is no longer named an orphan. * New: SEO → Checkup finds a second description of the same entity in the home page's structured data: two JSON-LD nodes under one @id, which search engines merge with whatever conflicts between them, or two organizations, such as a code snippet or a theme printing its own Organization beside Recomaze's graph. * Fix: "No social profile is linked to the site" in SEO → Checkup reads the profiles the home page's Organization lists in sameAs as well as the settings, and says when the page prints profiles the settings do not hold (a theme, a snippet or another plugin prints them, and they go when it does). * New: what is saved on the SEO settings pages (General, Titles & meta, Sitemap, Local SEO, llms.txt), the module switches and the site title go into SEO → Checkup → Changes, each setting with its value before and after, and can be put back from there like the automation's changes. * New: "Fill from Company AI Profile" also fills Local SEO (the business name, an email and a phone number from the support channels, and the head office from the locations, split into street, city, postcode, country and coordinates by the address lookup) and Titles & meta → Social (the Facebook page, the X username and the other profiles from the official surfaces). Only empty fields are filled, and nothing is saved until Save. = 1.1.119 = * New: Import & switch can no longer leave a site down. It loads the front page, an admin screen and the newest post and product before and after turning the other SEO plugin off; a page that stops on an error only without it puts everything back as it was, and the switch says which page, whose code (the theme, a plugin) and which error. For a day after, an error of that kind (code of the other plugin still called, or Recomaze's own SEO output) turns the plugins back on by itself, with a notice saying why. PRO editions and add-ons are also found by name, in whatever folder they were installed. An item the import cannot read is skipped instead of stopping the import. PHP fatal errors raised in the plugin, and any in the day after a switch, are kept on the site and reported to the Recomaze account (see External Services). * Change: the content analysis no longer asks for a number in the title, and an article of 600 words or more passes the length test (the points stay on Rank Math's scale, full from 2,500 words); the key takeaways test also reads the list's heading in Romanian and other languages ("Pe scurt") and the shape Recomaze's rewrite writes; a secondary keyword is judged on the text and a subheading, since the title and the URL hold the first one. * Fix: "Fix with AI" runs as a job the editor asks about every few seconds, so a content rewrite that takes a minute or two no longer ends in "The response is not a valid JSON response" on hosts that cut long requests; an error page from the host is explained instead. The Snippet has its own tick, like the Content, so the content can be rewritten alone, keeping the SEO title, description and slug the post has. = 1.1.118 = * Fix: Import & switch also deactivates the other SEO plugin's PRO edition and add-ons (Rank Math PRO, Yoast SEO Premium and its add-ons, SEOPress PRO, the All in One SEO add-ons) and any plugin that declares it needs it; Rank Math PRO left active without Rank Math took a site down with an error on every page. = 1.1.117 = * Fix: while another SEO plugin such as Rank Math is active, the Checkup's robots.txt fixes lead to Import & switch instead of saving an AI crawler choice that plugin does not serve (the button seemed to do nothing), the sitemap and IndexNow checks step aside, and the Checkup and the robots.txt editor say that the other plugin prints the site and that Recomaze's own fields stay empty until its data is imported. = 1.1.116 = * Change: requires WordPress 6.2 or later, the first to ship the React the plugin pages are built on (5.8 to 6.1 installed it and showed an empty page); checked on WordPress 6.2 with PHP 7.4 and WooCommerce 7.9. * New: SEO module - titles, meta description, robots, canonical and Open Graph tags printed by the plugin; a JSON-LD graph (Organization or Person, WebSite, WebPage, breadcrumbs, articles, products, FAQ and How-to blocks, a schema builder with 17 types per post and custom JSON-LD); an SEO box in the block editor, the classic editor, WooCommerce products, terms and author profiles with Rank Math-style content analysis and scores; list columns with quick and bulk edit. * New: SEO settings pages under Recomaze → SEO (General, Titles & meta, Sitemap, Redirects, 404 monitor, Links, Local SEO, Role manager), with importers for Rank Math and Yoast, reverse export, and a JSON backup of the whole configuration. * New: XML sitemaps (posts, terms, authors, images, video, news) with an HTML sitemap shortcode, IndexNow, redirects with auto redirects on slug changes, a 404 monitor, a link counter with orphan pages and a broken link checker, image SEO, breadcrumbs (block, shortcode, WooCommerce), robots.txt and .htaccess editors, RSS before and after text, llms.txt built from settings plus llms-full.txt, and shop URLs without the /product/ and /product-category/ bases or the parent category slugs (the old addresses redirect). * New: Local SEO with a LocalBusiness schema, a contact shortcode with a map, several locations with their own pages, locations.kml and a store locator with a Leaflet map. * New: server-to-server endpoints for the Recomaze agent (inventory, 404 log, links, apply SEO fields, redirects) with the plugin token; article publishing writes the plugin's own SEO fields and mirrors them into Rank Math and Yoast. * New: "Fix title & description" on WooCommerce products - the SEO box asks Recomaze for a rewrite of the product (title, description, short description, tags, SEO title, meta description), shows the changes word by word next to what the product has, and writes the fields you keep through WooCommerce, journaled with Undo in SEO → Checkup → Changes. * New: internal link suggestions and a FAQ in the SEO box - Recomaze reads the post and the other published pages of the site, says which to link to and with which words already in the text (Insert puts the link there), and writes the questions the page's own text answers, added as the FAQ block with its FAQPage schema. * New: alt text written by AI - the Image SEO tools describe the images of the media library that carry none (Recomaze looks at the picture itself), and an upload can be described as it arrives; every alt text is journaled with Undo. * New: SEO Medic under Checkup → Automation - the Recomaze agent runs the checkup on a schedule, writes the fixes you allow (meta descriptions, focus keywords, alt texts, redirects) and puts the rest up for approval from WordPress; every write is journaled with Undo. * New: "Fix with AI" in the SEO box of every post - Recomaze reads the post as it stands in the editor and writes the SEO title, the meta description, the focus keyword and the URL slug so the failing tests pass, and, unless you untick it, rewrites the content itself (the keyword in the opening and a subheading, enough words, short paragraphs, an answer-first lead, a FAQ that becomes the FAQ block, internal links, alt text on the first image) keeping every fact of the current text; everything is shown word by word next to what the post has, the fields you keep go into the box and the editor and are saved with the post, and what no rewrite can do (an image, say) comes back as notes, with the Copilot one click away. * Fix: one credentials row in wp_recomaze_settings; a re-registration no longer leaves the plugin on stale tokens. * Security: the admin API key is no longer printed in wp-admin; the token check runs only on the plugin page and is throttled. * Fix: order attribution works with the WooCommerce block checkout; every order is reported once and keeps its Recomaze session id. * Change: product sync sends only what changed and runs in the background; drafts are not sent and trashed products are removed. * Fix: the plugin ships with the production environment, so a new merchant registers with the admin's email instead of a random address. * Dev: Docker test environment (dev/) with setup, smoke, screenshot and PHPUnit scripts; readme.txt is the wordpress.org listing and lives in the repository. = 1.1.115 = * The welcome-offer screen is removed. Finishing the Signup Mirror now goes straight to the setup steps. = 1.1.114 = * A priced voucher now rides the Stripe checkout instead of being redeemed separately. * The welcome offer quotes the plan's original list price. * Fixed: a taxonomy term in article publishing settings keeps its own hidden checkbox. = 1.1.113 = * Fixed: clicking an agent in the plan picker scrolled the whole app frame half off the window with no way back. The frame can no longer be scrolled by a script, and View plans scrolls the page itself. = 1.1.112 = * Plans & Billing is rebuilt: the plans come from the Recomaze catalog, annual or monthly, picked the way recomaze.ai/pricing picks them, and the page opens on Starter paid annually. = 1.1.111 = * Settings: the Platform card flips to Connected on its own once the login is saved in the other tab, no reload needed. = 1.1.110 = * Settings: the Recomaze Platform login is set on custom.recomaze.ai, not typed into the plugin. = 1.1.109 = * New Settings page: connect the store to the Recomaze Platform with your email and password. = 1.1.108 = * Fixed: articles published as a custom post type lost their Article schema entirely when Yoast or Rank Math was active; the schema now steps aside only on posts and pages, where those plugins actually print their own. * Fixed: a comma inside a focus keyphrase split it into two Rank Math keywords. A payload with no primary keyphrase now promotes the first secondary instead of leaving the post without one. = 1.1.107 = * Published articles now pass their secondary focus keyphrases to Rank Math, so its keyword density reflects every term the article uses for its subject. = 1.1.106 = * The plan cards on Plans & Billing line up: every button sits at the bottom of its card and the Enterprise card no longer sits lower than the others. = 1.1.105 = * The Automation module is gone from the sidebar; the Agentic Commerce Feed page is still reachable by link. * Sidebar logo fix. = 1.1.104 = * Sidebar polish: Content Studio reordered, clearer names, the logo back in the rail, and the search field no longer loses its padding to the WordPress admin styles. = 1.1.103 = * New sidebar. * Fixed: an Article schema published beside Yoast's or Rank Math's own gave the page two publication dates. Recomaze now publishes only the FAQ schema when an SEO plugin owns the Article. * Fixed: schema on non-English sites printed mangled characters, from escapes lost when WordPress unslashed the stored value. * Fixed: featured images arrived with empty alt text; the cover's alt is written to the media library now. = 1.1.102 = * Fixed: the Analytics tab crashed to "Something went wrong loading this page" whenever it was reloaded or refreshed, from a React hook declared after an early return. * Fixed: on a site without WooCommerce, the product import scheduled at activation and the Import Products endpoint called a WooCommerce function that does not exist and fatalled. Both are guarded now. * The listing documents the AI crawler log and the SEO fields written for Yoast and Rank Math. = 1.1.101 = * Declared compatibility with WordPress 7.1 and added the WooCommerce compatibility headers. = 1.1.100 = * The listing and plugin description are rewritten around the chat agent, AEO and GEO, and now cover gaps, AI Visibility, content, catalog and llms.txt. * Corrected: WooCommerce is not required. The plugin runs on any WordPress site. * The trial banner quotes the launch price actually charged, not the list price. = 1.1.98 = * Launch offer is a fixed price for the first 6 billing cycles. * Fixes to the sidebar, article colours, popup preview settings and AI Visibility. = 1.0.39 - 2025-07-28 = * Implement: Customization messages for pop-up header * Fix: UI fixes = 1.0.32 - 2025-06-10 = * Implement: Support page = 1.0.26 - 2025-06-10 = * Fix: Onboarding = 1.0.25 - 2025-05-29 = * Fix: Add currency in product = 1.0.20 - 2025-05-20 = * Fix: Update readme = 1.0.19 - 2025-05-18 = * Fix: Ignore products with price 0 = 1.0.18 - 2025-05-05 = * Fix: Build fix = 1.0.16 - 2025-05-05 = * Fix: Build fix = 1.0.15 - 2025-05-05 = * Fix: Popup customization = 1.0.12 - 2025-02-27 = * Fix: Add default price of 0 where there is no price = 1.0.11 - 2025-02-25 = * Fix: View more admin dashboard = 1.0.10 - 2025-02-10 = * Feat: Popup position = 1.0.9 - 2025-02-07 = * Fixed manually product import. = 1.0.8 - 2025-02-07 = * Fixed an issue where headers were not sent correctly.