Elementor JSON Structure Map

This page provides a comprehensive map of the Elementor JSON data structure, which is used to store and manage page content and configurations. Understanding this structure is essential for developers working with Elementor’s import/export features or building custom integrations.

General Structure

The top-level JSON object for an Elementor document contains the following key properties:

  • title: The document’s title.
  • type: The document type (e.g., page, header, footer, popup).
  • version: The data structure version (currently 0.4).
  • page_settings: An object containing settings from the “Page Settings” panel.
  • content: An array of objects representing all page elements.

Element Types

Elementor distinguishes between layout elements and widget elements:

1. Layout Elements (Sections, Columns, Containers)

These elements serve as structural wrappers and can contain other elements. Their structure includes:

  • id: A unique 7-character alphanumeric string.
  • elType: The element type (section, column, or container).
  • isInner: A boolean indicating if it’s an inner section.
  • settings: An object containing the element’s configuration (styles, layout, etc.).
  • elements: An array of child elements.

2. Widget Elements

These represent individual widgets like headings, images, or buttons. Their structure includes:

  • id: A unique 7-character alphanumeric string.
  • elType: Always widget.
  • widgetType: The specific widget name (e.g., heading, image, button).
  • settings: An object containing the widget’s content and style settings.
  • elements: Usually an empty array, unless the widget supports nested elements.

Common Settings Schema

Most elements share a common set of settings for layout and advanced styling, such as margins, padding, and responsive visibility. These are stored within the settings object of each element.

For more detailed information and developer resources, visit the official Elementor Developer Documentation.