• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Core / Deshabilitar Gutenberg en WordPress selectivamente

Deshabilitar Gutenberg en WordPress selectivamente

Deshabilitar Gutenberg en WordPress selectivamente

[ 19 diciembre 2018 ] [ Autor: Jhon Marreros Guzmán ][ Core - Intermedio] [ ]

editor

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Si quieres mantener aún el editor clásico, para algunas entradas, para algunas categorías o para algunos custom post types, puedes deshabilitar el editor de Gutenberg selectivamente en WordPress a través de código.
 

Generalidades

A partir de WordPress 5.0, Gutenberg viene habilitado por defecto, puedes usar algún plugin para deshabilitar Gutenberg, hay muchos de ellos con varias opciones, por ejemplo: Disable Gutenberg, sin embargo en este artículo veremos cómo deshabilitar Gutenberg directamente a través de código.

El código que veremos a continuación puedes agregarlo en el archivo functions.php de tu child-theme

 

Deshabilitar totalmente Gutenberg

Técnicamente podrías sólo agregar alguno de los siguientes hooks, uno deshabilita a nivel de entradas individuales y otro deshabilita a nivel de custom post type.


// deshabilitar para posts individuales
add_filter('use_block_editor_for_post', '__return_false', 10);

// deshabilitar a nivel de custom post type
add_filter('use_block_editor_for_post_type', '__return_false', 10);

 

Habilitar Gutenberg para entradas nuevas

Es posible que quieras conservar las entradas anteriores de tu sitio con el editor clásico y sólo las nuevas entradas que se creen se hagan con el nuevo editor, en esta caso nos basaremos en el hook use_block_editor_for_post, tal como se muestra en el siguiente código


add_filter('use_block_editor_for_post', '__return_false', 5);

function dcms_enable_gutenberg_select_post($can_edit, $post) {
	
	if (empty($post->ID)) return $can_edit;
	
	if ( $post->ID > 123) return true;

	return $can_edit;
}

add_filter('use_block_editor_for_post', 'dcms_enable_gutenberg_select_post', 10, 2);

En el código anterior:

  • Primero deshabilitamos el editor para todas las entradas, sin embargo consideramos una prioridad de 5
  • Agregamos el hook use_block_editor_for_post con una prioridad mayor
  • Dentro de la función habilitamos el editor sólo a partir de determinadas entradas, en el ejemplo a partir del ID > 123, retornando true
  • La variable de can_edit es devuelta en caso el usuario tenga permisos para editar o no

 

Habilitar Gutenberg para una categoría específica

En este caso, es posible que sólo quieras habilitar Gutenberg para una o más categorías específicas, nuevamente usaremos una estructura parecida a la anterior usando el hook use_block_editor_for_post, tal como se muestra en el siguiente código


add_filter('use_block_editor_for_post', '__return_false', 5);

function dcms_enable_gutenberg_select_category($can_edit, $post) {
	
	if (empty($post->ID)) return $can_edit;
	
	if (has_category(2)) return true;
	
	return $can_edit;
}

add_filter('use_block_editor_for_post', 'dcms_enable_gutenberg_select_category', 10, 2);

En el código anterior:

  • Primero deshabilitamos el editor para todas las entradas, considerando una prioridad baja
  • Agregamos el hook use_block_editor_for_post con una prioridad mayor
  • En la función habilitamos el editor para la categoría 2, usamos la función has_category, y retornamos true
  • La variable de can_edit es devuelta en caso el usuario tenga permisos para editar o no

 

Habilitar Gutenberg sólo para algunos CPT

En este caso usaremos el hook use_block_editor_for_post_type, lo usaremos para habilitar Gutenberg sólo en determinados Custom Post Types, tal como se muestra en el siguiente código.


add_filter('use_block_editor_for_post_type', '__return_false', 5);

function dcms_enable_gutenberg_cpt($is_enabled, $post_type) {
	
	if ($post_type === 'recetas_post_type') return true; 
	
	return $is_enabled;

}

add_filter('use_block_editor_for_post_type', 'dcms_enable_gutenberg_cpt', 10, 2);

En el código anterior:

  • Primero deshabilitamos el editor para todos los CPT, considerando una prioridad baja
  • Agregamos el hook use_block_editor_for_post_type con una prioridad mayor
  • En la función habilitamos el editor para el custom post type llamado recetas_post_type, y retornamos true
  • La variable de is_enabled es devuelta en caso el CPT este habilitado o no

 

Conclusión

Tal como hemos visto se puede deshabilitar Gutenberg usando simplemente los hooks use_block_editor_for_post y use_block_editor_for_post_type a través de código y evitar el uso de un plugin adicional. Dentro de las funciones a las que hacen referencia los hooks podemos poner condicionales para Habilitar/Deshabilitar el editor Gutenberg.

 
¿Aún con dudas?, en el siguiente video se detallan los puntos anteriores

Suscríbete a DecodeCMS:  

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Deshabilitar el editor de bloques para Widgets en WordPressDeshabilitar el editor de bloques para Widgets en WordPress
  • Insertar Ajax en WordPress de manera correctaAjax en WordPress de manera correcta
  • Habilitar comentarios en el inicio de WordPressHabilitar comentarios en el inicio de WordPress
  • Formulario de login sin plugins en WordPressFormulario de login sin plugins en WordPress
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (2 votos, promedio: 4,50 de 5)
Cargando...

Interacciones con los lectores

Comentarios

  1. Caco martín

    28 mayo, 2021

    Muchas gracias! El truco me ha sido muy útil en la web para un cliente. Muy agradecido. 🙂

    • Jhon Marreros Guzmán

      1 junio, 2021

      Que bueno!. Saludos.

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Presentación

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Jooble
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad social woocommerce

Populares

Cambiar el rango de precios de productos variables en WooCommerce

CRUD en WordPress sin plugins

Dos productos por fila en versión móvil en WooCommerce

Incluir Bootstrap en WordPress

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2023 Todos los derechos reservados