30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

Duplicate Elementor Element

elementor/duplicate-element deep-clones an element, including every nested child, and inserts the clone as the next sibling of the source.

IDs are regenerated throughout the cloned subtree.

At a glance

Abilityelementor/duplicate-element
ToolsetElementor — toolset/elementor
GroupElementor › Elements & Widgets
RequiresElementor, active on the site
Capabilitymanage_options
SafetyWrites data
RepeatableNot idempotent — each call changes the row set, so re-running is not a no-op
Ships inAcrossAI Abilities Manager 0.0.34 and later

Why the IDs have to change

Element IDs must be unique within a document. Two elements sharing an ID is a state Elementor does not expect, and the symptoms — an edit landing on the wrong element, a duplicate that disappears — are hard to trace back to the cause.

A naive clone copies the IDs along with everything else, producing a document where every element in the duplicated subtree has a twin. The editor then cannot tell them apart, and an edit to one can land on the other.

So every ID in the clone is regenerated — the element and all its descendants.

That has one consequence worth knowing: anything referencing an ID inside the source subtree does not carry across. Custom CSS targeting a specific element ID, an anchor link to a section, a motion effect keyed to an element — all of those still point at the original.

Inserting as the next sibling rather than at the end is deliberate. A duplicate belongs next to its source, and moving it afterwards is one call.

Not idempotent — each call produces another copy.

Input

NameTypeRequiredWhat it is
post_idintegerYesThe post holding the Elementor document.
element_idstringYesThe seven-character hex element ID.

What comes back

NameTypeWhat it is
post_idintegerThe post written.
element_idstringThe ID of the element created or affected.
elementobjectThe element as stored.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Duplicate that pricing card.

It resolves to one call:

{
  "ability": "elementor/duplicate-element",
  "parameters": {
    "post_id": 412,
    "element_id": "a1b2c3d"
  }
}

Worth knowing

  • Every ID in the clone is new. References to the old IDs do not follow.
  • Custom CSS and anchor links keyed to an element ID still point at the source.
  • The clone lands as the next sibling.
  • Not idempotent.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading