Manual JSON Editor
Code editor for full control over your schema markup
Manual JSON Editor
For advanced users who want full control over their schema markup, the Manual JSON Editor provides a code editor with professional-grade tools.
Features
- Syntax-Aware Editor: Edit JSON-LD with a comfortable editing experience
- Real-Time Validation: Errors are highlighted as you type
- Format / Prettify: Auto-indent and format your JSON with one click
- Minify: Compress your JSON for production
- Line Numbers: Track your position in large schemas
- Character & Line Count: Live stats showing the JSON size
- Variable Support: Insert dynamic WordPress variables that are replaced when rendering
- URL Selector: Choose which page the schema is assigned to
Dynamic Variables
The Manual Editor supports dynamic variables that are automatically replaced with WordPress data when the schema is rendered on the page:
| Variable | Description |
|---|---|
| `{{post_title}}` | Current post/page title |
| `{{post_url}}` | Current post/page URL |
| `{{post_date}}` | Publication date |
| `{{post_modified}}` | Last modification date |
| `{{post_excerpt}}` | Post excerpt |
| `{{post_thumbnail}}` | Featured image URL |
| `{{author_name}}` | Post author name |
| `{{site_name}}` | WordPress site title |
| `{{site_url}}` | WordPress site URL |
| `{{site_logo}}` | Site logo URL |
Validation
Click Validate to run a full check:
- Syntax Check: Is the JSON valid? Line-by-line detection pinpoints exactly where errors are
- Schema.org Structure: Does it have @context and @type? Are they correct?
- Required Fields: Are all required fields present for the type? (e.g. Product requires "name", Article requires "headline")
- Google Guidelines: Does it comply with Google's structured data requirements?
Validation runs in real time — you will see a status indicator showing whether your JSON is valid or has errors.
Variables Panel
Click the Variables button to open the Variables Panel, which shows all available dynamic variables. Click any variable to insert it at the cursor position.
Code Examples
Example with Dynamic Variables
json
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "{{post_title}}",
"url": "{{post_url}}",
"datePublished": "{{post_date}}",
"dateModified": "{{post_modified}}",
"description": "{{post_excerpt}}",
"image": "{{post_thumbnail}}",
"author": {
"@type": "Person",
"name": "{{author_name}}"
},
"publisher": {
"@type": "Organization",
"name": "{{site_name}}",
"url": "{{site_url}}",
"logo": {
"@type": "ImageObject",
"url": "{{site_logo}}"
}
}
}