New Version 1.0.0 is here with 75 widgets, a theme builder, popups and WooCommerce templates. Read the user guide
Visual builder for WordPress

Drag it, type on it, publish it.

Wonder Editor lets you build pages, headers, footers, popups and WooCommerce stores on a live canvas. Drop widgets from the sidebar, click any text to edit it, and tune every element for desktop, tablet and mobile.

  • Free, GPLv2 or later
  • WordPress 6.0+ and PHP 7.4+
  • Classic and block themes
75+

widgets, from headings to checkout

4

builders: pages, theme, popups, WooCommerce

3

device views with per-device values

12

form actions, from email to Zapier

Features

Everything you need to design on the page itself

No shortcodes to remember and no preview button to keep pressing. What you see on the canvas is what your visitors get.

Drag and drop

Pull widgets from the sidebar onto a live canvas. Reorder by dragging handles or move items in the Navigator tree.

Inline editing

Click a heading, paragraph or button and type. A formatting toolbar appears for bold, italic, links and more.

Responsive by default

Switch between desktop, tablet and mobile. Any responsive control can hold a different value for each device.

Design system

Global colours and fonts, global widgets you edit once, dynamic tags for post and WooCommerce data, and motion effects.

Role control

Give each role full access, content only or no access. Content-only editors change text, images and links but never the layout.

Fast and safe

Pages load only the CSS and JavaScript they use. Input is sanitised and every request checks nonces and capabilities.

  • Also included
  • Undo, redo and action history
  • WordPress revisions with restore
  • Copy, paste and paste style
  • Light and dark editor themes
  • Template library of blocks and pages
  • Sticky elements and entrance animations
  • Per-element custom CSS and attributes
  • Form submissions exported as CSV
  • ACF, Pods and Toolset fields
Builders

One editor for every part of your site

The same canvas you use for pages also builds your header, footer, archives, popups, forms and shop.

Theme Builder

Replace any part of your theme

Design headers, footers, single posts, archives, search results and 404 pages, then choose exactly where each one shows.

  • Display conditions for the entire site, post types, taxonomies, single posts, authors and the front page
  • Exclusions always win over inclusions, so exceptions are easy
  • Works with both classic and block themes

Display conditions Header: Main

IncludeEntire site
ExcludePages › Checkout
ExcludePosts in category › Landing
HeaderFooterSingleArchiveSearch results404
Popup Builder

Popups that show up at the right moment

Choose a modal, slide-in, top or bottom bar, or full-screen layout, then decide what opens it and who sees it.

  • Triggers: page load, scroll depth, click, exit intent and inactivity
  • Rules for logged in or out, device, referrer, page views, sessions and show limits
  • Any link pointing to #we-popup-ID opens that popup

Popup settings Newsletter slide-in

LayoutSlide-in, bottom right
TriggerScroll depth reaches 50%
Logged outDesktopMobileTabletShow 2 times
Forms

Multi-step forms with logic built in

Collect leads, applications and orders without another plugin. Fields can show or hide based on earlier answers.

  • File uploads, validation and spam protection with honeypot, time trap and rate limit
  • Send to email, a webhook, Mailchimp, HubSpot, ActiveCampaign, ConvertKit, Zapier, Slack or Discord
  • Every submission is saved and can be exported as CSV

Request a quote Step 2 of 3

Company size11 to 50 people
BudgetShown because size is above 10
Save submissionEmailHubSpotRedirect
WooCommerce Builder

Design the whole shop, checkout included

Build single product, product archive, cart, checkout and My Account templates with product widgets you drag in like any other.

  • Title, price, add to cart, gallery, meta, tabs, rating and stock widgets
  • Products grid, related products and a menu cart for your header
  • WooCommerce fields available as dynamic tags anywhere

Single product Template

Studio Lamp ★★★★☆ $89.00 Add to cart
DescriptionAdditional informationReviews (12)
Widgets

75 widgets, grouped the way you look for them

Search the sidebar by name or keyword. Theme and WooCommerce widgets appear when you edit a template that needs them.

