{"id":287312,"date":"2026-03-11T16:43:07","date_gmt":"2026-03-11T16:43:07","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/schema-structured-data\/"},"modified":"2026-03-12T21:33:51","modified_gmt":"2026-03-12T21:33:51","slug":"structured-data-for-schema-org","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/structured-data-for-schema-org\/","author":16518018,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.12","stable_tag":"1.0.12","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Structured Data for Schema.org","header_author":"philstudio - Phil","header_description":"Generate Schema.org structured data via shortcode. Supports HowTo, FAQPage, ItemList, CreativeWork.","assets_banners_color":"5c7894","last_updated":"2026-03-12 21:33:51","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/yoomoney.ru\/to\/4100141266469","header_plugin_uri":"https:\/\/iphil.top\/portfolio\/structured-data-for-schema-org\/","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":302,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.10":{"tag":"1.0.10","author":"philstudio","date":"2026-03-11 22:39:35"},"1.0.11":{"tag":"1.0.11","author":"philstudio","date":"2026-03-11 23:01:15"},"1.0.12":{"tag":"1.0.12","author":"philstudio","date":"2026-03-12 21:33:51"},"1.0.2":{"tag":"1.0.2","author":"philstudio","date":"2026-03-11 16:38:13"},"1.0.3":{"tag":"1.0.3","author":"philstudio","date":"2026-03-11 16:59:39"},"1.0.4":{"tag":"1.0.4","author":"philstudio","date":"2026-03-11 20:20:22"},"1.0.5":{"tag":"1.0.5","author":"philstudio","date":"2026-03-11 21:02:21"},"1.0.6":{"tag":"1.0.6","author":"philstudio","date":"2026-03-11 21:20:21"},"1.0.7":{"tag":"1.0.7","author":"philstudio","date":"2026-03-11 21:28:16"},"1.0.8":{"tag":"1.0.8","author":"philstudio","date":"2026-03-11 22:11:14"},"1.0.9":{"tag":"1.0.9","author":"philstudio","date":"2026-03-11 22:27:40"}},"upgrade_notice":{"1.0.0":"<p>Initial release<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3480696,"resolution":"128x128","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3481507,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3481507,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.10","1.0.11","1.0.12","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8","1.0.9"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3480696,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3480696,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3480696,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3480696,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3480696,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"Shortcode in Editor \u2014 Add [schema] to any post or page","2":"Frontend Output \u2014 Clean HTML with proper Q&amp;A formatting for FAQPage","3":"JSON-LD in Source \u2014 Valid Schema.org markup in footer","4":"Google Rich Results \u2014 Validation passed","5":"Schema Validator \u2014 Validation passed"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[9310,2516,1117,186,1121],"plugin_category":[55],"plugin_contributors":[217187],"plugin_business_model":[],"class_list":["post-287312","plugin","type-plugin","status-publish","hentry","plugin_tags-google-rich-snippets","plugin_tags-json-ld","plugin_tags-schema","plugin_tags-seo","plugin_tags-structured-data","plugin_category-seo-and-marketing","plugin_contributors-philstudio","plugin_committers-philstudio"],"banners":{"banner":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/banner-772x250.jpg?rev=3481507","banner_2x":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/banner-1544x500.jpg?rev=3481507","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/icon-128x128.gif?rev=3480696","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/screenshot-1.png?rev=3480696","caption":"Shortcode in Editor \u2014 Add [schema] to any post or page"},{"src":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/screenshot-2.png?rev=3480696","caption":"Frontend Output \u2014 Clean HTML with proper Q&amp;A formatting for FAQPage"},{"src":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/screenshot-3.png?rev=3480696","caption":"JSON-LD in Source \u2014 Valid Schema.org markup in footer"},{"src":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/screenshot-4.png?rev=3480696","caption":"Google Rich Results \u2014 Validation passed"},{"src":"https:\/\/ps.w.org\/structured-data-for-schema-org\/assets\/screenshot-5.png?rev=3480696","caption":"Schema Validator \u2014 Validation passed"}],"raw_content":"<!--section=description-->\n<p>Structured Data for Schema.org helps you add valid Schema.org markup to your WordPress content. This improves how search engines understand your content and <strong>may qualify for Google Rich Snippets<\/strong> (depending on schema type and page structure).<\/p>\n\n<h4>Supported Schema Types<\/h4>\n\n<ul>\n<li><strong>HowTo<\/strong> \u2014 Step-by-step tutorials (Google Rich Result eligible, 1 per page recommended)<\/li>\n<li><strong>FAQPage<\/strong> \u2014 Questions &amp; Answers (Google Rich Result eligible, 1 per page limit enforced)<\/li>\n<li><strong>ItemList<\/strong> \u2014 Ordered\/unordered lists (Google Rich Result eligible)<\/li>\n<li><strong>CreativeWork<\/strong> \u2014 General content (SEO only, no Rich Result)<\/li>\n<\/ul>\n\n<h4>Important: Google Rich Results<\/h4>\n\n<p>Not all schema types guarantee Rich Snippets. Google has specific requirements:<\/p>\n\n<ul>\n<li><strong>HowTo:<\/strong> Best results with ONE main tutorial per page<\/li>\n<li><strong>FAQPage:<\/strong> Only ONE FAQPage schema per page is eligible for Rich Results (plugin enforces this)<\/li>\n<li><strong>ItemList:<\/strong> Works well for top-10 lists, product collections<\/li>\n<li><strong>CreativeWork:<\/strong> Helps SEO but does not trigger Rich Results<\/li>\n<\/ul>\n\n<p>This plugin generates <strong>valid Schema.org markup<\/strong>. Rich Result eligibility depends on your content structure and Google's algorithms.<\/p>\n\n<h3>Usage<\/h3>\n\n<h4>HowTo Schema<\/h4>\n\n<pre><code>[schema type=\"HowTo\" name=\"How to Draw a Rune\" time=\"5M\"]\nStep 1: Clear your mind\nStep 2: Focus on your question\nStep 3: Click the daisy\n[\/schema]\n<\/code><\/pre>\n\n<h4>FAQPage Schema<\/h4>\n\n<p>Use <code>|<\/code> to separate questions and answers (one Q&amp;A per line):<\/p>\n\n<pre><code>[schema type=\"FAQPage\" name=\"Rune FAQ\"]\nWhat are runes? | Ancient Germanic alphabet symbols\nHow do I use them? | Focus on a question and draw randomly\nWhen should I draw? | When you need guidance\n[\/schema]\n<\/code><\/pre>\n\n<p>For schema-only output (no visible HTML), add <code>hidden=\"1\"<\/code>:<\/p>\n\n<pre><code>[schema type=\"FAQPage\" name=\"FAQ\" hidden=\"1\"]\nQuestion 1 | Answer 1\nQuestion 2 | Answer 2\n[\/schema]\n<\/code><\/pre>\n\n<h4>ItemList Schema<\/h4>\n\n<pre><code>[schema type=\"ItemList\" name=\"Top 3 Runes\"]\nFehu - Wealth and abundance\nUruz - Strength and vitality\nThurisaz - Protection and power\n[\/schema]\n<\/code><\/pre>\n\n<p>For unordered list (bullets), add <code>items-tag=\"ul\"<\/code>:<\/p>\n\n<pre><code>[schema type=\"ItemList\" name=\"My List\" items-tag=\"ul\"]\nItem 1\nItem 2\nItem 3\n[\/schema]\n<\/code><\/pre>\n\n<h4>CreativeWork Schema<\/h4>\n\n<pre><code>[schema type=\"CreativeWork\" name=\"My Guide\" description=\"A comprehensive rune guide\"]\nYour content here...\n[\/schema]\n<\/code><\/pre>\n\n<h4>Attributes<\/h4>\n\n<ul>\n<li><code>type<\/code> \u2014 Schema type: HowTo, FAQPage, ItemList, CreativeWork (default: HowTo)<\/li>\n<li><code>name<\/code> \u2014 Title of the schema (required for all types)<\/li>\n<li><code>description<\/code> \u2014 Brief description (HowTo, CreativeWork)<\/li>\n<li><code>time<\/code> \u2014 Duration (HowTo only, auto-converts to ISO 8601: \"5M\", \"1H30M\", \"PT30M\")<\/li>\n<li><code>image<\/code> \u2014 Featured image URL (HowTo only)<\/li>\n<li><code>hidden<\/code> \u2014 Hide HTML output, keep schema only (values: 1, true)<\/li>\n<li><code>position<\/code> \u2014 Starting position for ItemList numbering (ItemList only)<\/li>\n<li><code>url<\/code> \u2014 URL for list items (ItemList only, applies to all items)<\/li>\n<li><code>items-tag<\/code> \u2014 HTML tag for ItemList: \"ol\" (default) or \"ul\"<\/li>\n<\/ul>\n\n<h3>Developer Notes<\/h3>\n\n<h4>Classes<\/h4>\n\n<ul>\n<li><code>SDFSO_Schema<\/code> (<code>includes\/class-sdfso-schema.php<\/code>) \u2014 Core schema generation logic (static methods)<\/li>\n<li><code>SDFSO_Shortcode<\/code> (<code>includes\/class-sdfso-shortcode.php<\/code>) \u2014 Shortcode registration and rendering<\/li>\n<\/ul>\n\n<h4>Supported Schema Types<\/h4>\n\n<pre><code>| Type        | Rich Result  | Limit Per Page | Required Fields         |\n|-------------|--------------|----------------|-------------------------|\n| HowTo       | Yes          | 1 recommended  | name, step[]            |\n| FAQPage     | Yes          | 1 enforced     | mainEntity[]            |\n| ItemList    | Yes          | \u221e              | name, itemListElement[] |\n| CreativeWork| No           | \u221e              | name                    |\n<\/code><\/pre>\n\n<h3>License<\/h3>\n\n<p>This plugin is licensed under GPLv2 or later.<\/p>\n\n<p>Copyright (C) 2026 philstudio<\/p>\n\n<p>This program is free software; you can redistribute it and\/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 2 of the License, or\n(at your option) any later version.<\/p>\n\n<p>This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.<\/p>\n\n<!--section=installation-->\n<h4>Using the WordPress Plugin Installer<\/h4>\n\n<ol>\n<li>Go to WordPress Dashboard \u2192 Plugins \u2192 Add New.<\/li>\n<li>Search for \"Schema Structured Data\".<\/li>\n<li>Click \"Install\" then \"Activate\".<\/li>\n<li>Add <code>[schema]<\/code> shortcodes to your posts or pages.<\/li>\n<\/ol>\n\n<h4>Manual Installation<\/h4>\n\n<ol>\n<li>Download the plugin zip file.<\/li>\n<li>Unzip and upload to <code>\/wp-content\/plugins\/structured-data-for-schema-org<\/code>.<\/li>\n<li>Activate via Dashboard \u2192 Plugins.<\/li>\n<li>You're ready! Add <code>[schema]<\/code> shortcodes to your content.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20i%20get%20a%20google%20rich%20snippet%3F\"><h3>Will I get a Google Rich Snippet?<\/h3><\/dt>\n<dd><p>Schema markup <strong>may<\/strong> qualify for Rich Snippets, but Google has specific requirements:<\/p>\n\n<ul>\n<li><strong>HowTo:<\/strong> Use ONE per page for best results<\/li>\n<li><strong>FAQPage:<\/strong> Only ONE per page is eligible (plugin enforces this limit)<\/li>\n<li><strong>ItemList:<\/strong> Works well for ranked lists<\/li>\n<li><strong>CreativeWork:<\/strong> SEO benefit only, no Rich Result<\/li>\n<\/ul>\n\n<p>Valid schema improves how Google understands your content, but Rich Results depend on content quality, page structure, and Google's algorithms.<\/p><\/dd>\n<dt id=\"can%20i%20use%20multiple%20shortcodes%20on%20one%20page%3F\"><h3>Can I use multiple shortcodes on one page?<\/h3><\/dt>\n<dd><p>Yes, but with limitations:<\/p>\n\n<ul>\n<li><strong>HowTo:<\/strong> Multiple allowed, but Google may only show one as Rich Result<\/li>\n<li><strong>FAQPage:<\/strong> Only the FIRST one is processed (Google limit enforced by plugin)<\/li>\n<li><strong>ItemList:<\/strong> Multiple allowed<\/li>\n<li><strong>CreativeWork:<\/strong> Multiple allowed<\/li>\n<\/ul><\/dd>\n<dt id=\"how%20do%20i%20verify%20the%20schema%20is%20working%3F\"><h3>How do I verify the schema is working?<\/h3><\/dt>\n<dd><ol>\n<li>Publish your page<\/li>\n<li>Visit <a href=\"https:\/\/search.google.com\/test\/rich-results\">Google Rich Results Test<\/a><\/li>\n<li>Enter your page URL<\/li>\n<li>Check for detected schema types<\/li>\n<\/ol>\n\n<p>For syntax validation, use <a href=\"https:\/\/validator.schema.org\/\">Schema Validator<\/a>.<\/p><\/dd>\n<dt id=\"why%20does%20faqpage%20only%20work%20once%20per%20page%3F\"><h3>Why does FAQPage only work once per page?<\/h3><\/dt>\n<dd><p>Google explicitly states that only <strong>one FAQPage schema per page<\/strong> is eligible for Rich Results. This plugin enforces that limit to prevent invalid markup and improve your chances of getting a Rich Result.<\/p><\/dd>\n<dt id=\"what%20is%20the%20q%7Ca%20format%20for%20faqpage%3F\"><h3>What is the Q|A format for FAQPage?<\/h3><\/dt>\n<dd><p>Each line should contain a question and answer separated by a pipe character (<code>|<\/code>):<\/p>\n\n<pre><code>Question 1 | Answer 1\nQuestion 2 | Answer 2\nQuestion 3 | Answer 3\n<\/code><\/pre>\n\n<p>The plugin automatically parses this format and generates proper FAQ schema markup.<\/p><\/dd>\n<dt id=\"can%20i%20hide%20the%20html%20output%20but%20keep%20the%20schema%3F\"><h3>Can I hide the HTML output but keep the schema?<\/h3><\/dt>\n<dd><p>Yes! Add <code>hidden=\"1\"<\/code> to any shortcode:<\/p>\n\n<pre><code>[schema type=\"FAQPage\" name=\"FAQ\" hidden=\"1\"]\nQuestion | Answer\n[\/schema]\n<\/code><\/pre>\n\n<p>This outputs the JSON-LD schema without visible HTML on the page.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>\ud83c\udf89 Initial release<\/li>\n<li>\u2705 Multi-schema support: HowTo, FAQPage, ItemList, CreativeWork<\/li>\n<li>\u2705 FAQPage limited to 1 per page (Google compliance)<\/li>\n<li>\u2705 Q|A format for FAQ content (simple, no nested shortcodes)<\/li>\n<li>\u2705 ItemList supports ol\/ul via <code>items-tag<\/code> attribute<\/li>\n<li>\u2705 <code>hidden<\/code> attribute for schema-only output<\/li>\n<li>\u2705 WordPress Coding Standards compliant<\/li>\n<\/ul>","raw_excerpt":"Generate Schema.org structured data via shortcode. Supports HowTo, FAQPage, ItemList, CreativeWork.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/287312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=287312"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/philstudio"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=287312"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=287312"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=287312"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=287312"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=287312"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=287312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}