Liquid Tool
Turn a section's saved JSON settings and a default-value render statement into a ready-to-paste render statement with the real values baked in — no manual copy-pasting field by field.
Open tool โPaste the JSON for a section or block — including its settings object — straight from a template JSON file.
Paste the {% render %} statement whose keys reference those settings with default placeholder values, e.g. ss.show_homepage.
Every value reference is matched to the matching key in the JSON's settings and swapped in as a real Liquid literal.
The populated render statement keeps your original formatting and line breaks — copy it straight into a template.
Copy the section or block's JSON — from a template file, theme export, or the Shopify editor — and paste it into the first box. It doesn't need to be wrapped in outer braces; a bare "id": { "settings": {...} } fragment works fine.
Paste the {%- render 'snippet', key: ss.setting_id -%} statement into the second box. Each value should reference a setting, e.g. ss.show_homepage — the last part after the dot is matched against the JSON's settings keys.
The third box fills with a new version of the render statement, with each ss.xxx reference replaced by the real value from the JSON — strings quoted, numbers and booleans left bare.
A summary below the boxes shows how many values were populated and flags any keys it couldn't find a match for — those are left untouched rather than guessed at. Use Copy to grab the result.
A render statement like this:
{%- render 'blink-schema-snippet',
visible_homepage: ss.show_homepage,
organisation: ss.organization
-%}
combined with section JSON containing:
"settings": {
"show_homepage": true,
"organization": "BlinkSEO"
}
becomes:
{%- render 'blink-schema-snippet',
visible_homepage: true,
organisation: 'BlinkSEO'
-%}
ss.xxx) and called out in the warnings list — it's never replaced with a guess.
ss.telephone | strip_html) still get the variable part replaced, with the filter chain preserved after it. Values that aren't a simple settings reference at all (already a literal, or something more complex) are left untouched.