{"id":340473,"date":"2026-07-15T10:54:16","date_gmt":"2026-07-15T10:54:16","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/pewit-ai-schema-builder\/"},"modified":"2026-10-29T17:59:48","modified_gmt":"2026-10-29T17:59:48","slug":"pewit-ai-schema-builder","status":"publish","type":"plugin","link":"https:\/\/ms.wordpress.org\/plugins\/pewit-ai-schema-builder\/","author":11391715,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.5.3","stable_tag":"1.1.5.3","tested":"7.1.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Pewit AI Schema Builder","header_author":"PEWIT Labs","header_description":"Generate and maintain structured data and rich snippets from your posts, products and pages.","assets_banners_color":"2e3034","last_updated":"2026-10-29 17:59:48","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/pewitlabs.com\/product-ai-schema-builder.html","header_author_uri":"https:\/\/pewitlabs.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":523,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.2":{"tag":"1.1.2","author":"michalczajka","date":"2026-07-15 10:53:54","revision":3608699},"1.1.3":{"tag":"1.1.3","author":"michalczajka","date":"2026-07-26 18:15:12","revision":3623692},"1.1.4":{"tag":"1.1.4","author":"michalczajka","date":"2026-07-26 18:27:17","revision":3623710},"1.1.5":{"tag":"1.1.5","author":"michalczajka","date":"2026-08-13 06:18:57","revision":3644309},"1.1.5.1":{"tag":"1.1.5.1","author":"michalczajka","date":"2026-10-27 08:18:23","revision":3768010},"1.1.5.2":{"tag":"1.1.5.2","author":"michalczajka","date":"2026-10-28 23:22:19","revision":3771832},"1.1.5.3":{"tag":"1.1.5.3","author":"michalczajka","date":"2026-10-29 17:59:48","revision":3773699}},"upgrade_notice":{"1.1.5.2":"<p>Bulk and automation features move to the Pro version. Single-item features stay free.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3771365,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3771365,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3771365,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3771365,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.2","1.1.3","1.1.4","1.1.5","1.1.5.1","1.1.5.2","1.1.5.3"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3773716,"resolution":"1","location":"assets","locale":"","width":1440,"height":800},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3773716,"resolution":"2","location":"assets","locale":"","width":1440,"height":809}},"screenshots":{"1":"Dashboard: Rich Results Score, posts with and without schema.","2":"Schema coverage for posts and pages."}},"plugin_section":[],"plugin_tags":[2353,2516,2998,1117,1121],"plugin_category":[55],"plugin_contributors":[268312],"plugin_business_model":[],"class_list":["post-340473","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-json-ld","plugin_tags-rich-snippets","plugin_tags-schema","plugin_tags-structured-data","plugin_category-seo-and-marketing","plugin_contributors-michalczajka","plugin_committers-michalczajka"],"banners":{"banner":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/banner-772x250.png?rev=3771365","banner_2x":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/banner-1544x500.png?rev=3771365","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/icon-128x128.png?rev=3771365","icon_2x":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/icon-256x256.png?rev=3771365","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/screenshot-1.jpg?rev=3773716","caption":"Dashboard: Rich Results Score, posts with and without schema."},{"src":"https:\/\/ps.w.org\/pewit-ai-schema-builder\/assets\/screenshot-2.jpg?rev=3773716","caption":"Schema coverage for posts and pages."}],"raw_content":"<!--section=description-->\n<p>Structured data tells Google, and AI answer engines, what a page is about. Writing JSON-LD by hand is tedious and template plugins produce the same generic markup for every page. Pewit AI Schema Builder reads each post and generates JSON-LD that matches its actual content, then scores it so you know whether it qualifies for rich results.<\/p>\n\n<h4>What you get for free<\/h4>\n\n<ul>\n<li><strong>Article and WebPage schema<\/strong> (plus AboutPage and ContactPage on pages), generated from the content with your own AI key.<\/li>\n<li><strong>Preview, edit and validate<\/strong> the JSON-LD before it goes live.<\/li>\n<li><strong>Rich Results Score (0\u2013100)<\/strong> with hints on what is missing.<\/li>\n<li><strong>Works with Yoast and Rank Math<\/strong> \u2013 coexistence and sync modes, no duplicate output.<\/li>\n<\/ul>\n\n<h4>What Pro adds<\/h4>\n\n<p>Pro is a separate plugin from <a href=\"https:\/\/pewitlabs.com\/product-ai-schema-builder.html\">pewitlabs.com<\/a>, with a 14-day free trial.<\/p>\n\n<ul>\n<li><strong>More schema types<\/strong> \u2013 Product (including WooCommerce variable products), FAQ, HowTo, Event, LocalBusiness and others.<\/li>\n<li><strong>Bulk generation<\/strong> for existing posts and products, and <strong>auto-generate on publish<\/strong>.<\/li>\n<li><strong>Score Booster<\/strong> \u2013 fix low-scoring pages in bulk.<\/li>\n<li><strong>Scheduled validation scan<\/strong> with fix suggestions and job emails.<\/li>\n<li><strong>Agency plan<\/strong> \u2013 unlimited sites, white-label admin and priority support.<\/li>\n<\/ul>\n\n<p>The free version does not contain Pro code. Upgrading means installing the Pro plugin, not unlocking hidden features.<\/p>\n\n<h4>Bring your own AI key<\/h4>\n\n<p>Use your own key from OpenAI, Anthropic (Claude) or Google Gemini. You pay your provider directly; your content does not pass through PEWIT Labs.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to third-party services to generate structured data. Please review this before use.<\/p>\n\n<p>You choose the AI provider in the plugin settings and use your own API key (BYOK), or on WordPress 7.0+ use the site-wide AI connectors (Settings \u2192 Connectors) via the core AI Client. No data is sent to any provider until you trigger a generation. Requests go directly from your site to the selected provider under your own credentials and that provider's terms. Nothing is sent to the plugin author.<\/p>\n\n<p>WordPress AI Client (WordPress 7.0+, when connectors are configured):\n* What and when: schema generation uses <code>wp_ai_client_prompt()<\/code> so credentials stay in core (Settings \u2192 Connectors). Your post content and prompt context are sent to whichever provider the site administrator configured.<\/p>\n\n<p>OpenAI API (https:\/\/openai.com):\n* What and when: when you generate or regenerate JSON-LD schema for a post, page or product, or test your API key, your content (title, excerpt\/content, mapped fields and any context you configure) and the selected model name are sent to OpenAI to produce the structured data.\n* Data sent: the post\/product content and metadata used for the schema, optional context text you configure, and the selected model name.\n* Terms: https:\/\/openai.com\/policies\/terms-of-use \u2014 Privacy: https:\/\/openai.com\/policies\/privacy-policy<\/p>\n\n<p>Anthropic (Claude) API (https:\/\/www.anthropic.com):\n* What and when: only if you select Claude as the provider \u2014 when you generate schema or test your API key, your content and the selected model name are sent to Anthropic to produce the structured data.\n* Data sent: the post\/product content and metadata used for the schema, optional context text you configure, and the selected model name.\n* Terms: https:\/\/www.anthropic.com\/legal\/consumer-terms \u2014 Privacy: https:\/\/www.anthropic.com\/legal\/privacy<\/p>\n\n<p>Google Gemini API (https:\/\/ai.google.dev):\n* What and when: only if you select Gemini as the provider \u2014 when you generate schema or test your API key, your content and the selected model name are sent to Google's Generative Language API to produce the structured data.\n* Data sent: the post\/product content and metadata used for the schema, optional context text you configure, and the selected model name.\n* Terms: https:\/\/ai.google.dev\/gemini-api\/terms \u2014 Privacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p>Freemius (licensing &amp; updates \u2014 https:\/\/freemius.com):\n* What and when: used for plugin updates and optional, opt-in usage diagnostics. Opt-in is optional.\n* Terms: https:\/\/freemius.com\/terms\/ \u2014 Privacy: https:\/\/freemius.com\/privacy\/<\/p>\n\n<h3>Source code<\/h3>\n\n<p>All JavaScript and CSS shipped in this plugin (in assets\/js and assets\/css) is the original, hand-written, human-readable source. Nothing is minified, compiled, transpiled or generated by a build tool, so no separate source files are required \u2014 what you read in the plugin is the source. The only bundled third-party library is the Freemius SDK (vendor\/freemius), whose source is available at https:\/\/github.com\/Freemius\/wordpress-sdk<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP through Plugins -&gt; Add New -&gt; Upload Plugin, or extract it to wp-content\/plugins\/pewit-ai-schema-builder\/.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Open Pewit AI Schema Builder -&gt; Settings, paste your AI provider API key, click Save &amp; Test.<\/li>\n<li>Choose which post types get schema, then generate JSON-LD per post or in bulk.<\/li>\n<\/ol>\n\n<p>The plugin folder must always be pewit-ai-schema-builder\/ and the main file pewit-ai-schema-builder.php.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20free%20and%20what%20is%20pro%3F\"><h3>What is free and what is Pro?<\/h3><\/dt>\n<dd><p>Article \/ WebPage schema, the Rich Results Score, validation and Yoast \/ Rank Math sync are free. Product, FAQ, HowTo, Event and the other types, bulk and on-publish generation, Score Booster and the scheduled validation scan are part of Pro.<\/p><\/dd>\n<dt id=\"do%20i%20need%20an%20ai%20api%20key%3F\"><h3>Do I need an AI API key?<\/h3><\/dt>\n<dd><p>Yes. Bring your own key from OpenAI, Anthropic (Claude) or Google Gemini. You pay your provider directly for API usage.<\/p><\/dd>\n<dt id=\"will%20this%20conflict%20with%20yoast%20or%20rank%20math%3F\"><h3>Will this conflict with Yoast or Rank Math?<\/h3><\/dt>\n<dd><p>No. Use SEO plugin coexistence or sync mode in Settings to avoid duplicate JSON-LD.<\/p><\/dd>\n<dt id=\"1.1.5\"><h3>1.1.5<\/h3><\/dt>\n<dd><ul>\n<li>Changed: Tested up to WordPress 7.1.<\/li>\n<li>Fixed: hide third-party admin notices (license nags from other plugins) on PEWIT admin screens.<\/li>\n<\/ul><\/dd>\n<dt id=\"1.1.4\"><h3>1.1.4<\/h3><\/dt>\n<dd><ul>\n<li>Fixed: Plugin Check i18n \u2014 text domain in shared PEWIT Labs hub must be a string literal (<code>pewit-labs<\/code>).<\/li>\n<\/ul><\/dd>\n<dt id=\"1.1.3\"><h3>1.1.3<\/h3><\/dt>\n<dd><ul>\n<li>Added: shared PEWIT Labs AI settings hub when 2+ suite plugins are active (provider, API key, model, global context).<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.5.3<\/h4>\n\n<ul>\n<li>Fixed: some admin screens in the free version showed Pro-only buttons or skipped the API key prompt.<\/li>\n<li>Fixed: \"Boost low scores\" is now marked as Pro in the free version.<\/li>\n<\/ul>\n\n<h4>1.1.5.2<\/h4>\n\n<ul>\n<li>Changed: Product, FAQ, HowTo, Event and other advanced types, bulk \/ on-publish generation, Score Booster and scheduled validation are now part of Pro; Article \/ WebPage schema, the Rich Results Score and SEO plugin sync stay free.<\/li>\n<li>Fixed: no empty author in JSON-LD for posts without an author.<\/li>\n<li>Improved: new plugin icon.<\/li>\n<\/ul>\n\n<h4>1.1.5.1<\/h4>\n\n<ul>\n<li>Improved: minor optimizations; updated default AI models for Claude and Gemini.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Added: WordPress 7.0+ AI Client integration \u2014 uses <code>wp_ai_client_prompt()<\/code> when site connectors are configured (Settings \u2192 Connectors), with BYOK direct API fallback.<\/li>\n<li>Changed: settings and readiness checks recognize core AI connectors as a valid configuration.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Changed: the wordpress.org build now ships with ZERO license\/plan feature gating \u2014 every feature is fully functional with no trialware or upgrade prompts. Premium plan logic lives only in the separate Freemius add-on build.<\/li>\n<li>Changed: all internal globals are properly prefixed (aisb\/AISB).<\/li>\n<li>Added: \"Source code\" documentation \u2014 all bundled JS\/CSS is hand-written, unminified source with no build step; the only third-party library is the Freemius SDK.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Changed: renamed to \"Pewit AI Schema Builder\" (new slug pewit-ai-schema-builder) for a distinctive directory name.<\/li>\n<li>Changed: every feature is now free and fully functional \u2014 all schema types, automation, bulk jobs, Score Booster, validation autopilot, CPT\/field mapping and white-label are no longer license-gated.<\/li>\n<li>Added: External services documentation for OpenAI, Anthropic (Claude), Google Gemini and Freemius, including terms\/privacy links.<\/li>\n<li>Fixed: removed Google Fonts (no external font requests); admin uses a system font stack.<\/li>\n<li>Fixed: build now excludes filesystem-incompatible spaced and *.dc.html artifacts.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fixed: Plugin Check advisory warnings \u2014 annotated direct DB queries (DirectQuery\/NoCaching).<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fixed: WordPress Plugin Check \u2014 i18n translators comments, output escaping, prepared SQL annotations, in-memory CSV helpers, prefixed LLM client class, removed manual textdomain loading.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed: WordPress.org Plugin Check i18n compliance for shared LLM client.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added: Settings provider selector \u2014 OpenAI, Claude, Gemini.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Stable public release: Rich Results Score, score column, CSV export, Score Booster.<\/li>\n<li>Yoast \/ Rank Math coexistence and sync, WooCommerce variable products, JetEngine CCT + MetaBox mapping.<\/li>\n<li>Onboarding, validation autopilot, FAQ pair with Content Assist, admin PL.<\/li>\n<\/ul>\n\n<h4>0.7.0<\/h4>\n\n<ul>\n<li>Score Booster bulk regeneration for posts with low or missing schema scores.<\/li>\n<\/ul>\n\n<h4>0.6.0<\/h4>\n\n<ul>\n<li>Schema score admin column and CSV export.<\/li>\n<\/ul>\n\n<h4>0.5.0<\/h4>\n\n<ul>\n<li>Rich Results Score (0\u2013100) with validation hints.<\/li>\n<\/ul>\n\n<h4>0.4.0<\/h4>\n\n<ul>\n<li>Yoast \/ Rank Math sync, Woo variable offers, validation autopilot, onboarding.<\/li>\n<\/ul>\n\n<h4>0.3.0<\/h4>\n\n<ul>\n<li>JetEngine CCT and MetaBox field mapping.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>CPT discovery, Google\/Bing validation, BreadcrumbList, SEO coexistence, EtchWP.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Metabox JSON-LD (Article\/WebPage), bulk generation and Product\/FAQ schema.<\/li>\n<\/ul>","raw_excerpt":"Generate and maintain JSON-LD structured data and rich snippets from your posts, products and pages with your own AI key.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/340473","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=340473"}],"author":[{"embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/michalczajka"}],"wp:attachment":[{"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=340473"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=340473"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=340473"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=340473"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=340473"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ms.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=340473"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}