Site extensions let you add your own UI and behavior to the live pages of a Wix site. They render alongside a site's own pages and widgets, so they become part of what visitors experience.
Use site extensions to do the following:
Add pages and components to a site: Use site pages for full pages, site widgets for components Wix users place anywhere, and Editor React components for widgets with the editor's own controls on Studio Two and Wix Harmony sites.
Extend Wix business solution pages: Use site plugins to embed components in slots, which are placeholders Wix exposes on its business solution pages.
Run scripts on a site: Use embedded scripts to inject HTML or JavaScript into a site's pages.
Share logic and data with components: Use context providers and function libraries to share data and reusable calculations for Studio Two sites.
The implementation and support for site extensions differ across Wix development paths, such as extending websites or building apps. Before you start, check your development path and project type to understand which functionality is available to you.
Wix provides several extensions. Learn how to choose an extension type for the functionality you intend to build.
This reference documents the files, code, and configuration needed to add a site extension to a Wix CLI project or a Studio Two site. Depending on the extension type, you may need to set up one or more of the following:
This reference documents the files your project generates when you add a site extension. The files and where they go depend on the extension type. For example, an embedded script has a configuration file and an HTML fragment that Wix injects into the page.
This reference documents the code you implement in the extension files. Depending on your project type and extension, you may need to implement the following:
UI: What visitors see and interact with, such as pages and widgets.
Functionality: What the extension does on a site. Use the Site API to access features of a live site, such as visitor consent, and Wix APIs to read and write data from Wix business solutions. Use the Editor API in the settings panel of a site widget.
Manifest: A configuration object that declares to the editor what Wix users can customize or connect to. For example, an Editor React component has a React component that renders the UI, and a manifest that lists which props Wix users can customize and which elements they can style.
This reference documents the identity your code runs as and the permissions it needs. Depending on your project and extension, you may need to consider the following:
Identity: Your code runs as the visitor or member viewing the page.
Permissions: A call works only if that identity's permissions allow it and, for apps, the permission scopes the app declares also allow it.
Elevation: For some restricted methods, you must elevate the call from backend code. Elevation runs the call with higher authorization than the visitor has.