Skip to content
Content
Skill

/migrate-divi-to-bricks

Use when the user says 'migrate divi to bricks', 'convert divi to bricks', or 'rebuild divi pages in bricks'. Parses Divi shortcode content, maps modules to Bricks elements, and generates draft duplicates for review.

From plugin
respira-wordpress-skills
5155 skills

Claude Code

$ npx -y skills add respira-press/agent-skills-wordpress --skill migrate-divi-to-bricks --agent claude-code

SKILL.md

migrate-divi-to-bricks.SKILL.md
name: migrate-divi-to-bricks
description: "Use when the user says 'migrate divi to bricks', 'convert divi to bricks', or 'rebuild divi pages in bricks'. Parses Divi shortcode content, maps modules to Bricks elements, and generates draft duplicates for review."
license: MIT
metadata:
  author: Respira for WordPress
  author_url: https://respira.press
  version: 2.2.0
  mcp-server: respira-wordpress
  category: migration

Migrate Divi to Bricks

**Version:** 2.2.0 **Updated:** 2026-09-13 **Freshly updated:** v2.1.0 adds design-token awareness: conversion writes now register the colors and typography they carry as named design tokens in Bricks' own global styles, and converted pages reference those tokens instead of carrying value copies. Reuse registered tokens instead of re-inlining raw values, and report the registration in the migration summary.

Converts Divi-built WordPress pages to Bricks Builder. Parses Divi's shortcode-based content from post_content, maps each module to its Bricks element equivalent, generates a migration plan for approval, and writes clean Bricks JSON to the target pages. Use this skill whenever someone wants to move from Divi to Bricks, replace the Divi Builder with Bricks, or rebuild Divi pages in Bricks.

What This Skill Does

This is a cross-format migration — Divi stores content as nested shortcodes in `post_content`, while Bricks uses a JSON array in `_bricks_page_content_2`. The skill must parse Divi's shortcode hierarchy, understand each module's purpose and settings, then reconstruct that intent as Bricks elements with proper parent-child relationships and settings.

The format gap makes this complex, but both builders are feature-rich visual editors, so most Divi modules have strong Bricks equivalents. The result is cleaner, faster-rendering content in Bricks' modern architecture.

**Handles:**

  • et_pb_section → Bricks Section element
  • et_pb_row/et_pb_column → Bricks Container elements (with flex layout)
  • et_pb_text → Bricks Text Basic element
  • et_pb_blurb → Bricks Icon Box or Container with child elements
  • et_pb_image → Bricks Image element
  • et_pb_button → Bricks Button element
  • et_pb_video → Bricks Video element
  • et_pb_heading (via text modules) → Bricks Heading element
  • et_pb_divider → Bricks Divider element
  • et_pb_accordion/et_pb_toggle → Bricks Accordion element
  • et_pb_tabs → Bricks Tabs element
  • et_pb_gallery → Bricks Gallery element
  • et_pb_slider → Bricks Slider element (close mapping)
  • et_pb_pricing_tables → Bricks Pricing Table element
  • et_pb_code → Bricks Code element
  • et_pb_map → Bricks Map element
  • Custom CSS → Bricks custom CSS fields
  • Column width ratios → Bricks container flex percentages

**Preserves:**

  • All text content and inline HTML formatting
  • Image URLs, alt text, and dimensions
  • Typography settings (font family, size, weight)
  • Color values and gradients
  • Spacing (margin, padding) — converted from Divi's format to Bricks'
  • Background images and overlays
  • Border and shadow settings
  • Button labels, URLs, targets
  • CSS classes

