Intermediate2min read
Manual JSON Editor
Full-control JSON-LD editor with syntax highlighting, dynamic variables and real-time Schema.org validation.
Manual JSON Editor
For users who want complete control over their JSON-LD. Write or paste schema code directly — the editor handles validation, formatting and dynamic variable resolution.
Available on: Basic plan and above.
When to use the Manual Editor instead of the Smart Builder
- Schemas with deeply nested or unusual properties the Builder does not expose
- Migrating schemas from another plugin (paste the existing JSON directly)
- Schemas using
@graph(multiple entities in a single block) - Advanced customization of AI-generated schemas
- Reusable templates using dynamic variables
Editor features
- Syntax highlighting — clear, readable JSON-LD
- Real-time validation — errors highlighted as you type
- Format / Prettify — auto-indent with one click
- Minify — compress for production
- Line numbers — track your position in large schemas
- Variable panel — click to insert dynamic variables at cursor position
Dynamic variables
Variables are replaced automatically with WordPress data when the schema renders on the page:
| Variable | Output |
|---|---|
| `{{post_title}}` | Current post/page title |
| `{{post_url}}` | Full post/page URL |
| `{{post_date}}` | Publication date (ISO 8601) |
| `{{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}}` | Main site URL |
| `{{site_logo}}` | Site logo URL |
This makes the Manual Editor ideal for reusable schemas: create one Article template with variables, assign it to all blog posts — each one gets its own correct data automatically.
Validation checks
Clicking Validate runs:
- JSON syntax — is the JSON valid? Exact line pinpointing for errors
- Schema.org structure — does it have
@contextand@type? - Required fields — are all Google-required properties present for the declared type?
- Google guidelines — compliance check against rich results requirements
Code Examples
Reusable Article schema 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}}"
}
}
}Was this page helpful?
Thanks for the feedback!