Classic Editor

Description

Warning: This is beta software, do not run on production sites!

Requires WordPress 4.9-beta2 or newer and Gutenberg plugin 1.5 or newer.

Classic Editor restores the previous Edit Post screen and makes it possible to use the WordPress plugins that extend it, add old-style meta boxes, or otherwise depend on the previous editor.

It has two modes:

  1. Fully replaces the Gutenberg editor and restores the Edit Post template.
  2. Adds alternate “Edit” links to the Posts and Pages screens, on the toolbar at the top of the screen, and in the admin menu. Using these links will open the corresponding post or page in the Classic Editor.

The modes can be changed from the Settings -> Writing screen. See the screenshots.

The current release is intended for testing with the Gutenberg plugin version 1.5 or newer.

Screenshots

  • The plugin settings are on the Settings -> Writing screen.
  • Link to edit the item using the Classic Editor on the Posts screen. Visible when the option to fully replace the editor is turned off.
  • Link to use the Classic Editor on the Admin toolbar. Shown on the Edit Post screen and on the front end when a single post is displayed. Visible when the option to fully replace the editor is turned off.

Reviews

Thank Goodness!

Thank goodness someone from the WordPress team has developed this plugin. Gutenberg is a horrible monster that I want to leave deactivated as long as possible – and so do my clients! 😉

Andrew, my only suggestion – can you simplify it and also make a GLOBAL ON/OFF button?

Those of us who want Gutenberg switched off just need ONE ON/OFF button, we don’t need it per post basis…

Cheers
Avrom

good idea but dont work ? maybe an error for me

when you put this + this plug-in, gutenberk is atomized. i can trust in the future of wordpress (thanks for the hooks). it was a pity to install gutenberk, but a pleasure to destroy it

😉

function kill_gutenberg_post_type( $is_enabled, $post_type ) {

if ( ‘post’ === $post_type || ‘page’ === $post_type ) {
return false; //==> add_action( ‘admin_print_scripts-edit.php’,…) ==> gutenberg_replace_default_add_new_button is disabled
}
return $is_enabled;
}
add_filter( ‘gutenberg_can_edit_post_type’, ‘kill_gutenberg_post_type’, 10, 2 ); //gutenberg_add_edit_link_for_post_type

function kill_gutenberg_modify_add_new_button_url( $url, $path ) {
return str_replace(‘&classic-editor’,”,$url);
}
add_filter( ‘admin_url’, ‘kill_gutenberg_modify_add_new_button_url’, 10, 2 );

function kill_gutenberg_add_gutenberg_post_state( $post_states, $post ) {
return [];
}
add_filter( ‘display_post_states’, ‘kill_gutenberg_add_gutenberg_post_state’, 10, 2 );

// gutenberg.php
remove_filter( ‘replace_editor’, ‘gutenberg_init’ );
remove_action( ‘load-post.php’, ‘gutenberg_intercept_edit_post’ );
remove_action( ‘load-post-new.php’, ‘gutenberg_intercept_post_new’ );
remove_action( ‘admin_notices’, ‘gutenberg_wordpress_version_notice’ );
remove_action( ‘admin_init’, ‘gutenberg_redirect_demo’ );
remove_action( ‘admin_menu’, ‘gutenberg_menu’ );
// lib/client-assets.php
remove_action( ‘wp_enqueue_scripts’, ‘gutenberg_register_scripts_and_styles’, 5 );
remove_action( ‘admin_enqueue_scripts’, ‘gutenberg_register_scripts_and_styles’, 5 );
remove_action( ‘wp_enqueue_scripts’, ‘gutenberg_common_scripts_and_styles’ );
remove_action( ‘admin_enqueue_scripts’, ‘gutenberg_common_scripts_and_styles’ );
// lib/compat.php
remove_action( ‘wp_enqueue_scripts’, ‘gutenberg_ensure_wp_api_request’, 20 );
remove_action( ‘admin_enqueue_scripts’, ‘gutenberg_ensure_wp_api_request’, 20 );
remove_filter( ‘wp_editor_settings’, ‘gutenberg_disable_editor_settings_wpautop’ );
remove_filter( ‘wp_refresh_nonces’, ‘gutenberg_add_rest_nonce_to_heartbeat_response_headers’ );
// lib/register.php
remove_action( ‘rest_api_init’, ‘gutenberg_register_rest_routes’ );
// Metaboxes hacks
remove_action( ‘do_meta_boxes’, ‘gutenberg_meta_box_partial_page’, 1000 );
remove_action( ‘plugins_loaded’, ‘gutenberg_trick_plugins_into_registering_meta_boxes’ );

yesss :|)

This is should be core, not a plugin

It is frankly insane that Gutenberg is being merged to core, and this is becoming a plugin. I manage over 300 sites, and can guarantee that not a single one of them will work smoothly with the transition to Gutenberg. I am not looking forward to having to test this plugin for actual feature parity with all 300 sites. This is NOT a “ship of theseus”, it is a “ship of feceus”

Thank all the gods that ever existed

Living in terror of the release of the new Glutenberg monster. Thank the gods for this plugin author who has the insight to make this plugin.

I can see I’ll be using this plugin all the time. Thank you 🙂

Read all 7 reviews

Contributors & Developers

“Classic Editor” is open source software. The following people have contributed to this plugin.

Contributors

“Classic Editor” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Classic Editor” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

0.2

Update for Gutenberg 1.9.
Remove warning and automatic deactivation when Gutenberg is not active.

0.1

Initial release.