Use Case · WordPress

Last reviewed: March 2026

WordPress to Figma —
Any Theme, Any Page

Converting a WordPress site to Figma means opening the page in a browser, copying the rendered HTML from DevTools, and pasting it into the html2design plugin. Works with Elementor, Divi, Astra, block themes, and custom PHP themes — the result is a native, editable Figma design, not a screenshot.

What is "WordPress to Figma"?

"WordPress to Figma" refers to the process of converting a live or locally-hosted WordPress page — including its theme styles, page builder output, and dynamic content — into a native Figma design that designers and developers can use for handoff, redesign, or documentation. Because WordPress generates standard HTML and CSS at render time, any WordPress page can be imported into Figma using the html2design plugin, regardless of which theme or page builder was used to build it.

Unlike screenshot tools, this approach produces editable Figma objects — real text layers, vector fills, and a layer hierarchy that mirrors the rendered DOM. You open the WordPress page in a browser, copy the rendered HTML from DevTools, and paste it into the plugin. The browser has already compiled PHP templates, loaded stylesheets, and rendered the page builder output into standard HTML and CSS — html2design reads that final output directly.

The WordPress to Figma workflow

Four steps, under two minutes. Works with any WordPress theme — Elementor, Divi, block editor, or custom PHP.

Step 01

Open the WordPress page in your browser

Navigate to the WordPress page you want to capture — local, staging, or live. Local environments (LocalWP, MAMP, XAMPP, Lando, DevKinsta) work perfectly; no public URL is required. If the page requires authentication, log in first so the content renders as it would for a real user.

If you want to capture a specific post, product, or page state — an empty WooCommerce cart vs a cart with items, a logged-in header vs a logged-out one — navigate to or set up that state first. The plugin captures whatever the browser currently displays.

Step 02

Copy the rendered HTML from DevTools

Open DevTools (F12) and switch to the Elements panel. For a full-page capture, right-click the <main> element or the primary content wrapper (often .site-main, .wp-site-blocks, or #main-content). For a single section or component, select just that element.

Right-click the element and choose Copy > Copy outerHTML. This captures the fully rendered DOM — PHP templates compiled, page builder styles applied, dynamic content loaded. You are copying exactly what the browser rendered, not the raw PHP source.

Step 03

Paste into html2design and generate

Open Figma, run the HTML to Figma plugin, paste the copied HTML, and click Generate. The plugin reads the computed styles the browser already resolved — Elementor's custom CSS, Divi's inline styles, Twenty Twenty-Four's block theme styles — all baked into the rendered output before the plugin sees the markup.

The result is a native Figma frame with real text layers, correct fonts, fills that reflect your theme's color palette, and a layer tree that mirrors the page hierarchy. No screenshot, no rasterized image.

Step 04

Share the Figma frame with your designer or client

Share the Figma frame link. Your designer or client can open the frame, annotate it, adjust spacing, propose color changes, and use it as a redesign starting point — all without needing WordPress access. This is especially useful for client review: export the current state to Figma, let the client mark up changes directly in Figma, then implement the delta.

For agencies handling multiple WordPress clients, this workflow lets you document the current state of any site in Figma in under two minutes — no manual recreation, no screenshots stitched together.

WordPress-specific tips for better Figma output

WordPress sites range from simple block themes to complex page builders. These tips help you get the cleanest import.

Elementor and Divi: capture the frontend, not the editor

Page builders like Elementor and Divi have their own editing interfaces that inject extra markup and scripts into the DOM. Always capture from the frontend view — visit the page as a regular user would, not from within the Elementor or Divi visual editor. The frontend view shows the clean rendered output without builder-specific wrapper divs and editor scripts.

Select the content container, not the entire body

WordPress pages often include admin bars, sticky headers, cookie banners, and sticky footers that add noise to the import. For a cleaner result, select the main content area — typically <main> or .site-main — rather than the entire <body>. You can always add header and footer sections separately.

Local WordPress sites work just as well as live sites

If you are building a site locally with LocalWP, MAMP, XAMPP, or DevKinsta, the html2design plugin works exactly the same way. Open the local site in Chrome or Firefox, copy the outerHTML from DevTools, and paste it into Figma. No public URL is required — the plugin runs entirely inside Figma and does not need to access the WordPress site directly.

WooCommerce product and shop pages work too

WooCommerce pages are standard WordPress pages with additional dynamic content — product listings, cart items, checkout forms. Navigate to the specific page state you want to capture (a product with reviews, a populated cart, the checkout form), copy the rendered HTML from DevTools, and import it. All WooCommerce styling — whether from the default WooCommerce stylesheet or a custom theme — is resolved by the browser before the plugin reads it.

What you get in Figma

Every import creates native Figma objects — not screenshots, not plugin wrappers.

Editable text layers with correct fonts

Every text node — post titles, body copy, WooCommerce product names, button labels — becomes a real Figma text layer with the correct font family, size, weight, line height, and color from your theme.

Theme colors as fills

WordPress block themes and Elementor/Divi both use CSS custom properties for color palettes. The browser resolves var(--wp--preset--color--primary) to its actual hex value before the plugin reads it — Figma fills reflect your exact theme palette.

Computed spacing from theme stylesheets

Padding, margin, gap, and section spacing values are read from computed styles — not from raw PHP templates or Elementor's widget settings. What the browser renders is exactly what lands in Figma.

Layer hierarchy from theme structure

Class names, section IDs, and element types become Figma layer names. Your theme's .hero-section, .wp-block-group, and navigation elements become named frames in Figma's layer panel.

Frequently asked questions

How do I convert a WordPress site to Figma?

Open the WordPress page in any browser, open DevTools, right-click the content area in the Elements panel, and choose Copy > Copy outerHTML. Paste the HTML into the html2design Figma plugin and click Generate. Works with any theme — Elementor, Divi, Astra, block themes, or custom PHP.

Does it work with Elementor or Divi?

Yes. Elementor and Divi generate standard HTML and CSS at render time. The browser resolves all inline styles and custom CSS into computed values. Copy the outerHTML from the frontend (not the editor), paste into html2design, and all builder styles are already applied.

Can I convert a local WordPress site to Figma?

Yes. LocalWP, MAMP, XAMPP, Lando, and DevKinsta all work. Open the local site in your browser, copy the outerHTML from DevTools, and paste into html2design. The plugin runs inside Figma and does not need to access the WordPress site directly — no public URL required.

What is the difference between this and taking a screenshot?

A screenshot is a rasterized image that designers cannot edit at the element level. The html2design approach produces native Figma objects: real text layers, editable fills, and a layer hierarchy. Designers can change text, tweak spacing, and use the output as a live handoff spec or redesign starting point — not just a reference image.

Related Guides

Export your WordPress site to Figma today

Install html2design from the Figma Community — free to try, works with any WordPress theme, no Chrome extension required.

Install Free on Figma Community

Free to try · $12/mo to unlock all features