Skip to content
Log inSign up free
Site Builder

How widgets and template tags work in your shop

A friendly overview of widgets ([square brackets]) and template tags ({{curly braces}}) — what they are, where you can paste them, and how to fix the common mistakes.

Widgets and template tags are little blocks of text you can drop into your pages, blog posts, or product descriptions to add things like a product card, a contact form, a WhatsApp button, or your shop name. You don't need to know any code. You paste a short tag, and your shop turns it into something useful at the top of the page.

This guide explains how the system works, where you can use it, and what to do when something doesn't render. Every widget has its own how-to article linked below.

The two systems

Your shop has two ways to insert dynamic content into your text:

Template tags run first, then widgets. That means you can use a tag inside a widget. For example:

[whatsapp text="Hello {{site_name}}, I have a question"]Chat with us[/whatsapp]

When the page renders, {{site_name}} becomes your real shop name first, then the WhatsApp widget builds the button with the prefilled message.

Where you can paste them

Widgets and template tags work in every place where you write rich content for your shop:

They do not work inside form labels, settings fields, or anywhere else that expects plain text only.

The basic syntax in 30 seconds

A widget can be one of two shapes:

Self-closing — one tag, no body. Used by widgets that don't need any text inside them:

[product id=12]
[contact_info]
[shipping_table]

Paired — opening tag, content, closing tag. Used by widgets where you write the inner text yourself:

[callout style=tip title="Save 10%"]Use code WELCOME at checkout.[/callout]

[whatsapp]Chat with us on WhatsApp[/whatsapp]

Each widget accepts attributes inside the opening tag, separated by spaces. Values can be unquoted for single words (style=tip) or wrapped in double quotes for anything with spaces (title="Save 10%").

The 6 how-to articles

Each group of widgets has its own help article with full examples, attributes, and use cases:

Common gotchas

Nothing happens, the widget shows up as plain text. Almost always a typo. Check that the brackets and tag name are correct — [product id=12], not {product id=12} or [Product id=12] (tag names are lowercase). Curly braces are only for template tags.

The widget says "Product not found in this shop." The product ID points to a product that doesn't belong to your shop, was deleted, or is hidden. Open the product in your dashboard and copy the correct ID from the URL.

A template tag like {{site_email}} is empty. The matching field on your shop is empty. Go to Settings → Contact info and fill it in. Save. Refresh the page.

The page looks fine in preview but breaks for shoppers. Some widgets (like the contact form) only fully work for real visitors, not in your own admin preview. Open your shop in a private browser window to test as a customer.

Tags inside HTML attributes don't work. Widgets cannot be nested inside HTML tags you've written by hand. Put the widget on its own line.

Editor picker (the easy way)

You don't need to memorise widget syntax. Inside your dashboard, every rich-text editor has a "+ Insert widget" button. Click it, pick the widget you want, fill in the fields, and the editor pastes the correct syntax for you. Same for template tags — there's a "+ Insert tag" picker that drops {{site_name}}, {{site_email}}, etc. into the cursor position.

Use the picker until you remember the syntax of the widgets you use most.

Still need help?

Can't find what you're looking for? Reach out and we'll get back to you.

Contact support
WhatsAppsupport@myduka.link+254797 560 650