Coming soon GiftPrint is launching on the Shopify App Store shortly. No install needed to try it. Open the live demo →

Storefront widget

Widget settings

All widget configuration lives in the GiftPrint app, not in the Shopify theme editor.

This is a platform constraint, not a design choice: theme app blocks cannot read section.settings, so any value you typed into the theme editor would never reach the widget. Instead, GiftPrint writes your settings to a shop metafield (giftprint.settings) that the widget reads on every page load. Change a setting once and it applies everywhere the block is placed.

When you open the block in the theme editor, you'll see a short notice with a link back to the app settings — that's expected.

Adding the block

  1. Online StoreThemesCustomize
  2. Open a Product or Cart template (the block is allowed on both)
  3. Add blockGift Note Widget
  4. Position it where you want — under the Add to Cart button works well
  5. Save

There is nothing to configure here. Continue in the GiftPrint app.

Available settings

GiftPrintSettingsGeneralStorefront Widget

SettingTypeDescription
Enable widgetCheckboxTurns the widget on for the storefront. When off, the block renders nothing.
PriceNumberWhat you charge for a gift note. 0 makes it free.
Show "To" fieldCheckboxWhether customers can enter a recipient name.
Show "From" fieldCheckboxWhether customers can enter a sender name.
Template selectionSelectPicker — customers choose a design and see a live card preview (Starter/Pro). Fixed — your default template is always used, and the widget renders as a plain message form with no grid and no preview.

Click Save. Changes take effect on the next storefront page load.

Hidden fields

Turning off To or From removes the input entirely — the value is never collected, never added to the order, and the printed card skips that line. Existing orders are unaffected.

Template selection and your plan

Picker mode is a Starter/Pro feature. On the FREE plan it is automatically saved as Fixed — the widget still collects messages, it just always uses your shop's default template and shows no template grid or preview. You'll see a notice when this happens.

Set the default template in the same tab under Default Template. All 11 designs are available on every plan:

  • Style: Minimal, Botanical, Luxury, Playful
  • Occasion: Holiday, Birthday, Thank You, Wedding, Congratulations, Baby Shower, Sympathy

Values GiftPrint derives for you

Some values are written to the metafield automatically from your other settings — you don't set them directly:

ValueWhere it comes from
charLimit, optimalCharLimitYour selected page format. A 3×3" card allows far less text than A6, and the widget's character counter follows.
defaultTemplateSettings → General → Default Template
variantId, productIdThe hidden "Gift Note Service" product, created when you set a price

This is why changing your page format also changes the character limit customers see on the storefront.

Changing how the widget looks

Colors, fonts, spacing and radius are controlled with CSS custom properties, which work in any theme — see CSS variables.

For full control over behavior (or to build your own UI on top of GiftPrint's hidden inputs), see the JavaScript API.

Localization

Widget text is loaded from the extension's translation files, starting with the bundled en.default.json. Shopify serves the file matching the customer's store language automatically. Adding a language requires editing the app extension and redeploying it — it is not something you can change from the theme editor.

Troubleshooting

Widget doesn't appear on the storefront

  • Check that Enable widget is on in GiftPrint settings
  • Confirm the block is added to the Product (or Cart) template and the theme is saved
  • Clear your browser cache and reload

Customers can't choose a template

  • Picker mode requires Starter or Pro. On FREE it is saved as Fixed.
  • Confirm Template selection is set to Picker in GiftPrint settings.

Character limit looks wrong

  • It follows your page format. Change the format in Settings → General → Print Settings and save — the widget picks up the new limit.

For more help, see Troubleshooting.