Skip to main content
BoxBuilder uses a single frontend template file to render the box builder UI on product pages. You can customize the builder’s output using hooks, CSS, or by modifying the template directly in child themes.

Frontend Template

The builder UI is rendered from a single template file:
This template handles the complete builder interface including:
  • Product grid / list layout
  • Box summary panel
  • Progress indicators
  • Gift message field
  • Add to Cart button
  • Size selector (Pro)

Template Variables

The following variables are available inside the template: The template also reads global plugin options:

Customizing with Hooks

The recommended way to add content before or after the builder is with hooks:

Customizing with CSS

For visual changes, use the Appearance settings or add custom CSS. All BoxBuilder elements are namespaced under .boxbuilder-wrap with .boxbuilder- prefixed class names.

Customizing with JavaScript

BoxBuilder’s frontend is a Vue.js application. You can interact with it via the localized boxbuilderData object:
Modifying the Vue.js application directly is not recommended as it may break with plugin updates. Use hooks and CSS for customizations whenever possible.