About Site Widget Extensions

Site widgets are draggable UI components that Wix site owners can add to pages on their website. They enhance a site's functionality by displaying content or enabling site visitors to perform various tasks.

When working in the site editor, site owners can adjust the size of the widget, reposition it, and customize it.

Implementation options

You can add a site widget extension using:

  • Wix Blocks: Create a site widget in Wix's native app editor. Design your widget using visual layout and design tools, and code your business logic using Velo, Wix's native coding solution.
  • Wix CLI: Create a site widget using the CLI, with your code by default deployed on our servers. The creation and setup process of your widget takes place in the terminal. Then, to edit your widget, you write code directly in your CLI app project's files.
  • Self-managed custom element: Create a site widget using custom element technology, with your code deployed on your own server. The custom element is essentially a new HTML tag that you define, which is made available in the Wix editors as a widget.
  • Editor React Components: An AI-first feature available exclusively on Wix Harmony. Build site widgets using the React framework with the same panels, controls, and capabilities available to internal Wix developers.

Choosing your implementation

Here are some factors to consider when choosing which implementation to work with:

  • Site widgets currently can't be pinned to a specific location on a page. If your app requires this, best to use an embedded script component.
  • Site widgets built with Wix Blocks support all the functionality available in Wix's editor elements. If your extension should include functionality that isn't supported, use the Wix CLI or a self-managed custom element.
  • Site widgets built with Wix Blocks can connect to a site's color and typography themes, and support advanced capabilities for configuring the widget customization experience in the editor.
  • Editor React Components are only supported on Wix Harmony.
  • For a detailed comparison of custom elements and Editor React Components, see Custom Elements vs. Editor React Components.

Editor compatibility

Wix Blocks apps aren't supported in the Wix Harmony editor. Existing Blocks apps remain available for purchase on the Wix App Market for Wix Editor and Wix Studio sites. To learn more, see About Wix Harmony and Blocks.

Interact with a user site

The way to interact with a user site from your site widget extension depends on your implementation. For widgets created with Blocks, use Velo. For widgets created via the CLI, use the Site API.

Note: Most widget types can't call Wix APIs while being previewed in the site editor. Editor React Components are the exception and can call platformized APIs in the site editor.

Essential widgets

An essential widget is crucial to your app's functionality. You can set a widget to be essential only if the widget is added as part of a site page extension. Deleting an essential widget from a site or deleting the section or page that contains it deletes the entire app. Wix users can add an essential widget to a site only once and can't duplicate it.

Note: Essential widgets are not available for Editor React Components.

Sandboxing in the editor

Note: Essential widgets are not available for Editor React Components. You can set a widget to be essential only if the widget is added as part of a site page extension.

Important: The format of the Wix editor URL is changing due to new cookies introduced for authorization. The new URL format is {username}-{sitename}.{editor|studio|harmony}.wix.com. If your app uses CORS and whitelists specific origins, update your allowed origins to match the new format to avoid blocked requests.

Learn more about handling sandboxing in the editor.

Did this help?