What This Skill Does NOT Do

  • **Specialty sections** — Divi's specialty section layouts (sidebar + content) need manual layout setup in Bricks.
  • **Global modules** — Divi's global modules (`et_pb_layout` post type) are resolved to inline content. Bricks templates must be set up separately.
  • **Third-party Divi modules** — Plugins extending Divi (Divi Toolbox, Divi Supreme, etc.) are flagged for manual recreation.
  • **Divi theme customizer** — Global fonts, colors, and spacing from the Divi theme customizer don't transfer. These need to be set in Bricks theme settings.
  • **Dynamic content** — Divi's dynamic content needs Bricks' dynamic data system configured separately.
  • **Contact forms** — et_pb_contact_form needs to be rebuilt using Bricks' form element or a forms plugin.
  • **Divi Library layouts** — Stored as `et_pb_layout` post type; not auto-migrated to Bricks templates.
  • **Motion effects** — Scroll effects and animations differ between builders.
  • **Divi theme dependency** — If using the Divi theme (not just plugin), you are switching to Bricks theme — a complete theme change.

Requirements

  • Respira for WordPress plugin installed and connected
  • MCP connection active (desktop or WebMCP)
  • Divi theme or Divi Builder plugin active (to read source content)
  • Bricks theme installed and active (to write target content)
  • Read access to scan Divi content
  • Write access to create duplicates with Bricks content

Trigger Phrase

  • "migrate divi to bricks"

Alternative Triggers

  • "convert divi to bricks"
  • "switch from divi to bricks"
  • "rebuild divi pages in bricks"
  • "move from divi to bricks"
  • "divi to bricks migration"
  • "replace divi with bricks"

Source Builder: Divi

Divi stores content as shortcodes in `post_content`. The module structure follows a strict hierarchy:

[et_pb_section fb_built="1" _builder_version="4.x"]
  [et_pb_row _builder_version="4.x"]
    [et_pb_column type="4_4" _builder_version="4.x"]
      [et_pb_text _builder_version="4.x"]
        <p>Content here</p>
      [/et_pb_text]
    [/et_pb_column]
  [/et_pb_row]
[/et_pb_section]

Key Divi specifics:

  • **Section types**: regular, fullwidth, specialty
  • **Column types**: `4_4`, `1_2`, `1_3`, `2_3`, `1_4`, `3_4`
  • **Settings as attributes**: `background_color`, `custom_margin`, `custom_padding`, `text_orientation`
  • **Content encoding**: HTML entities, percent-encoding, occasional base64
  • **Global modules**: `global_module` attribute → `et_pb_layout` post type
  • **Custom CSS**: `custom_css_main_element`, `custom_css_before`, `custom_css_after`

Read Divi content via `respira_extract_builder_content` with `builder=divi`.

Target Builder: Bricks

Bricks stores content in `_bricks_page_content_2` as a JSON array:

[
  { "id": "abc123", "name": "section", "parent": 0, "settings": {...} },
  { "id": "def456", "name": "container", "parent": "abc123", "settings": {...} }
Read more
@respira-press
Ships withrespira-wordpress-skills

The community hub for WordPress AI workflows. Skills that run inside Claude Code, Codex, Antigravity, Cursor, and any AI agent that supports Skills + MCP to analyze, audit, optimize, and fix WordPress sites. Built by the community. Curated by Respira.

Stars on GitHub

Momentum

stars in total
51
Star history of respira-press/agent-skills-wordpress on GitHub, a chart by star-history.com

Other skills on respira-wordpress-skills.

More skills from other plugins.

prompt-lookup

prompt-lookup

Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use…

@gh-f@gh-fInstall Skill
ppt-master

ppt-master

AI-driven presentation workflow for generating editable PPTX decks and slides, reconstructing page visuals, creating reusable…

@hugohe3@hugohe3Install Skill
morph-ppt

morph-ppt

Use this skill when the user wants a .pptx with smooth cross-slide animation — PowerPoint Morph transitions, Keynote-style…

officecli12d33k
@iofficeai@iofficeaiInstall Skill

Questions about migrate-divi-to-bricks.

Which coding agents can use migrate-divi-to-bricks?
migrate-divi-to-bricks installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.