Basic Layout and content

  • Heading
  • Text Editor
  • Image
  • Button
  • Icon
  • Icon Box
  • Image Box
  • Icon List
  • Image Gallery
  • Video
  • Tabs
  • Accordion
  • Alert
  • Counter
  • Progress Bar
  • Star Rating
  • Testimonial
  • Social Icons
  • Divider
  • Spacer
  • Google Maps
  • HTML
  • Shortcode

Advanced Marketing and engagement

  • Posts
  • Animated Headline
  • Call to Action
  • Flip Box
  • Pricing Table
  • Price List
  • Countdown
  • Testimonial Carousel
  • Reviews
  • Lottie
  • Table of Contents
  • Nav Menu
  • Search Form
  • Share Buttons
  • Facebook Embed
  • X (Twitter) Embed
  • Template
  • Global widget

Forms Lead capture

  • Form

Theme For theme templates

  • Site Logo
  • Site Title
  • Post Title
  • Post Content
  • Post Excerpt
  • Post Info
  • Featured Image
  • Author Box
  • Post Comments
  • Post Navigation
  • Breadcrumbs
  • Archive Title
  • Archive Posts

WooCommerce When WooCommerce is active

  • Products
  • Product Title
  • Product Images
  • Product Price
  • Add To Cart
  • Product Rating
  • Product Stock
  • Product Meta
  • Short Description
  • Product Data Tabs
  • Related Products
  • Menu Cart
  • Cart
  • Checkout
  • My Account
How it works

From install to a published page in three steps

No account to create and no licence key to enter.

  1. Install the plugin

    In WordPress go to Plugins › Add New › Upload Plugin, choose wonder-editor-1.0.0.zip and click Activate.

  2. Open a page in the editor

    Hover any page in Pages and click Edit with Wonder Editor. The live canvas opens with your page loaded.

  3. Build and publish

    Drag widgets in, type on the canvas, check each device, then click Publish. Your page is live.

User guide

Learn Wonder Editor in one sitting

Short, task-focused chapters. Start with the first three if you are new, then jump to whatever you are building.

Install and set up 2 minutes

You need WordPress 6.0 or newer and PHP 7.4 or newer. Wonder Editor works alongside any theme.

  1. In your WordPress dashboard, open Plugins › Add New and click Upload Plugin.
  2. Choose wonder-editor-1.0.0.zip, click Install Now, then Activate. You can also upload the wonder-editor folder to /wp-content/plugins/ by FTP.
  3. A new Wonder Editor menu appears in the dashboard with Theme Builder, Popups, Saved Templates, Submissions and Settings.
  4. Optional: open Wonder Editor › Settings to choose which post types can use the editor, set your global colours and fonts, decide role access, and paste API keys for Mailchimp, HubSpot and other integrations.

Tour of the editor

Open any page and click Edit with Wonder Editor. The screen has four areas.

  • Top bar. Device switcher (desktop, tablet, mobile), undo and redo, Navigator, history, keyboard shortcuts, light or dark mode, Preview changes and the Publish or Update button.
  • Sidebar. The Elements tab lists every widget with a search box. Select an element and the sidebar switches to its settings, split into Content, Style and Advanced tabs.
  • Canvas. Your real page, rendered by WordPress. Hover to see an element's outline and handle. Click to select it.
  • Navigator. A tree of sections, columns and widgets. Drag items to reorder, use the eye icon to hide one while you work, and right-click for more actions.

Press ? at any time to see every keyboard shortcut.

Build your first page

Pages are made of sections, which hold columns, which hold widgets. Use an Inner section when you need columns inside a column.

  1. Click Add new section at the bottom of the canvas and pick a column structure in Select your structure.
  2. Drag a Heading from the sidebar into the first column. A red line shows where it will land.
  3. Click the heading text on the canvas and type your own. Select words to bring up the formatting toolbar for bold, italic and links.
  4. Drag in a Text Editor, an Image and a Button. Set the button link in the Content tab.
  5. To change order, drag an element by its handle, or drag it in the Navigator. Right-click any element to copy, paste, duplicate or delete it.
  6. Click Save draft to keep working later, or Publish to make the page live.

