Doncs ja ha arribat el dia. Avui s’allibera el nou WordPress 5.0 i amb ell arriba l’odiat per molts i estimat per molt pocs, Gutenberg, el nou editor de blocs de WordPress.
Des de l’inici el “Projecte Gutenberg” és una cosa que no ha agradat gaire a la comunitat d’usuaris de WordPress, això ho sabem tots, però sembla que Automattic s’ha entestat a ficar-lo amb calçador si o si, suposo que amb la intenció de competir amb Wix.
A part del descontentament general i la poca acceptació per part de la comunitat amb el nou editor de blocs, se suma el fet que l’avís oficial del llançament es dóna amb només 2 dies d’avançament, el que obliga a molts equips de desenvolupament directament a no dormir per posar els seus plugins al dia. Això ha provocat que diversos dels desenvolupadors de grans plugins com són WPML, Yoast SEO o ACF hagin mostrat el seu descontentament, tant en els seus blocs com en xarxes socials.
El dia escollit és avui, 6 de desembre, que a més de ser un dia festiu a l’Estat Espanyol, és un dia molt complicat per a la majoria de desenvolupadors especialitzats en WordPress ubicats a U.S.A. Molts d’ells estaran de viatge, dirigint-se a la WordCamp US 2018 que se celebra els dies 7, 8 i 9 de desembre a Nashville, Tennessee.
Matt Mullenweg estarà de ponent el dissabte 8 realitzant el seu ja clàssic “State of the Word“, resumint els aspectes més destacats de 2018. Segur que més d’un aprofita les pauses entre ponències per mostrar-li el seu descontentament amb Gutenberg… ????
Però bé, siguem pragmàtics. Arribats a aquest punt no serveix de res lamentar-se, així que hem de prendre accions. Ja sigui perquè Gutenberg està causant problemes en el teu lloc web desenvolupat amb WordPress, perquè vols esperar que Gutenberg sigui una mica més estable, o perquè simplement prefereixes seguir utilitzant l’editor clàssic; he recopilat diferents maneres per desactivar Gutenberg i seguir utilitzant l’editor clàssic. Doncs som-hi!
🔌 Desactivar Gutenberg amb el plugin oficial Classic Editor
La forma més fàcil de desactivar Gutenberg ens la ve oferint el mateix WordPress des de la versió 4.9.8, llançada a l’octubre d’aquest mateix any. Si encara segueixes amb aquesta versió, trobaràs al mateix Escriptori del Panell d’administració una invitació per instal·lar Gutenberg o instal·lar el Classic Editor.
Si la teva intenció és la d’instal·lar aquest plugin i encara no has actualitzat a WordPress 5.0 el més recomanable és que l’instal·lis abans d’actualitzar WordPress.
El procediment és més simple que mai. Des del mateix Escriptori només has de prémer el botó “Instal·la el Classic Editor” i esperar que s’instal·li el connector, un cop instal·lat la llegenda del botó canviarà per “Activa Classic Editor”, prem-lo per activar-lo.
Si per contra no estàs fent servir la versió 4.9.8, hauràs d’instal·lar el connector Classic Editor des de Extensions → Afegeix nou, com amb qualsevol altre plugin.
El connector, encara que senzill, té opcions de configuració. O millor dit opció, ja que només és una. Per configurar-lo ens dirigirem a Configuració → Escriptura, la tercera opció que ens apareix és “Default editor for all users”, com podrem observar tenim dues possibilitats, tot i que els seus títols no són tan descriptius com quan fem servir WordPress en espanyol:
- Classic Editor (Substituirà per complet l’editor de blocs per l’editor clàssic).
- Block Editor (Deixarà l’editor de blocs, però inclourà enllaços opcionals per intercanviar entre l’editor de blocs i l’editor clàssic).
🔌 Desactivar Gutenberg amb el plugin Disable Gutenberg
¿Però que passa si volem desactivar Gutenberg, però les opcions que ofereix Classic Editor ens semblen insuficients?
Per a aquest cas podem fer servir el plugin Disable Gutenberg, desenvolupat per Jeff Starr.
Disable Gutenberg ens ofereix no només l’opció de desactivar Gutenberg per complet o tenir l’opció de seleccionar si volem fer servir Gutenberg o l’Editor clàssic en el moment de crear o editar una entrada, pàgina o qualsevol tipus de publicació personalitzada, sinó que a més ens dóna la possibilitat de:
- Desactivar Gutenberg per a qualsevol tipus de publicació.
- Desactivar Gutenberg per rols d’usuari.
- Desactivar Gutenberg segons la plantilla de pàgina utilitzada.
- Desactivar Gutenberg per als ID de pàgina o publicació que vulguem.
I no només això, sinó que a més ens dóna l’opció d’ocultar del menú de WordPress l’element d’ell mateix o fins i tot, per a la versió 4.9.8 de WordPress, eliminar qualsevol rastre de Gutenberg al Tauler de WordPress.
Instal·larem Disable Gutenberg com amb qualsevol altre connector de WordPress:
- Accedim a Extensions → Afegeix.
- A la caixa de cerca escrivim “Disable Gutenberg” i esperem que WordPress faci la cerca.
- Localitzem la fitxa de Disable Gutenberg, premem sobre el botó “Instal·la ara” i esperem que realitzi la instal·lació.
- Un cop instal·lat activem el plugin prement en el botó “Activa”.
Amb el plugin ja instal·lat i activat ja només ens queda accedir a Configuració→ Disable Gutenberg i configurar el connector segons les nostres preferències.
🔌 Desactivar Gutenberg amb el plugin No Gutenberg
Ara et poso a l’extrem oposat, desactivar Gutenberg amb un connector que no té cap opció, només instal·lar, activar i llest!
El connector en qüestió es diu No Gutenberg i està creat per Fernando Tellado un referent en la Comunitat WordPress hispanoparlant, ¿com, que no et sona? Segur que has llegit diversos dels seus posts a AyudaWP, el seu bloc.
No Gutenberg – Disable Gutenberg Blocks Editor and FSE Global Styles
Instal·larem No Gutenberg com qualsevol altre plugin de WordPress i una vegada ho activem no necessitem fer res més. Tal com t’havia dit el plugin no necessita cap configuració, tot sol substituirà Gutenberg per l’editor clàssic.
💪 Desactivar Gutenberg sense plugins, només amb codi
Si com jo, prefereixes fer servir el mínim de connectors possibles estàs de sort, ja que Gutenberg es pot desactivar amb poques línies de codi, fins i tot amb una sola línia.
Com ja deus imaginar, per fer això tenim dues opcions. O incloem el codi directament a l’arxiu functions.php
o, si ho tenim, fem servir el nostre plugin de funcions.
Desactivar Gutenberg per a tot tipus de contingut
Amb aquest codi podem desactivar Gutenberg per a tot tipus de continguts:
add_filter( 'use_block_editor_for_post', '__return_false' );
Deshabilitar Gutenberg per a tipus de contingut concrets
També podem desactivar Gutenberg segons els tipus de continguts que vulguem, per a això només hem d’utilitzar un condicional per determinar quins tipus de contingut continuaran mantenint l’editor clàssic.
Per a això podem utilitzar un codi com:
function disable_gutenberg( $is_enabled, $post_type ) {
if ( $post_type === 'portfolio' ) return false;
return $is_enabled;
}
add_filter( 'use_block_editor_for_post_type', 'disable_gutenberg', 10, 2 );
En aquest codi “portfolio” és només un exemple, podem desactivar Gutenberg per al contingut que vulguem. Si analitzem el codi, veurem que, a part de la comparació, la principal diferència està en el ganxo que s’usa per desactivar Gutenberg.
Deshabilitar Gutenberg en registrar tipus de contingut personalitzats
Si estem treballant amb Custom post types, una altra opció que tenim és la de desactivar Gutenberg directament en registrar el tipus de contingut.
Per a això, simplement hem d’ometre l’editor en registrar el paràmetre supports
. Heus aquí l’exemple:
$args = array(
'label' => __( 'Portfolio' ),
'labels' => $labels,
'supports' => array(
'title',
'thumbnail'
// 'editor', // NO AGREGAR ESTE PARAMETRO
'custom-fields',
),
);
register_post_type( 'portfolio', $args );
Deshabilitar Gutenberg en registrar tipus de contingut personalitzats, mitjançant l’API REST
Una altra forma que tenim per desactivar Gutenberg en registrar un tipus de publicació personalitzat és la de desactivar REST per a aquest tipus de publicació en concret.
Per a això hem de configurar show_in_rest
a false
, per exemple:
$args = array(
'label' => __( 'Portfolio' ),
'labels' => $labels,
'show_in_rest' => false, // ESTABLECER EN false PARA DESHABILITAR GUTENBERG
'supports' => array(
'title',
'thumbnail'
'editor', // FUNCIONA INCLUSO CUANDO EL EDITOR ES ACTIVADO
'custom-fields',
),
);
register_post_type( 'portfolio', $args );
D’aquesta manera podem fer servir l’editor clàssic, ja que Gutenberg necessita l’API REST per funcionar.
😉 Conclusió
Si encara no estàs segur d’utilitzar Gutenberg, o simplement algun dels plugins que estàs fent servir encara no és 100% compatible amb el nou editor de blocs de WordPress, tens diferents opcions per desactivar-lo. Simplement tria la que millor s’adapti a la teva filosofia de treball i continua treballant amb l’editor clàssic.