{"id":336960,"date":"2026-08-13T20:50:18","date_gmt":"2026-08-13T20:50:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/shopgraph-for-woocommerce\/"},"modified":"2026-08-28T22:12:26","modified_gmt":"2026-08-28T22:12:26","slug":"internick-ai-product-schema","status":"publish","type":"plugin","link":"https:\/\/fuc.wordpress.org\/plugins\/internick-ai-product-schema\/","author":23515612,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.3","stable_tag":"0.1.3","tested":"7.1","requires":"6.4","requires_php":"8.1","requires_plugins":null,"header_name":"AI Product Schema for WooCommerce","header_author":"Nick Granados","header_description":"Make your WooCommerce products discoverable and purchasable by AI shopping agents (complete Product schema, AI attributes, llms.txt).","assets_banners_color":"4a7178","last_updated":"2026-08-28 22:12:26","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/ko-fi.com\/nickgranados","header_plugin_uri":"","header_author_uri":"https:\/\/nickgranados.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":112,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.0":{"tag":"0.1.0","author":"internick2017","date":"2026-08-13 20:49:44","revision":3646201},"0.1.1":{"tag":"0.1.1","author":"internick2017","date":"2026-08-28 12:21:35","revision":3670323},"0.1.2":{"tag":"0.1.2","author":"internick2017","date":"2026-08-28 20:59:28","revision":3670923},"0.1.3":{"tag":"0.1.3","author":"internick2017","date":"2026-08-28 22:12:26","revision":3670965}},"upgrade_notice":{"0.1.3":"<p>Documentation update only. Nothing to do on your side.<\/p>","0.1.2":"<p>Adds Spanish and Brazilian Portuguese translations and fixes a settings description. Nothing to do on your side.<\/p>","0.1.1":"<p>Directory assets and metadata only. Nothing to do on your side.<\/p>","0.1.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3670323,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3646201,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3670323,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3670323,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.0","0.1.1","0.1.2","0.1.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3646201,"resolution":"1","location":"assets","locale":"","width":1920,"height":580},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3646201,"resolution":"2","location":"assets","locale":"","width":1920,"height":630},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3646201,"resolution":"3","location":"assets","locale":"","width":1280,"height":2308}},"screenshots":{"1":"The \"AI Attributes\" tab in the product editor: add product Q&amp;A, compatible accessories, and substitute products.","2":"AI Product Schema settings under WooCommerce &rarr; Settings: toggle Product schema, \/llms.txt, and AI robots.txt, and choose the schema mode.","3":"The complete schema.org Product JSON-LD emitted on a product page, with AI attributes merged in (no duplicate node)."}},"plugin_section":[],"plugin_tags":[2516,244604,245147,1121,286],"plugin_category":[45,55],"plugin_contributors":[267313],"plugin_business_model":[],"class_list":["post-336960","plugin","type-plugin","status-publish","hentry","plugin_tags-json-ld","plugin_tags-llms-txt","plugin_tags-product-schema","plugin_tags-structured-data","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-seo-and-marketing","plugin_contributors-internick2017","plugin_committers-internick2017"],"banners":{"banner":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/banner-772x250.png?rev=3670323","banner_2x":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/banner-1544x500.png?rev=3670323","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/icon-128x128.png?rev=3670323","icon_2x":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/icon-256x256.png?rev=3646201","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/screenshot-1.png?rev=3646201","caption":"The \"AI Attributes\" tab in the product editor: add product Q&amp;A, compatible accessories, and substitute products."},{"src":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/screenshot-2.png?rev=3646201","caption":"AI Product Schema settings under WooCommerce &rarr; Settings: toggle Product schema, \/llms.txt, and AI robots.txt, and choose the schema mode."},{"src":"https:\/\/ps.w.org\/internick-ai-product-schema\/assets\/screenshot-3.png?rev=3646201","caption":"The complete schema.org Product JSON-LD emitted on a product page, with AI attributes merged in (no duplicate node)."}],"raw_content":"<!--section=description-->\n<p>AI shopping agents (ChatGPT, Gemini, Perplexity, Claude and others) increasingly research and recommend products for shoppers. To be considered, a store's products need machine-readable, structured, complete data. WooCommerce does not provide this out of the box.<\/p>\n\n<p><strong>AI Product Schema<\/strong> makes your WooCommerce catalog first-class for AI shopping agents:<\/p>\n\n<ul>\n<li><strong>Complete Product JSON-LD<\/strong> on every product page (schema.org <code>Product<\/code> with offers, availability, ratings, brand and images), built from your live WooCommerce data.<\/li>\n<li><strong>No duplicate schema.<\/strong> AI Product Schema detects Yoast SEO and Rank Math and merges its data into their existing Product node instead of printing a second one. With no SEO plugin, it prints a standalone node.<\/li>\n<li><strong>AI product attributes<\/strong> you can fill in the classic product editor: a Q&amp;A list, compatible accessories, and substitute products. These map to verified schema.org properties (<code>subjectOf<\/code>\/FAQ, <code>isRelatedTo<\/code>, <code>isSimilarTo<\/code>).<\/li>\n<li><strong><code>\/llms.txt<\/code><\/strong> \u2014 a Markdown index of your published products following the <a href=\"https:\/\/llmstxt.org\/\">llms.txt<\/a> convention, so agents can find your catalog quickly.<\/li>\n<li><strong>AI-crawler <code>robots.txt<\/code> directives<\/strong> that welcome known shopping\/agent crawlers (GPTBot, Google-Extended, ClaudeBot, PerplexityBot and more) and point them at your <code>\/llms.txt<\/code>.<\/li>\n<li><strong>Feature toggles<\/strong> under WooCommerce \u2192 Settings \u2192 AI Product Schema.<\/li>\n<\/ul>\n\n<h4>llms.txt built for a catalog, not for a blog<\/h4>\n\n<p>Most <code>llms.txt<\/code> plugins index pages: your posts, your about page, your contact form. That is\nthe right shape for a content site and the wrong shape for a store.<\/p>\n\n<p>AI Product Schema generates a <strong>product<\/strong> index. It lists your published WooCommerce\nproducts, and it is backed by complete Product JSON-LD on every product page, so an agent\nthat follows your <code>\/llms.txt<\/code> finds real structured product data when it arrives: price,\navailability, ratings, brand, images, and your AI attributes.<\/p>\n\n<p>That pairing is the point. An <code>llms.txt<\/code> with nothing structured behind it tells an agent\nwhere to look but not what it is looking at. Structured data with no index makes the agent\nfind your products on its own. This plugin does both, for WooCommerce specifically.<\/p>\n\n<p>AI Product Schema reads product data exclusively through the WooCommerce CRUD API and declares High-Performance Order Storage (HPOS) compatibility.<\/p>\n\n<h3>Development<\/h3>\n\n<p>The full source code is publicly available at:<\/p>\n\n<p>https:\/\/github.com\/internick2017\/ai-product-schema<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/internick-ai-product-schema<\/code>, or install it from the Plugins screen.<\/li>\n<li>Activate it. WooCommerce must be installed and active.<\/li>\n<li>Go to WooCommerce \u2192 Settings \u2192 AI Product Schema to toggle features.<\/li>\n<li>Edit any product and open the <strong>AI Attributes<\/strong> tab to add Q&amp;A, accessories, and substitutes.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20create%20duplicate%20structured%20data%20with%20yoast%20or%20rank%20math%3F\"><h3>Does this create duplicate structured data with Yoast or Rank Math?<\/h3><\/dt>\n<dd><p>No. AI Product Schema detects those plugins and merges its AI attributes into their existing Product schema node. It only prints a standalone node when no supported SEO plugin is active (or when you force \"Standalone\" mode).<\/p><\/dd>\n<dt id=\"does%20it%20call%20any%20external%20ai%20service%3F\"><h3>Does it call any external AI service?<\/h3><\/dt>\n<dd><p>No. This version generates structured data and files from your own product data. Nothing is sent to third parties.<\/p><\/dd>\n<dt id=\"where%20is%20the%20product%20data%20stored%3F\"><h3>Where is the product data stored?<\/h3><\/dt>\n<dd><p>AI attributes are stored on the product via the WooCommerce CRUD API (product meta), never through direct database writes.<\/p><\/dd>\n<dt id=\"how%20is%20this%20different%20from%20a%20general%20llms.txt%20plugin%3F\"><h3>How is this different from a general llms.txt plugin?<\/h3><\/dt>\n<dd><p>General <code>llms.txt<\/code> plugins index your site's pages and posts. This one indexes your\n<strong>product catalog<\/strong>, and pairs it with complete Product JSON-LD on each product page, so\nagents get structured product data and not just a list of links. It is built for\nWooCommerce rather than for sites in general. The <code>\/llms.txt<\/code> index is optional and can be\nturned off entirely if you only want the structured data.<\/p><\/dd>\n<dt id=\"what%20is%20llms.txt%3F\"><h3>What is llms.txt?<\/h3><\/dt>\n<dd><p>A simple Markdown convention (https:\/\/llmstxt.org\/) that gives AI agents a concise, curated index of a site. AI Product Schema serves one at <code>yourstore.com\/llms.txt<\/code> listing your published products.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.3<\/h4>\n\n<ul>\n<li>Documentation only: clearer plugin name, and the description now explains the <code>\/llms.txt<\/code> product index and how it differs from general-purpose llms.txt plugins. Added a link to the public source repository. No functional changes.<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>New: the plugin now speaks Spanish (es_ES) and Brazilian Portuguese (pt_BR). The settings screen, the AI Attributes tab in the product editor, and all notices are translated.<\/li>\n<li>Fixed the description of the \"Schema mode\" setting, which showed an internal PHP namespace instead of the plugin name.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Banner updated to the current plugin name and missing directory assets added. Donate link added. No functional changes.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release: Product JSON-LD with Yoast\/Rank Math coexistence, AI product attributes (Q&amp;A, accessories, substitutes), <code>\/llms.txt<\/code>, AI-crawler <code>robots.txt<\/code> directives, and a settings tab.<\/li>\n<\/ul>","raw_excerpt":"Complete Product JSON-LD and a \/llms.txt product index for WooCommerce, so AI shopping agents can discover and recommend your products.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/336960","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=336960"}],"author":[{"embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/internick2017"}],"wp:attachment":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=336960"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=336960"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=336960"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=336960"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=336960"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=336960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}