WebPage Schema Missing
Issue No: 236
Category: Structured Data & Rich Results
Issue type: Issue
Priority: IMPORTANT
Description
The page is missing a WebPage schema block (or appropriate subtype), reducing the ability of search engines to classify the page's content type and intent.
How do we capture it
- Parse all crawled pages for JSON-LD with
"@type"matchingWebPage,AboutPage,ContactPage,FAQPage,SearchResultsPage,ProfilePage, orCheckoutPage - If absent → trigger issue
What to store
StructuredDataAudit record with schemaType = WebPage, issueNumber = 56, detectedSubtype set to the actual subtype found (e.g. AboutPage), plus StructuredDataField rows:
| Field | Type | Comment |
|---|---|---|
has_breadcrumb | boolean | breadcrumb BreadcrumbList linked in the block |
has_is_part_of | boolean | isPartOf linking to the parent WebSite entity |
detected_subtype | text | Specific subtype found, e.g. AboutPage, ContactPage |
Core audit fields used: isPresent, hasName, hasUrl, hasDescription, rawJson
Condition for trigger
- Trigger Rule 1: Schema absent
- Target Field:
isPresent - Evaluation Logic:
isPresent = false - Severity: IMPORTANT
- Diagnostic Message: "No WebPage type block found on this page."
- Target Field:
Sources
Long description
WebPage classifies a single page's purpose. Subtypes give greater specificity:
| Page | Recommended Type |
|---|---|
| About Us | AboutPage |
| Contact | ContactPage |
| Search Results | SearchResultsPage |
| User Profile | ProfilePage |
| Checkout | CheckoutPage |
Minimal example:
{
"@context": "https://schema.org",
"@type": "AboutPage",
"name": "About Us — Example Corp",
"url": "https://www.example.com/about",
"description": "Learn about our mission and team.",
"isPartOf": { "@type": "WebSite", "url": "https://www.example.com" }
}
How to Fix
- Identify the correct subtype for each page
- Add JSON-LD block with
name,url,description - Link to parent site via
isPartOf - Embed
breadcrumbfor pages with navigation hierarchy