Want a head start? Click Add template on the canvas to insert a ready-made block or full page from the template library.

Style and responsive editing

Every element has three tabs in the sidebar.

  • Content holds the text, media, links and options for that widget.
  • Style holds colours, typography, borders, shadows and hover states. Use the Normal and Hover toggle where it appears.
  • Advanced is on every element: margin, padding, background, border, motion effects, sticky, responsive visibility, custom attributes and custom CSS.

Different values per device

Controls with a device icon next to their label are responsive. Switch the top bar to tablet or mobile and change the value: it applies only to that device and smaller, while desktop keeps its own. Use the Responsive section of the Advanced tab to hide an element on a device entirely.

Motion and sticky

In Advanced › Motion effects add an entrance animation, scroll effects such as parallax and fade, or mouse tracking and 3D tilt. Turn on Sticky to pin a header or sidebar while visitors scroll.

Site settings and global widgets

Open Site settings in the sidebar to manage Global colors and Global fonts. Every colour and typography control lets you pick one of them, so a brand change is a single edit.

  • Global widgets. Right-click a styled widget and choose Save as global widget. Drop it anywhere from the Global widgets list. Editing one copy updates all of them. Choose Unlink from global to make a copy independent.
  • Dynamic tags. Text, link, image and number controls can pull live data instead of typed values: post title, author, site name, the current user, ACF, Pods and Toolset fields, and WooCommerce product data.

Templates, undo and revisions

  • Template library. Click Add template to browse Blocks, Pages and My templates, then click Insert.
  • Save your own. Right-click a section and choose Save as template. It appears under My templates and in Wonder Editor › Saved Templates.
  • Undo and history. Ctrl + Z undoes, Ctrl + Shift + Z redoes. The History panel lists every action so you can jump back several steps at once.
  • Revisions. Each save creates a WordPress revision. Open History › Revisions and click Restore on any earlier version.

Theme Builder

Use the Theme Builder to replace parts of your theme with designs you build in the editor.

  1. Go to Wonder Editor › Theme Builder and click Add New.
  2. Pick a template type (Header, Footer, Single, Archive, Search results, 404 and others), give it a name and create it. New templates start as drafts, so nothing changes on your site yet.
  3. Build the template. Theme widgets such as Site Logo, Nav Menu, Post Title and Post Content fill in with real content.
  4. Open Display conditions and add Include rules (for example Entire site) and any Exclude rules. Exclusions win over inclusions.
  5. Click Save & close, then Publish. The template now replaces your theme's version wherever its conditions match.

Popups

  1. Go to Wonder Editor › Popups and click Add New.
  2. Design the popup content, then open its settings to choose a layout: modal, slide-in, top bar, bottom bar or full screen.
  3. Choose a trigger: on page load, after scrolling a set depth, on click, on exit intent or after inactivity.
  4. Add rules to narrow who sees it: logged in or out, device, referrer, number of page views or sessions, and how many times to show it.
  5. Set display conditions for which pages it can appear on, then publish.

To open a popup from a button or menu item, set its link to #we-popup-123, where 123 is the popup's ID. A form can also open a popup after it is submitted.

Forms

  1. Drag the Form widget onto the page and add fields in the Content tab: text, email, phone, number, date, select, radio, checkbox, file upload, hidden and more.
  2. Mark fields as required and set validation. Add Step (page break) fields to split a long form into a multi-step form.
  3. Use Conditional logic on any field to show it only when an earlier answer matches.
  4. Under Actions after submit, choose what happens: save the submission, send an email, redirect, call a webhook, open a popup, or send to Mailchimp, HubSpot, ActiveCampaign, ConvertKit, Zapier, Slack or Discord.
  5. Read entries in Wonder Editor › Submissions and export them as CSV.

Spam protection is on by default: nonce checks, a hidden honeypot field, a time trap for instant bot submissions and a rate limit.

WooCommerce

