¿Ya no se puede forzar la publicación con el Editor Clásico?

No adoptaré las nuevas funciones de Bloques de WordPress y me quedaré con Clásico.

Acabo de notar que el plugin WP Discourse tuvo una actualización para una configuración que uso, Forzar publicación:

Esta configuración solo se aplica cuando se utiliza el Editor de bloques para publicar entradas.

Mala suerte, pero donde hay voluntad, hay un camino. ¿Alguien más se ha encontrado con este problema y ha encontrado una solución personalizada, algo para añadir al archivo functions.php del tema quizás?

Gracias.

3 Me gusta

Hola @oopsyscoops, sí, hay algunas limitaciones para admitir ambos editores. Aún puedes usar la configuración de “Publicación automática” con el editor clásico. ¿Hay algún problema con usar eso en tu caso?

2 Me gusta

Publicar automáticamente estaría bien si este fuera un blog de un solo usuario.

Sin embargo, como blog de varios autores, Forzar publicación fue muy útil.

Antes de que revise el registro de cambios, ¿sabe de memoria en qué versión de WP Discourse se trasladó esta función al editor de bloques y se eliminó del editor clásico?

No sugiero que revierta a esa versión (lo que sería una mala idea), pero tal vez pueda buscar en el código y volver a aplicar la solución antigua a través de mi tema.

Espero que WP Discourse no abandone por completo el editor clásico. Todavía hay más de 6 millones (verificablemente al menos, pero probablemente sean más) de sitios web que usan el editor clásico, y estoy seguro de que millones de personas continuarán usando las funciones clásicas indefinidamente.

Tengo la intención de hacerlo y sospecho que las funciones clásicas eventualmente serán compatibles oficialmente (y opcionalmente) nuevamente en WP (sin depender de complementos) después de que la demanda sea clara, cuando se den cuenta de que incluso después de años, algunas personas simplemente prefieren el editor clásico y no adoptarán las nuevas funciones de bloques.

2 Me gusta

Entiendo tu punto de vista, pero ¿podría ser simplemente un caso de capacitación de autores y ver si causa problemas en la práctica? Conoces a tus autores mejor que yo, pero no descartaría eso como una opción.

El editor clásico todavía es definitivamente compatible.

Lo dudo, pero me he equivocado antes (al menos tres veces que yo sepa :wink: )

Se agradecería una PR si puedes abordar los problemas que @simon estaba tratando de abordar al eliminarlo (ver por ejemplo). Quizás él pueda explicar más.

3 Me gusta

Simplemente no es práctico. He sido editor durante más de una década y he capacitado y gestionado a docenas de escritores de todos los niveles de habilidad, desde luditas completos hasta programadores. Solo he tenido un puñado de buenos escritores que también eran expertos en tecnología y lo suficientemente organizados como para seguir TODAS las directrices que les establecí (sin tener dificultades).

Podría ser un editor más estricto (ya soy bastante TOC), pero entonces perdería voces valiosas. Hay demasiados escritores geniales que han contribuido a lo largo de los años, que apenas sabían cómo encender una computadora. Muchos de ellos tienen una curva de aprendizaje solo para aprender a publicar con WordPress, y desearían poder enviarme un documento de Word por correo electrónico. :squinting_face_with_tongue:

Y así, entreno lo mejor que puedo, pero al final del día, la automatización es cordura.

De todos modos, me encantaría aprender más sobre por qué esta función es demasiado difícil de mantener para Classic Y Block, si puedo obtener un breve resumen, @simon? Para lo que vale, tengo un socio en un proyecto que insiste en que le permita usar el editor de bloques (mientras que todos los demás en el equipo usan el editor clásico), así que tengo algo de experiencia mezclando ambos, y entiendo cómo puede convertirse en una molestia.

Gracias

3 Me gusta

Sí, sería genial que la opción “Publicar forzosamente” funcionara con ambos editores. Hace un par de años que no lo reviso. No estoy seguro de cuál fue la causa del problema, pero sospecho que es algo que se podría resolver.

3 Me gusta

Okay, estamos viendo este archivo:

/lib/discourse-publish.php

Y comparando 2.1.2 y 2.1.3, estas son las únicas diferencias (en lo que respecta a Publicación Forzada):

if ( ( 0 === $force_publish_max_age ) || $post_time >= $min_date ) {

se cambió a:

if ( ( ( 0 === $force_publish_max_age ) || $post_time >= $min_date ) && $is_rest_request ) {

Y se agregaron estas líneas adicionales:

// La configuración de Publicación Forzada no se puede admitir fácilmente con los editores de Bloques y Clásico. La variable $is_rest_request
// se utiliza para permitir que la configuración de Publicación Forzada solo se respete para las publicaciones realizadas con el Editor de Bloques.
$is_rest_request = defined( 'REST_REQUEST' ) && REST_REQUEST;

Si tuviera que adivinar, ¿quizás la forma antigua estaba generando errores en el editor de bloques? Entonces, ¿podría ser tan simple como usar una condicional?

is_block_editor o use_block_editor_for_post podrían funcionar:

if ( is_block_editor() ) {
	// hazlo a la nueva manera
} else {
	// hazlo a la vieja manera
}
1 me gusta

¿Quieres intentarlo y hacer una PR?

1 me gusta

Si estás hablando conmigo, definitivamente no entraré a lo loco hasta que @simon recuerde por qué se eliminó en primer lugar (o retroceda para aprender qué era de nuevo). Podría ser una pesadilla desconocida relacionada con el núcleo de WordPress, Discourse o WP Discourse que no es simplemente un problema contenido en estos pocos archivos y líneas de código.