Limited-time launch offer 20% off Pro — first payment and every renewal — with code See pricing

Module — 6 operations

Elementor (Pro)

Popups, dynamic tags and brand kits — the Elementor Pro surfaces, behind one gate.

Needs: SiteHelm Pro on a licensed site, and Elementor Pro.

Cue 2 — first light

Before you call anything here

Note 1

Every operation here runs the same four checks in the same order — licence, capability, Elementor, Elementor Pro — so an unlicensed or under-privileged caller learns nothing about what the site runs.

Note 2

A popup is created with no trigger armed: it shows to nobody until it is armed in a second, separate call, and its open and close behaviour comes from a fixed allowlist written in whole groups, so a half-configured popup cannot go live by accident.

Note 3

A dynamic-tag binding is verified against the registry the site actually has before anything is written — no guessed tag names, no silently broken bindings.

Note 4

Switching the active brand kit changes the look of every page using globals, so it is declared high risk and rollback is required — the one-call undo exists before the switch happens.

Reads — 2

What it can tell you

A read still asks WordPress for a capability against the object. There is no anonymous read anywhere in the surface.

elementor-dynamic-tag-list

elementor-read

Lists the dynamic tags this site registers, sorted, at most 200 with the true count and a truncated flag, alongside the Elementor Pro version

needs edit_posts

Read
elementor-brand-kit-list

elementor-read

Lists the library's kits oldest first with title, whether the elementor_active_kit option names it, and its global colour and typography counts (system and custom added together)

needs edit_theme_options

Read
Writes — 4

What it can change

Every one of these is previewed before it runs, snapshotted before it changes anything, and verified afterwards by reading the site back. The chips are the policies the operation itself declares.

elementor-popup-create

elementor-write

Creates a published popup with an empty document and no trigger armed, so it shows to nobody until elementor-popup-settings-set gives it one

needs edit_theme_options

write risk rollback supported
elementor-dynamic-tag-set

elementor-write

Binds one widget setting to one dynamic tag through the ordinary document write path, after checking the tag against the site's own registry and the setting against the widget's declared props

needs edit_post

write risk rollback supported
elementor-popup-settings-set

elementor-write

Writes five allowlisted display settings — page-load delay, exit intent, scroll offset, and the two prevent-close switches — in whole coupled groups, merged into the stored row rather than replacing it

needs edit_theme_options

write risk rollback supported
elementor-brand-kit-apply

elementor-write

Switches the active kit to a validated kit post, snapshots the previous option and invalidates both kits' cached CSS

needs edit_theme_options

write risk rollback **required**
Cue 5 — day

Keep reading