Skip to main content

WordPress Installation

The Editor42 plugin brings Editor42 to WordPress: an Editor42 block in the block editor or, with one switch, the classic editing screen with Editor42 in place of the TinyMCE WordPress ships. It is free and MIT-licensed, needs no account and no API key, and loads nothing from outside your site.

Why replace TinyMCE in WordPress​

WordPress 7.0 still edits classic content with TinyMCE 4.9.11, released in July 2020 and the last TinyMCE 4 there is. The Classic Editor plugin, the Classic block and the visual editor fields of themes and plugins (wp_editor()) all run on it. TinyMCE's later releases fixed a series of cross-site scripting (XSS) issues, from 5.6.0 in November 2020 to 6.8.4 in June 2024, and none of those fixes was ever released for TinyMCE 4.

Editor42 is a maintained fork of the last MIT-licensed TinyMCE, with those fixes and the ones listed on the Security page. The plugin bundles it and never loads the TinyMCE inside WordPress, so it keeps working on future WordPress versions that no longer ship one.

  • Download the plugin​

    The zip installs on WordPress 6.2 and newer. Do not unzip it: WordPress takes the zip as it is.

    Download Editor42 for WordPress

  • Install the plugin​

    In your WordPress admin, open Plugins → Add Plugin and press Upload Plugin. Choose the zip, press Install Now, then Activate Plugin.

    • The Upload Plugin form of the WordPress admin with the Editor42 zip chosen
      Plugins → Add Plugin → Upload Plugin: choose the zip, then Install Now
  • Choose your editor​

    Open Settings → Editor42. Default editor has two options:

    • Only a Gutenberg block (the default): the block editor stays, and Editor42 is one of its blocks.
    • Editor42 as the main editor: posts and pages open in Editor42 instead of the block editor.

    Try the Editor42 block first, then switch to Editor42 as the main editor. You can switch back at any time.

    • The Editor42 settings screen in WordPress, with the Default editor switch at the top
      Settings → Editor42: the Default editor switch
  • Write with Editor42​

    Add an Editor42 block from the block inserter. Once Editor42 is the main editor, every post and page opens in it.

    • An Editor42 block in the WordPress block editor: a table and a numbered list with the Editor42 toolbar above them
      The Editor42 block in the block editor
    • The WordPress classic editing screen with Editor42: the menubar, two toolbar rows and a post with a captioned picture
      The classic editing screen with Editor42

What you get​

  • A rich toolbar out of the box: two rows with tables, colors, emoji, code view, find and replace and accordions, with the menubar above it.
  • Your own toolbar: in Settings → Editor42, drag buttons in and out or load the Simple or Full-featured preset.
  • Editor42 in the other classic editor fields too: product descriptions, text widgets, plugin fields.
  • The WordPress media library wherever a picture comes in: Add Media, the Browse button of the image dialog, and pictures you paste or drop into the text, which are uploaded to the library.
  • Image alignment and captions stored exactly as the classic editor stored them; the older [caption] spellings are read too.
  • The WordPress link dialog, with search over your posts and pages.
  • The Text tab with quicktags, next to the Visual tab.
  • Live previews of galleries, embeds and media shortcodes, the shortcode text kept byte for byte.
  • In the block editor: paragraphs, headings, lists and quotes turn into an Editor42 block and back with one click, a toolbar that stays in view on long texts, fullscreen editing over the whole window, in-place editing in the Site Editor, the pattern editor and the device previews, and the block editor's own shortcuts (save, the list view, moving or removing the block) from inside the text.
  • The text wears your theme's styles while you edit.
  • A right-to-left site gets a right-to-left editor.

Your content stays yours​

Content is stored the way the classic editor always stored it: standard HTML in post_content, paragraphs restored by wpautop on output, captions as the regular [caption] shortcode. Posts written before the plugin open and save unchanged, and posts written with it stay valid if you deactivate it. An Editor42 block keeps rendering on your site without the plugin; the block editor then shows it as a block it does not recognize, and one click keeps it as HTML. The plugin stores one option, and uninstalling removes it.

Buttons from other plugins​

Buttons that other plugins add to the classic editor through the mce_buttons and mce_external_plugins filters are written for the TinyMCE inside WordPress core, and Editor42 does not load them. A plugin can offer its button to Editor42 through the editor42_toolbar_buttons and editor42_external_plugins filters, described in the README inside the plugin; the button then shows up in the toolbar configurator like any other.

Requirements​

  • WordPress 6.2 or newer, tested up to 7.1, or ClassicPress 2
  • PHP 7.0 or newer

Everything the plugin uses ships inside it and loads from your own site: no CDN, no accounts, no tracking.

Source and licence​

The plugin is MIT-licensed, and its own PHP, JavaScript and CSS ship unminified. The bundled engine is Editor42 42.0.0 as published in editor42com/editor42-dist (tag 42.0.0), minified with the readable file next to every minified one. Its source is the editor42 branch of editor42com/editor42, at its 42.0.0 release commit; yarn && yarn build there writes the same files to modules/editor42/js/editor42/.