Skip to content
Back to skills

Elementor

ASecurity

Build and edit Elementor pages via mcpwp — layout modes, widget keys, flex grids, blueprints, validation, CSS regeneration. Use before working with Elementor data.

  • 4 stars
  • 0 votes
  • 0 copies
  • 8 views
  • Added June 11, 2026
ai-agentssecurity

Works with

  • mcp

Security analysis

A100/100

Scanned June 11, 2026

npx -y skills add Mumega-com/mcpwp-claude-plugin --skill elementor --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Elementor?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Elementor
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mumega-com-elementor/badge)](https://www.skillsdirectory.com/skills/mumega-com-elementor)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: elementor
description: Build and edit Elementor pages via mcpwp — layout modes, widget keys, flex grids, blueprints, validation, CSS regeneration. Use before working with Elementor data.
user-invocable: true
---

# Elementor Building Guide

How to build and edit Elementor pages via mcpwp. $ARGUMENTS = action or page ID.

## Layout Modes

Check `wp_site_info()` → `elementor.layout_mode`:
- **container** (Elementor 3.x+ flexbox): `container > container(isInner:true) > widget`
- **classic** (legacy): `section > column(_column_size sums to 100) > widget`

Most modern sites use container mode.

## Building a Full Page

```
wp_build_page(
  title: "Services",
  sections: [
    {type: "hero", heading: "Our Services", subheading: "What we do best", button_text: "Get Started", background: "#0a0a0a"},
    {type: "features", columns: 3, heading: "Why Choose Us", items: [
      {icon: "fas fa-rocket", title: "Fast", desc: "Lightning speed", button_text: "Learn More", url: "/fast"},
      {icon: "fas fa-shield-alt", title: "Secure", desc: "Bank-grade security"},
      {icon: "fas fa-heart", title: "Reliable", desc: "99.9% uptime"}
    ]},
    {type: "cta", heading: "Ready?", button_text: "Start Now", button_url: "/contact", background: "#1e40af"}
  ]
)
```

## Surgical Edits

### Edit one widget
```
# 1. Get the page structure
wp_get_elementor_summary(id=42)

# 2. Find the widget ID from the summary
# 3. Edit it
wp_edit_widget(page_id=42, widget_id="abc12345", settings={title_text: "New Title", title_color: "#FF0000"})
```

### Edit a section/container
```
wp_edit_section(page_id=42, element_id="xyz789", settings={
  background_color: "#1e293b",
  padding: {top: "80", bottom: "80", unit: "px"}
})
```

### Add a section to an existing page
```
wp_add_section(id=42, position="end", blueprint="cta", params={
  heading: "Get Started Today",
  button_text: "Contact Us",
  button_url: "/contact"
})
```

## Widget Control Keys

**Always check before setting properties:**
```
wp_get_widget_schema(widget_type="button")
```

### Common Widgets Quick Reference

**heading:** `title`, `header_size` (h1-h6), `align`, `title_color`

**button:** `text`, `link` ({url, is_external}), `size` (xs/sm/md/lg/xl), `align`, `background_color`, `button_text_color`, `border_radius`

**icon-box:** `selected_icon` ({value, library}), `title_text`, `description_text`, `position` (top/left/right), `align` (left/center/right), `primary_color`, `title_color`

**image:** `image` ({url, id}), `image_size`, `align`, `link`

**text-editor:** `editor` (HTML string), `align`

## Container Flex Properties

For card grids in container mode:

**Parent container:**
- `flex_direction: "row"`
- `flex_wrap: "wrap"`
- `flex_gap: {size: 20, unit: "px"}`
- `content_width: "boxed"`

**Child card containers:**
- `_element_width: "initial"`
- `width: {size: 30, unit: "%"}` (3-col) / `{size: 47, unit: "%"}` (2-col)
- `background_color: "#FFFFFF"`
- `border_radius: {top_left: "12", top_right: "12", bottom_right: "12", bottom_left: "12", unit: "px"}`
- `box_shadow_box_shadow_type: "yes"`
- `box_shadow_box_shadow: {horizontal: 0, vertical: 4, blur: 20, spread: 0, color: "rgba(0,0,0,0.08)"}`
- `padding: {top: "30", bottom: "30", left: "30", right: "30", unit: "px"}`

## Validation

mcpwp auto-validates and fixes:
- Missing element IDs → auto-generated
- Missing `isInner` on nested containers → auto-set
- Wrong widget keys → renamed if known, warned if unknown
- Widget type typos → fuzzy-matched with "did you mean?" suggestions

Use `dry_run: true` on `wp_set_elementor` to validate without saving.

## CSS Regeneration

After bulk changes, regenerate CSS:
```
wp_regenerate_elementor_css(force: true)        # All pages
wp_regenerate_elementor_css(page_id: 42)        # Single page
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.