With WooCommerce active, the Theme Builder offers Single product, Product archive, Cart, Checkout and My Account template types.

  1. Create a Single product template and drag in Product Images, Product Title, Product Price, Product Rating, Add To Cart, Product Meta and Product Data Tabs.
  2. Set its display conditions to all products or to a product category.
  3. Add a Menu Cart widget to your header template so shoppers always see their cart.
  4. Use the Products widget on any page to show a grid of products filtered by category, tag or sale status.

Roles and access

In Wonder Editor › Settings, set an access level for each WordPress role.

Access levelWhat the role can do
Full accessEverything: layout, styles, templates and settings the role's WordPress capabilities allow.
Content onlyEdit text, images and links. Layout and style controls are hidden, so the design cannot break.
No accessThe Edit with Wonder Editor button is hidden for this role.

Keyboard shortcuts

On a Mac, use ⌘ wherever you see Ctrl.

ShortcutAction
Ctrl + SSave
Ctrl + ZUndo
Ctrl + Shift + Z or Ctrl + YRedo
Ctrl + C / VCopy and paste the selected element
Ctrl + Shift + VPaste style only
Ctrl + DDuplicate
DeleteDelete the selected element
Ctrl + IShow or hide the Navigator
Ctrl + Shift + HOpen History
Ctrl + Shift + MCycle desktop, tablet and mobile
Ctrl + Shift + LSwitch light and dark editor theme
EscCancel or close
?Show all shortcuts

For developers

Add your own widgets by extending WonderEditor\Widget_Base and registering on the wonder_editor/widgets/register action. Widgets render on the server in both the editor and the front end, so there is no JavaScript template to write. Responsive controls, selectors and dynamic tags work the same as in built-in widgets. The full reference is in docs/developer-widgets.md inside the plugin.

add_action( 'wonder_editor/widgets/register', function ( $widgets ) {
    require_once __DIR__ . '/class-hello-widget.php';
    $widgets->register( new My_Plugin\Hello_Widget() );
} );

class Hello_Widget extends \WonderEditor\Widget_Base {
    public function get_name()     { return 'hello'; }
    public function get_title()    { return __( 'Hello', 'my-plugin' ); }
    public function get_category() { return 'basic'; }

    protected function register_controls() {
        return array(
            array( 'name' => 'text', 'type' => 'text', 'label' => 'Text', 'default' => 'Hello!' ),
        );
    }

    protected function render( array $settings, array $element ) {
        return '<p>' . esc_html( $settings['text'] ) . '</p>';
    }
}
FAQs

Questions people ask before installing

Something else on your mind? Check the user guide above, or read readme.txt in the plugin folder.

Is Wonder Editor free?

Yes. It is released under GPLv2 or later. Every builder and all 75 widgets are included, with no paid tier.

Will it work with my theme?

Yes. Pages you build sit inside your theme's layout, and Theme Builder templates work with both classic and block themes. Choose the Canvas or Full width page layout in Page settings for a blank slate.

What happens if I deactivate the plugin?

Your pages keep a plain HTML copy of their content, so visitors still see your text and images. Theme Builder templates and popups stop applying until you reactivate.

Does uninstalling delete my pages?

No. Uninstalling removes the plugin settings only. To also remove templates, submissions and layouts, add define( 'WONDER_EDITOR_REMOVE_ALL_DATA', true ); to wp-config.php before uninstalling.

Do I need WooCommerce?

No. WooCommerce templates and product widgets only appear once WooCommerce is active. Everything else works without it.

Will it slow down my site?

Each page loads only the CSS and JavaScript its widgets use. Styles are compiled once and cached, and the markup is semantic and accessible.

Can I stop editors from changing the design?

Yes. Set their role to Content only in Wonder Editor › Settings. They can edit text, images and links while layout and style controls stay hidden.

Can developers add widgets?

Yes. Extend WonderEditor\Widget_Base and register it on the wonder_editor/widgets/register action. See For developers.

Your next page is one drag away

Download Wonder Editor, activate it, and open any page in the live editor. It takes about two minutes.