Add Section/Container is a WordPress ability from Ultimate Addons for Elementor — usable via Easy MCP AI, which connects Claude, ChatGPT, and any AI assistant to your site.

Install Free Plugin →

Add Section/Container

Write

Adds a new structural layout element (a section with columns on legacy sites, or a flex container on container-mode sites) to an Elementor post.

Requires the Ultimate Addons for Elementor (Header Footer & Elementor) plugin on WordPress 6.9+ (the WP Abilities API). No ability registers unless the plugin's 'Enable AI Tools' master switch (uae_mcp_settings.enable_abilities) is turned on in settings. Most abilities require the 'manage_options' capability; a smaller set of read/discovery abilities (template and page listing, the Elementor builder read/list/schema abilities, active-template lookup, display-rule locations, and design tokens) instead require only 'edit_posts' or 'read'. Abilities that act on a specific page, post, or template additionally check the current user's per-object 'edit_post' (or 'delete_post') capability on that item. Separately, every non-readonly (Write or Destructive) ability is gated behind a site-wide 'Allow Modifications' setting at registration time: if it is off, none of those abilities are even registered with the WP Abilities API, regardless of capability checks — this covers all template/page CRUD, widget/extension toggles, display-rule updates, theme/settings changes, and the Elementor builder writes alike, not just the builder ones. Eight of those abilities (the seven Elementor page-builder writes — build, insert-widget, update-widget, remove-element, move-element, add-section, add-column — plus pages-create) additionally re-check this same setting explicitly inside execute() as a redundant safeguard.

What it does

Given post_id, an optional columns array of percentages (default [100], must sum to 100 or a 400 error is returned), an optional is_inner flag for nesting inside an existing column/container, and a position, the handler builds the structural element and either appends/prepends it at the tree root or inserts it relative to another element. When is_inner is true and position is append/prepend, it auto-locates the first suitable column/container to nest inside. The updated tree is saved. Its instructions state this is for one-off structural additions to an already-built post, not for building layouts from scratch.

See it in action

You ask your AI assistant

"Add a new section with 2 equal columns (50/50) to the end of post 42."

Inputs

Name Type Required Description
post_id integer Yes Any Elementor-enabled post ID (page, post, or HFE template).
columns array No Array of column size percentages, must sum to 100 (default [100]); e.g. [50,50], [33,34,33], [25,75].
is_inner boolean No If true, creates a nested inner section/container inside a column (default false).
position string|object No Where to insert: "append" (default), "prepend", {"after":"element_id"}, {"before":"element_id"}, or {"inside":"element_id"}.

Returns

Returns success, the new section_id, an array of column_ids created inside it, the layout_mode, and a message suggesting the column_ids for follow-up widget insertion.

Permission

permission_callback requires current_user_can('edit_posts'); execute() also calls check_modifications_allowed() (403 unless 'Allow Modifications' is enabled) and validate_elementor_post() (Elementor-post validation plus current_user_can('edit_post', ID)).

Newsletter

The AI + WordPress space moves fast. Keep up.

New tools, workflow ideas, and product updates — be the first to know what's next.

No spam, unsubscribe anytime.