Skip to content

Metafields

Six of Strata’s features read product metafields: the scale drawing, the spec sheet, the made-to-order lead times, the size guide, the star rating and numbered editions / pre-orders. Metafields are how a single product template can describe a whole catalogue — the block lives in the template, the values live on each product.

Nothing here is required. Every block that reads a metafield renders nothing at all when the data is absent, so the theme works on day one and gets more informative as you fill it in.

You choose the namespace. The theme never has a metafield key written into its code: each block or setting names the key, and the keys below are only the ones the theme suggests and the ones our demo stores use. If your store already keeps measurements in specs.width, point the blocks at that instead and nothing else changes.

Feature Namespace and key Shopify type Where it appears Without it
Size reference custom.width Dimension Product page, Size reference block — the left-to-right measurement Not drawn; the other dimensions still are
Size reference custom.height Dimension Same block — the bottom-to-top measurement Not drawn
Size reference custom.depth Dimension Same block — the slab behind the front face The drawing is flat instead of a box
Size reference all three missing — — The whole block renders nothing
Spec sheet custom.material Single line text Product page, Spec sheet — the Material row That row is dropped
Spec sheet custom.weight Weight Spec sheet — the Weight row That row is dropped
Spec sheet custom.care Single line text Spec sheet — the Care row That row is dropped
Spec sheet custom.width / custom.height / custom.depth Dimension Spec sheet — the Dimensions row. The same values as the drawing, not a second copy That row is dropped
Spec sheet no values at all — — No table is shown
Made to order custom.production_status Single line text — made or ready Product cards (badge) and the Production status block. Forces the status whatever the stock says The status follows stock: out of stock + “continue selling” = made to order
Made to order custom.made_days Single line text — 3-5 or 4 Badge and block: that product’s own production time Falls back to Production time in Theme settings → Product cards → Badges, and to the block’s Made to order numbers
Made to order custom.ready_days Single line text — 1-2 or 1 Production status block: that product’s own ready-to-ship time Falls back to the block’s Ready to ship numbers
Size guide custom.size_guide Rich text (plain text works too) Product page, Size guide panel — the per-product part, first The panel shows only the fixed text, the page and/or the ring table; with none of them, no button
Rating reviews.rating Rating (Shopify’s standard definition; every reviews app writes it) Stars on product cards (Theme settings → Product cards → Show rating) and the Rating block on the product page; AggregateRating in the page’s structured data No stars anywhere, nothing in the structured data
Rating reviews.rating_count Integer (standard definition) The review count next to the stars Stars without a count; no AggregateRating
Editions custom.edition_size Integer Badge on cards and a line in Production status: “Edition of 12”; 1 = “One of a kind” No edition badge or line
Editions custom.edition_number Integer Turns the badge and line into “3 of 12” “Edition of 12”
Pre-order custom.release_date Date While the date is ahead the product is sold as a pre-order: badge “Pre-order · ships 12 Dec”, the same day in Production status and on the cart line, and a timeline counted from that day The stock decides the status, as usual

Where the theme lets you name the key yourself:

Key named in Setting Default
Theme settings → Product cards → Badges Production time metafield custom.made_days
Theme settings → Product cards → Badges Forced status metafield custom.production_status
Theme settings → Production Release date metafield custom.release_date
Theme settings → Product cards → Badges Edition size metafield / Edition number metafield custom.edition_size / custom.edition_number
Product page → Size guide Per-product metafield (the Page setting takes a page reference metafield too, via dynamic source) custom.size_guide
— reviews.rating / reviews.rating_count are read as they are: the standard keys every reviews app uses fixed
Product page → Size reference Width metafield / Height metafield / Depth metafield custom.width / custom.height / custom.depth
Product page → Spec sheet Row 1–6 metafield (several keys, comma-separated, are joined with ×) custom.material / custom.weight / custom.width, custom.height, custom.depth / custom.care
Product page → Production status Force status, Ready to ship: ships in, Made to order: ships in, via dynamic source —

The Material guide deliberately uses none. A shop sells the same few materials across its whole catalogue, so they are blocks in the template — see that chapter for why. Live personalization and the 3D spotlight use no metafields either: one is a line item property, the other is product media.


Metafield definitions are created once per store. Values are then filled in per product.

  1. In the Shopify admin, go to Settings → Custom data.
  2. Click Products.
  3. Click Add definition.
  4. Fill in:
    • Name — what you want to see in the admin, e.g. “Width”.
    • Namespace and key — click Edit next to the generated key and set it to custom and width. (Shopify suggests custom.width by itself for a definition named “Width”.)
    • Description — optional, but it is what your future self reads.
    • Select type → Dimension for width, height and depth; Weight for weight; Single line text for material, care, production status and the day ranges.
  5. Leave validations alone unless you want them. For Dimension you may set a minimum of 0.
  6. Save.
  7. Repeat for each row of the table above that you want to use.

Open a product in Products, scroll to the Metafields card at the bottom, and fill in the fields. A Dimension field has a number and a unit selector; a Weight field likewise.

For a large catalogue, use the bulk editor: select products in the product list, click Bulk edit, then Add columns and choose your metafields. Or export a CSV, fill the metafield columns and re-import.

Every block that reads product data — Size reference, Spec sheet, Size guide, Production status, the badges — has a setting that names the metafield it reads, as namespace.key. The defaults are the keys in the table above, so with those definitions there is nothing to connect: create them, fill them in, and the blocks show the values. Named your definitions differently? Type your key into the setting.

The theme editor’s dynamic source icon (the small database symbol at the end of a text field) still works for any other text setting — a heading, a label — but a block’s data never depends on it.

A dynamic source can only point at a definition that exists: a template that carries one is rejected by Shopify on any store without that definition (“Dynamic source does not exist”), and the Theme Store installs a theme on stores that have none yet. A key is only a name — a product without that metafield simply shows nothing — so Strata’s templates install anywhere and start showing data the moment the definitions exist.

  1. Create custom.width, custom.height, custom.depth (Dimension) — the scale drawing is the feature customers notice.
  2. Measure your products, in the bulk editor.
  3. Add the Size reference block — it reads them as they are.
  4. Then, if you want the technical table: custom.material, custom.weight (Weight), custom.care, and the Spec sheet block.
  5. Only if your lead times differ per product: custom.production_status, custom.made_days, custom.ready_days. A single global production time in Theme settings is enough for most shops.