The last post covered choosing between metafields and metaobjects. This one is the follow-through for the metafield case: getting a fit note, care guide, or spec from a definition to pixels on the product page, with no app involved. Ten minutes, three steps.
Step 1: define the metafield
In the admin, go to Settings → Custom data → Products and add a definition. Three decisions matter:
- Name is what you'll see in pickers, so make it human: "Fit note."
- Namespace and key is the address Liquid will use, like
custom.fit_note. - Type decides everything downstream: what the editing UI looks like, which theme settings it can connect to, and how it renders. Single line text for a fit note, multi-line for care instructions, dimension or weight types for real specs. Pick the honest type, not "text for everything," because typed values are what make the data usable later.
Step 2: fill in values
Open any product and scroll to the Metafields area; your new definition is there waiting for a value. Enter each product's own fit note. Products without a value simply render nothing, which is the behavior you want, and worth remembering when a block mysteriously "doesn't work" on one product: it probably has no value.
Step 3a: show it with dynamic sources (no code at all)
In the theme editor, open your product template and add or select a text block where the note should appear. Next to the text setting you'll see the dynamic source icon. Click it, and the picker lists the product's connectable fields, filtered to ones compatible with that setting's type. Choose your metafield, save, and the block now renders each product's own value.
Two honest limitations from the docs: dynamic sources work in section and block settings, not general theme settings, and the picker shows only type-compatible fields, so a missing entry usually means a type mismatch rather than a bug.
Step 3b: show it with Liquid (full control)
If you want the value inside custom markup, a theme block or snippet does it directly:
{% if product.metafields.custom.fit_note.value != blank %}
<p class="fit-note">{{ product.metafields.custom.fit_note.value }}</p>
{% endif %}
Two filters are worth knowing. metafield_tag renders the value wrapped in HTML matched to its type, which is the quick path. metafield_text gives you the plain text for use inside your own elements. And for json-type metafields, Liquid can reach into the object directly:
{{ product.metafields.information.burn_temperature.value.temperature }}
Why typed beats pasted
You could paste the fit note into the description and be done. The reason this is worth ten minutes: a value in a typed metafield is data. It can move between themes without re-pasting, render consistently everywhere it's referenced, and feed the machine-readable layer that AI shopping agents actually read. "Runs small, size up" inside a description collage is invisible to an agent deciding whether to recommend your shirt; the same sentence in a metafield can travel into your structured data, which is exactly the layer AgentReady builds from your store.
Next up in this pillar: building a full spec table with metaobjects, for when one field becomes twelve. And if your product data is currently trapped in description HTML across 400 products, we untangle that.

Comments
Every comment here comes from a verified email. Write yours, confirm from your inbox, and it's live.
Loading comments…