Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
* Plugin Name: Classic Editor Addon
* Plugin Author: Pieter Bos ( and Greg Schoppe (
* Description: The Classic Editor plugin doesn't remove Gutenberg by default. with this function we set the option that controls this from no-replace to replace and we remove the Settings link from the main Plugins page
function classic_editor_addon_hardcode_replace( $value ) {
return 'replace';
function classic_editor_addon_remove_settings_link( $links, $file ) {
if ( $file === 'classic-editor/classic-editor.php' && current_user_can( 'manage_options' ) ) {
array_shift( $links );
return $links;
function classic_editor_addon_init() {
* Remove the Try Gutenberg Panel, slated for WordPress 4.9.6
remove_action( 'try_gutenberg_panel', 'wp_try_gutenberg_panel' );
if ( function_exists( 'classic_editor_init_actions' ) ) {
* Change the default option of "no-replace" to "replace",
* which means the checkbox will be unticked and the bloody plugin
* does what it says from the get-go (L336).
add_filter( 'pre_option_classic-editor-replace', 'classic_editor_addon_hardcode_replace' );
* Remove Settings link to the settings from the Plugins screen (L277).
add_filter( 'plugin_action_links', 'classic_editor_addon_remove_settings_link', 10, 2 );
add_action( 'plugins_loaded', 'classic_editor_addon_init', 1, 0 );
Copy link

senlin commented Jun 10, 2018

Hi @gschoppe Greg,

I came to realise that the filter of the plugin_action_links with the classic_editor_addon_remove_settings_link function does not work.

To make it work, the filter needs to be replaced with an action:
add_action( 'plugins_loaded', 'classic_editor_addon_remove_settings_link' );

And the function itself can be simplified by:

function classic_editor_addon_remove_settings_link() {
	remove_filter( 'plugin_action_links', 'classic_editor_add_settings_link' );

You can see, the changes also in my original gist (updated of course with your changes).

What do you think about releasing this together as a plugin in the WP Plugin Repo?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment