Skip to content
Plug Craft

HTML Studio for Elementor

Developer tools plugin for WordPress

Give your Elementor code a proper workspace

Write HTML, CSS and JavaScript in a full-screen editor with search and replace, formatting and a sandboxed live preview, while your live site receives the code exactly as written and nothing extra.

Version
1.0.0
WordPress
6.3 or later
PHP
8.1 or later

A real code editor

CodeMirror 6 with syntax highlighting, search and replace with match counts, multiple cursors, folding, autocomplete and one-click Prettier formatting.

Preview without risk

Your code runs in a sandboxed frame at desktop, tablet, mobile or custom widths, with a built-in console and optional site styles, isolated from the editor.

Lossless migration

Convert existing Elementor HTML widgets page by page, with a dry-run preview, explicit confirmation, verified conversion and a full backup you can restore.

Overview

A full-screen code workspace inside the Elementor editor

HTML Studio for Elementor adds an HTML Studio widget that replaces the cramped code box of Elementor's built-in HTML widget with a full-screen workspace. Inside it you get a CodeMirror 6 editor with search and replace, folding, multiple cursors and autocomplete, one-click Prettier formatting, live syntax checking, and a sandboxed preview you can view as Code, Preview or Split at desktop, tablet, mobile or any custom width.

On the live site the widget prints your HTML, CSS and JavaScript exactly as written, processes WordPress shortcodes and adds no scripts or styles to the front end. It is built for Elementor designers, developers and agencies who regularly paste embeds, scripts and custom sections, and for sites that already rely on many native HTML widgets. A guided migration tool converts those widgets page by page, with a preview, confirmation, automatic backups and one-click restore.

1

A real code editor

CodeMirror 6 with syntax highlighting, search and replace with match counts, multiple cursors, folding, autocomplete and one-click Prettier formatting.

2

Preview without risk

Your code runs in a sandboxed frame at desktop, tablet, mobile or custom widths, with a built-in console and optional site styles, isolated from the editor.

3

Lossless migration

Convert existing Elementor HTML widgets page by page, with a dry-run preview, explicit confirmation, verified conversion and a full backup you can restore.

Features

Everything inside HTML Studio for Elementor

A complete list of what the plugin does, grouped the way you will use it.

Full-screen workspace

A dedicated coding environment that opens over the Elementor editor and remembers how you like to work.

  • Isolated full-screen overlay. Opens over the whole Elementor editor in its own Shadow DOM layer, so Elementor's styles cannot affect it and its styles cannot leak into Elementor.

  • Browser full screen. A toolbar button switches the workspace into true browser full-screen mode and back.

  • Three workspace modes. Choose Code only, Preview only, or Split with code and preview side by side.

  • Resizable split. Drag the divider, use the arrow keys or double-click to reset it, and the layout stacks vertically on screens narrower than 900px.

  • Light and dark themes. Switch themes in one click, with dark as the default.

  • Remembers your setup. Theme, mode, split position, device, word wrap, font size, indent size, auto refresh, site styles and console visibility are restored next time you open it.

Editing power

The editing features developers expect, built on CodeMirror 6.

  • CodeMirror 6 editor. Syntax highlighting for HTML with embedded CSS and JavaScript, line numbers, active line and bracket matching.

  • Search and replace. A find panel with live match counts, match case, whole word and regular expression options, and replace one or replace all.

  • Multiple cursors and column selection. Select the next occurrence with Ctrl or Cmd+D, add cursors with Alt+Click and make column selections with Alt+Shift+Drag.

  • Code folding. Fold and unfold blocks from the gutter, or fold and unfold everything from the menu or keyboard.

  • Smart HTML help. Tag and attribute autocomplete, automatic closing tags, matching tag highlighting and highlighting of other occurrences of the selected text.

  • Editor preferences. Toggle word wrap, set the font size between 10px and 22px, and switch indentation between 2 and 4 spaces.

Formatting and linting

Tidy code in one keystroke and see syntax problems as you type.

  • Prettier formatting. The Format button or Shift+Alt+F formats the whole document, including CSS and JavaScript inside style and script tags.

  • Careful formatting. Only the changed part of the document is replaced, unchanged code reports Already formatted, and formatting is skipped if you edit while it runs.

  • Jump to format errors. If the code cannot be formatted, the error is shown and the cursor moves to the reported line and column.

  • Live syntax checking. HTML, CSS and JavaScript syntax errors and mismatched closing tags are underlined as you type.

  • Problems panel. The status bar shows No problems or a problem count, and a click or Ctrl or Cmd+Shift+M opens the full list.

  • Formatter on demand. The formatting engine is downloaded only the first time you click Format.

Live preview

See the result as you type in a sandbox that resembles the real page.

  • Sandboxed live preview. Your code runs in an isolated frame that refreshes shortly after you stop typing, with an Auto toggle and a manual Refresh button.

  • Device sizes. Preview at Desktop, Tablet (768px), Mobile (375px) or any custom width from 200px to 3000px, with wide sizes scaled to fit.

  • Site styles. Optionally loads Elementor's frontend CSS, your active Elementor Kit, theme stylesheets, theme.json global styles and Customizer Additional CSS.

  • Built-in console. Captures console output, JavaScript errors, unhandled promise rejections and failed resource loads, links errors to the matching line, and shows the latest error in a strip when hidden.

  • Shortcodes in preview. Shortcodes in your code are rendered by WordPress on the server before the preview loads.

  • Smooth refresh. Keeps the preview's scroll position and swaps in the new version only once it has loaded.

Elementor editor integration

HTML Studio behaves like a native part of Elementor, with several ways to open the workspace.

  • HTML Studio widget. Appears in the General category and is found by searching for HTML Studio or keywords such as html, code, css, javascript, embed or script.

  • Panel launcher card. Shows the line count and size, which languages are present, including shortcodes, and an Open editor button.

  • Open from the canvas. Double-click the widget on the canvas, or hover it and click Edit with HTML Studio.

  • Canvas display options. Show a live isolated preview, a lightweight summary card or inline output per widget, with Auto height up to 900px or a Fixed height from 80px to 1600px.

  • Apply and Save. Apply with Ctrl or Cmd+Enter writes the code to the widget, and Save with Ctrl or Cmd+S also saves the Elementor page.

  • Unsaved change guard. Closing with unapplied changes offers Keep editing, Discard or Apply and close, and the status bar always shows whether changes are applied.

Front-end output

Your visitors receive your code and nothing else.

  • Verbatim output. HTML, CSS and JavaScript are printed exactly as written, with no escaping or rewriting.

  • Shortcode processing. WordPress shortcodes in your code run on the front end by default, with a per-widget Process shortcodes switch.

  • No front-end assets. The plugin's scripts load only inside the Elementor editor and preview, never on the public site.

  • Native-compatible wrapper. Uses the same wrapper markup as Elementor's HTML widget, so theme CSS selectors keep working and the Advanced tab remains fully available.

  • Cache friendly. Output is marked as static, so Elementor can cache it.

Migration from Elementor's HTML widget

Move existing native HTML widgets to HTML Studio deliberately, one page at a time.

  • Site scan. Lists every page, post or template containing native HTML widgets, with counts of native widgets, HTML Studio widgets and backups.

  • Dry-run preview. Shows each widget's ID, line count, size, a code excerpt, the settings that will carry over unchanged, and any warnings.

  • Selective conversion. Tick the widgets to convert, confirm with a checkbox, then migrate only those widgets.

  • Lossless by design. HTML Studio stores code in the same setting as the native widget, so conversion changes only the widget type and keeps every other setting byte for byte.

  • Backups and restore. The full original page data is backed up before every migration and can be restored or deleted from the same screen.

  • Optional hiding of the native widget. A setting hides Elementor's HTML widget from the panel for new content, while existing native widgets keep working.

Permissions and security

HTML Studio follows the same trust model Elementor applies to its own HTML widget.

  • Code access gate. Only users with the unfiltered_html capability who are also allowed custom HTML in Elementor's Role Manager can add the widget or open the editor.

  • Per-post check. Editing and preview rendering also require permission to edit that specific post.

  • Admin-only migration. The Tools screen and migration actions require manage_options as well as code access permission.

  • Nonce-protected requests. All plugin REST routes use WordPress cookie authentication with a REST nonce and their own permission checks.

Developer extras

Filters and a small JavaScript API for teams that want to adapt the plugin.

  • html_studio_can_edit_code filter. Changes who may use the code editing features.

  • html_studio_preview_styles filter. Changes which stylesheets the Site styles preview option loads.

  • html_studio_max_render_bytes filter. Raises or lowers the size limit for server-side shortcode rendering in the preview, which defaults to 8 MB.

  • JavaScript API. Open the workspace programmatically in the Elementor editor with window.HTMLStudio.open(container) or window.HTMLStudio.openForElement(id).

Safety and recovery

Built so you can always get back

How HTML Studio for Elementor protects your site while it works, and what to do if you ever need to switch it off.

Sandboxed preview

Both the workspace preview and the canvas live preview run code in a sandboxed iframe without same-origin access, so scripts cannot reach the Elementor editor, the WordPress admin or its cookies.

Preview guard rails

Form submissions are blocked, links open in a new tab, in-page anchors scroll inside the preview, and storage and cookies get temporary in-memory stand-ins so scripts that use them do not crash.

Workspace isolation

The editor interface lives in a Shadow DOM layer and stops keyboard and clipboard events from reaching Elementor, and server-rendered output is never run inline in the editor unless you choose the Inline canvas mode.

Confirmed, verified migration

Nothing changes without a preview and a confirmation checkbox, the server rejects requests without a confirm flag, each conversion is verified in memory to reproduce the original data exactly, and widgets using dynamic tags are never converted.

Backup before every change

The complete original Elementor page data is stored before each migration, and if the backup cannot be stored, nothing is changed. Up to 10 backups are kept per page.

Restores that can be undone

Restoring a backup first snapshots the current state, so a restore can itself be reversed, and Elementor's caches and generated CSS for the page are cleared afterwards.

Content left untouched

Deactivation never touches page content. Uninstalling removes only plugin options, and migration backups are deleted only if an administrator enabled that setting.

Pricing

Choose your HTML Studio for Elementor licence

Secure payment through Razorpay. Your licence key and download link are emailed as soon as the payment is confirmed.

Single Site

For one live website you own or manage.

₹7,999

Price in Indian rupees

  • Licence for one website
  • Licence key and download by email
  • Plugin updates for your licence
  • Help by email
Buy Single Site licence
Best for agencies

Unlimited Sites

For agencies and owners of several websites.

₹12,999

Price in Indian rupees

  • Licence for every website you run
  • Licence key and download by email
  • Plugin updates for your licence
  • Help by email
  • Ideal for agencies and client sites
Buy Unlimited Sites licence

Compatibility

Requirements and integrations

WordPress
6.3 or later
Tested up to
WordPress 7.1
PHP
8.1 or later
Also needs
Elementor 3.5.0 or later, tested up to Elementor 4.3
The unfiltered_html capability and permission for custom HTML in Elementor's Role Manager
A current browser with Shadow DOM, ResizeObserver and Fullscreen API support

Works with

  • Works alongside Elementor's native HTML widget without replacing or unregistering it.
  • Uses only official Elementor hooks and the Elementor editor command API.
  • Matches the native widget's wrapper markup, including Elementor's markup optimisation experiment, so existing theme CSS keeps working.
  • Site styles preview reads Elementor's frontend CSS, the active Kit, classic theme stylesheets and block theme global styles; other plugin stylesheets can be added with the html_studio_preview_styles filter.
  • On multisite only Super Admins have unfiltered_html by default, and if DISALLOW_UNFILTERED_HTML is set the widget is not offered to anyone.
  • Workspace and formatter scripts load on demand inside the Elementor editor only.

Good to know

  • Does not support Elementor dynamic tags for the code field, and migration skips widgets that use them.
  • Does not perform full HTML validation, accessibility checks or JavaScript linting; syntax checking covers parse errors and mismatched tags.
  • Does not format part of a document, and formatting stops when Prettier cannot parse the code.
  • Does not reproduce the live page exactly in preview: forms are blocked, links open in new tabs, and storage and cookies are temporary.
  • Does not render HTML Studio widgets while the plugin is deactivated, until it is reactivated or the page is restored from a backup.
  • Does not yet ship translations; the workspace interface is in English.

Changelog

What has changed

Current version: 1.0.0.

  1. Version 1.0.0

    • Initial release.

Documentation

Getting started with HTML Studio for Elementor

Installation

  1. 1Make sure Elementor 3.5.0 or later is installed and active, and that the site runs WordPress 6.3 or later and PHP 8.1 or later.
  2. 2Go to Plugins, Add New, Upload Plugin, choose the plugin zip, then install and activate it.
  3. 3Confirm that no admin notice about PHP or Elementor versions appears.

First use

  1. 1Edit a page with Elementor and search for HTML Studio in the widgets panel.
  2. 2Drag the widget onto the page and click Open editor, or double-click the widget.
  3. 3Write or paste your HTML, CSS and JavaScript, then choose Code, Preview or Split and a device size.
  4. 4Use Format, the Problems panel and the Console to tidy and debug your code.
  5. 5Click Apply (Ctrl or Cmd+Enter) to update the widget, or Save (Ctrl or Cmd+S) to apply and save the page.
  6. 6Optionally, in the widget's Editor preview section, choose Live, Summary or Inline canvas display and set the canvas height.
  7. 7Optionally, turn Process shortcodes off for widgets that should print shortcode text literally.
  8. 8For reference, open More, Keyboard shortcuts.

Migrating existing HTML widgets

  1. 1Back up the site as usual, then go to Tools, HTML Studio.
  2. 2Review the list of pages containing native HTML widgets and click Preview migration on one of them.
  3. 3Check each widget's excerpt, carried-over settings and warnings, and untick any you want to leave as they are.
  4. 4Tick the confirmation checkbox and click Migrate selected widgets.
  5. 5Open the page in Elementor and on the front end to check it before making further changes.
  6. 6If anything is wrong, use Restore in the page's Backups table.
  7. 7When all pages are migrated and tested, optionally enable the setting that hides Elementor's native HTML widget.
  8. 8Leave Delete migration backups when the plugin is deleted switched off unless you are sure you no longer need them.

FAQ

Questions about HTML Studio for Elementor

Something else on your mind? Write to us before you buy.

Will HTML Studio slow down my live site?

No extra assets are loaded on the front end. The plugin's scripts load only inside the Elementor editor, and the widget simply outputs your code.

Is my existing HTML widget content safe if I migrate?

Yes. Nothing changes until you preview and confirm, the full page data is backed up first, each conversion is verified before saving, and you can restore any backup from Tools, HTML Studio.

Do my widget settings survive migration?

Yes. HTML Studio uses the same code setting as the native widget, so migration changes only the widget type and keeps margins, CSS classes, visibility and every other setting unchanged.

Can my JavaScript break the Elementor editor while I work?

The default canvas mode and the workspace preview run your code in a sandboxed frame, isolated from the editor. An Inline canvas mode is available if you deliberately want native-style behaviour.

Do shortcodes work?

Yes. Shortcodes are processed on the front end by default, switchable per widget, and are rendered by WordPress in the preview as well.

Why can't some users see the HTML Studio widget?

Only users who may write unfiltered HTML and who are permitted custom HTML in Elementor's Role Manager can use it, the same rule Elementor applies to its own HTML widget.

Can I hide Elementor's original HTML widget?

Yes, under Tools, HTML Studio. The setting is off by default and only hides the widget from the panel, so existing native widgets keep working.

Are there keyboard shortcuts?

Yes. Familiar shortcuts cover find and replace, go to line, multiple cursors, folding, commenting, formatting, Apply and Save, and the full list is available under More, Keyboard shortcuts.