40 lines
1.5 KiB
Markdown
40 lines
1.5 KiB
Markdown
## MODIFIED Requirements
|
|
|
|
### Requirement: Sitemap and robots
|
|
The site MUST provide:
|
|
|
|
- `sitemap-index.xml` enumerating indexable pages (and/or referencing sitemap shards)
|
|
- `robots.txt` that allows indexing of indexable pages
|
|
|
|
The sitemap MUST include the blog surface routes:
|
|
|
|
- `/blog`
|
|
- blog post detail routes
|
|
- blog page detail routes
|
|
- blog category listing routes
|
|
|
|
`robots.txt` MUST reference the sitemap using an absolute URL for the production domain.
|
|
|
|
#### Scenario: Sitemap index is available
|
|
- **WHEN** a crawler requests `/sitemap-index.xml`
|
|
- **THEN** the server returns an XML sitemap index (or sitemap) listing `/`, `/videos`, `/podcast`, `/about`, and `/blog`
|
|
|
|
#### Scenario: Blog URLs appear in sitemap
|
|
- **WHEN** WordPress content is available in the cache at build time
|
|
- **THEN** the generated sitemap includes the blog detail URLs for those items
|
|
|
|
#### Scenario: Robots references sitemap with absolute URL
|
|
- **WHEN** a crawler requests `/robots.txt`
|
|
- **THEN** the response contains a `Sitemap:` line with an absolute URL to `/sitemap-index.xml`
|
|
|
|
## ADDED Requirements
|
|
|
|
### Requirement: Organization and website structured data
|
|
The home page SHOULD include JSON-LD structured data for the site and its owner/organization.
|
|
|
|
If present, the JSON-LD MUST be valid JSON and MUST use a recognized schema type.
|
|
|
|
#### Scenario: Home page includes valid JSON-LD
|
|
- **WHEN** a crawler requests `/`
|
|
- **THEN** the HTML contains a JSON-LD script tag that parses as valid JSON
|