Appearance
Use metafields and dynamic sources in Guild
Documentation scope: Guild 0.1.x pre-release builds. The exact public release version will be confirmed in the changelog before Theme Store publication.
Use this guide when information such as care instructions, materials, dimensions, or delivery details should differ between products without creating a separate template for each product. The normal order is define the Shopify field → enter values on the relevant products/variants → connect a compatible Guild setting. Guild reads the data; it does not create or populate metafields.
1. Create a definition in Shopify Admin
- Go to Settings > Custom data / Metafields and metaobjects in Shopify Admin (the exact navigation label can change), or open a product's metafield area and add a definition.
- Select Products for product-wide content, or Variants for a value that differs by selected variant.
- Choose an appropriate standard definition where one exists; otherwise create a custom one. Record its Namespace and key and select a value type compatible with the Guild block/setting you plan to use.
- Save the definition. A definition by itself is not visible content.
For Shopify's current interface and supported types, see Create metafield definitions and Display metafields in your theme.
2. Enter values on actual products or variants
Open Products in Shopify Admin, choose the product, and fill the relevant metafield value. Save it. Repeat for products needing different text. For variant-specific content, set the value on the individual variants instead. Test at least one product with a value and one without it.
A blank value will not be generated by Guild. Shopify controls which compatible dynamic sources are available in the editor for the previewed resource.
3. Connect the content in Guild
- Open the Guild theme editor and preview a product that already has the metafield value.
- In the Product template, open the section and block that should display the information.
- For a setting that supports dynamic sources, use Shopify's Connect dynamic source icon beside that setting and choose the compatible metafield. The icon is not present on every setting.
- Alternatively, use Guild's Product metafields block and the corresponding configured metafield fields if you need a label/value presentation; for Product-specific conditional items, configure the metafield namespace/key under Show content when.
- Save and check a different product using the same template. Its own value should appear, rather than a hard-coded copy from the first product.
Do not enter a single product's care instructions as static theme-setting text when the same template serves products needing different instructions. The Product page setup guide explains where Product blocks live. For Shopify's connection UI, see Shopify's dynamic-source instructions.
Example: show care instructions only when available
- Define and populate a suitable product metafield for care information.
- Add a Product-specific accordion item or tab in the Product block tree and provide a clear heading, such as Care instructions.
- Connect the content setting to the compatible dynamic source where supported; for Product Accordion/Tabs items, Advanced > Use conditional visibility can use Product metafield has a value with that metafield's namespace and key.
- Test a product with content and one without it. Conditional Product-specific items and their empty parent shell are suppressed when their configured condition is not met.
Use the Sections catalog for the full conditional-visibility behavior rather than duplicating its setting reference here.
Example: update delivery copy for the selected variant
- Define and populate a variant metafield for delivery messaging. Prepare a product-level fallback if desired.
- Open Product shipping, expand Show advanced options, and enable Update by variant.
- Enter the variant Metafield namespace and Metafield key that match your Shopify definition. The initial variant key is
custom.delivery_estimate; the initial product fallback iscustom.shipping_and_delivery. - Test variants with and without values. Guild prefers the selected-variant message and falls back to the configured product metafield; it does not calculate delivery dates from inventory.
See Product shipping troubleshooting for diagnosis.
If the source does not appear or the content is blank
Check in this order:
- The definition is on the correct resource type (product vs variant), and its value type is compatible with that particular Guild setting.
- The product/variant being previewed actually has a saved value.
- The correct namespace/key is configured for blocks that request one; a similar label does not guarantee a matching key.
- The dynamic source is connected to the intended setting; not every setting supports the connection icon.
- Any Show content when, responsive Display mode, and parent Product wrapper conditions permit output.
- An app or custom script has not replaced the block content.
For systematic source/preview checks, see Why content is missing. If Shopify does not offer a source in its editor, check the current Shopify metafield documentation before attempting custom code.
Next: Review the Product page and Troubleshooting. You can contact Guild support without modifying theme code.