Description
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 may qualify for Google Rich Snippets (depending on schema type and page structure).
Supported Schema Types
- HowTo — Step-by-step tutorials (Google Rich Result eligible, 1 per page recommended)
- FAQPage — Questions & Answers (Google Rich Result eligible, 1 per page limit enforced)
- ItemList — Ordered/unordered lists (Google Rich Result eligible)
- CreativeWork — General content (SEO only, no Rich Result)
Important: Google Rich Results
Not all schema types guarantee Rich Snippets. Google has specific requirements:
- HowTo: Best results with ONE main tutorial per page
- FAQPage: Only ONE FAQPage schema per page is eligible for Rich Results (plugin enforces this)
- ItemList: Works well for top-10 lists, product collections
- CreativeWork: Helps SEO but does not trigger Rich Results
This plugin generates valid Schema.org markup. Rich Result eligibility depends on your content structure and Google’s algorithms.
Usage
HowTo Schema
[schema type="HowTo" name="How to Draw a Rune" time="5M"]
Step 1: Clear your mind
Step 2: Focus on your question
Step 3: Click the daisy
[/schema]
FAQPage Schema
Use | to separate questions and answers (one Q&A per line):
[schema type="FAQPage" name="Rune FAQ"]
What are runes? | Ancient Germanic alphabet symbols
How do I use them? | Focus on a question and draw randomly
When should I draw? | When you need guidance
[/schema]
For schema-only output (no visible HTML), add hidden="1":
[schema type="FAQPage" name="FAQ" hidden="1"]
Question 1 | Answer 1
Question 2 | Answer 2
[/schema]
ItemList Schema
[schema type="ItemList" name="Top 3 Runes"]
Fehu - Wealth and abundance
Uruz - Strength and vitality
Thurisaz - Protection and power
[/schema]
For unordered list (bullets), add items-tag="ul":
[schema type="ItemList" name="My List" items-tag="ul"]
Item 1
Item 2
Item 3
[/schema]
CreativeWork Schema
[schema type="CreativeWork" name="My Guide" description="A comprehensive rune guide"]
Your content here...
[/schema]
Attributes
type— Schema type: HowTo, FAQPage, ItemList, CreativeWork (default: HowTo)name— Title of the schema (required for all types)description— Brief description (HowTo, CreativeWork)time— Duration (HowTo only, auto-converts to ISO 8601: “5M”, “1H30M”, “PT30M”)image— Featured image URL (HowTo only)hidden— Hide HTML output, keep schema only (values: 1, true)position— Starting position for ItemList numbering (ItemList only)url— URL for list items (ItemList only, applies to all items)items-tag— HTML tag for ItemList: “ol” (default) or “ul”
Developer Notes
Classes
SDFSO_Schema(includes/class-sdfso-schema.php) — Core schema generation logic (static methods)SDFSO_Shortcode(includes/class-sdfso-shortcode.php) — Shortcode registration and rendering
Supported Schema Types
| Type | Rich Result | Limit Per Page | Required Fields |
|-------------|--------------|----------------|-------------------------|
| HowTo | Yes | 1 recommended | name, step[] |
| FAQPage | Yes | 1 enforced | mainEntity[] |
| ItemList | Yes | ∞ | name, itemListElement[] |
| CreativeWork| No | ∞ | name |
License
This plugin is licensed under GPLv2 or later.
Copyright (C) 2026 philstudio
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
Screenshots
Installation
Using the WordPress Plugin Installer
- Go to WordPress Dashboard Plugins Add New.
- Search for “Schema Structured Data”.
- Click “Install” then “Activate”.
- Add
[schema]shortcodes to your posts or pages.
Manual Installation
- Download the plugin zip file.
- Unzip and upload to
/wp-content/plugins/structured-data-for-schema-org. - Activate via Dashboard Plugins.
- You’re ready! Add
[schema]shortcodes to your content.
FAQ
-
Will I get a Google Rich Snippet?
-
Schema markup may qualify for Rich Snippets, but Google has specific requirements:
- HowTo: Use ONE per page for best results
- FAQPage: Only ONE per page is eligible (plugin enforces this limit)
- ItemList: Works well for ranked lists
- CreativeWork: SEO benefit only, no Rich Result
Valid schema improves how Google understands your content, but Rich Results depend on content quality, page structure, and Google’s algorithms.
-
Can I use multiple shortcodes on one page?
-
Yes, but with limitations:
- HowTo: Multiple allowed, but Google may only show one as Rich Result
- FAQPage: Only the FIRST one is processed (Google limit enforced by plugin)
- ItemList: Multiple allowed
- CreativeWork: Multiple allowed
-
How do I verify the schema is working?
-
- Publish your page
- Visit Google Rich Results Test
- Enter your page URL
- Check for detected schema types
For syntax validation, use Schema Validator.
-
Why does FAQPage only work once per page?
-
Google explicitly states that only one FAQPage schema per page is eligible for Rich Results. This plugin enforces that limit to prevent invalid markup and improve your chances of getting a Rich Result.
-
What is the Q|A format for FAQPage?
-
Each line should contain a question and answer separated by a pipe character (
|):Question 1 | Answer 1 Question 2 | Answer 2 Question 3 | Answer 3The plugin automatically parses this format and generates proper FAQ schema markup.
-
Can I hide the HTML output but keep the schema?
-
Yes! Add
hidden="1"to any shortcode:[schema type="FAQPage" name="FAQ" hidden="1"] Question | Answer [/schema]This outputs the JSON-LD schema without visible HTML on the page.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Structured Data for Schema.org” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Structured Data for Schema.org” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- 🎉 Initial release
- ✅ Multi-schema support: HowTo, FAQPage, ItemList, CreativeWork
- ✅ FAQPage limited to 1 per page (Google compliance)
- ✅ Q|A format for FAQ content (simple, no nested shortcodes)
- ✅ ItemList supports ol/ul via
items-tagattribute - ✅
hiddenattribute for schema-only output - ✅ WordPress Coding Standards compliant





