WordPressismo a tope – Crónicas WordPress Intensas #15

Después de una semana extraña, aquí llega una tremenda crónica WordPress intensa, en la que destilaremos WordPressismo por todos los poros y mucho que contar y debatir.

Vamos a hablar de las novedades de WordPress 5.3, de cómo engañar a Google con estrellitas y más en los resultados, te contaré cómo me robaron contenido, además de otros apasionantes debates.

Todo en este apasionante vídeo

Si prefieres simplemente  escuchar las Crónicas WordPress intensas como podcast puedes suscribirte en Anchor.fmSpotifyGoogle Podcasts o Apple Podcasts.

La entrada WordPressismo a tope – Crónicas WordPress Intensas #15 la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.

WordPress 5.3 reducirá automáticamente las imágenes grandes ¿Es buena idea?

Entre las novedades que se han incluido en la beta 3 de WordPress 5.3 y que veremos en nuestros sitios cuando se lance la versión definitiva en noviembre, será la reducción y optimización automática de imágenes grandes.

¿Qué hará WordPress con las imágenes grandes?

Cuando un usuario suba una imagen con unas dimensiones superiores a los 2560 píxeles, ya sea de alto o de ancho, WordPress almacenará la imagen original y creará una copia automática de un máximo de 2560 píxeles de manera proporcional (no distorsionará las imágenes).

No hace falta que especifiques ese tamaño máximo en tus ajustes de medios, lo hará WordPress por defecto.

Esta imagen resultante de 2560 píxeles será el tamaño máximo disponible y visible, además de los otros tamaños que tengas definidos en los ajustes de medios o creados por el tema, plugins, etc, pero siempre menores.

Y esta imagen redimensionada será el tamaño máximo disponible a la hora de insertarla en tus contenidos, etc. No verás el tamaño original, solo la copia a 2560 píxeles o menos.

¿Funciona?

Pues sí, he estado haciendo pruebas y, por ejemplo, un JPG de 6,3 MB de peso, con un tamaño de 5725×3827 píxeles, lo convirtió automáticamente a 2560×1711 píxeles y un peso de 585 KB, una reducción considerable, más de peso que de tamaño dicho sea de paso.

¿Optimizará también las imágenes existentes?

No, el filtro introducido solo se aplicará en el momento de la subida de las imágenes, así que no hace nada con las imágenes que ya hubieses subido.

¿Qué pasará con los plugins de optimización de imágenes?

Esta optimización de imágenes por parte de WordPress no afectará a la funcionalidad de plugins de optimización de imágenes como Imsanity, EWWW Image Optimizer o el mismo módulo de optimización automática de imágenes de SG Optimizer.

¿Se puede desactivar si yo quiero imágenes más grandes?

Por supuesto, WordPress es libertad.

No vas a encontrar un botón de ajustes o similar, pero puedes anular el filtro añadiendo esta línea al archivo functions.php del tema que tengas activo o al plugin que utilices para personalizar cosas:

add_filter( 'big_image_size_threshold', '__return_false' );

Además, puedes disponer de la imagen original, con la función

wp_get_original_image_path()

pues recuerda que subirse se sube, o incluso cambiar el umbral máximo usando

big_image_size_threshold

.

Pero … ¿es buena idea?

Pues mira, aunque el objetivo es meritorio, tiene sus cosas, al menos como se ha aplicado, y me explico…

Papá WordPress lo hace por ti = Usuarios irresponsables

Que los usuarios no carguen en sus contenidos imágenes de gran tamaño y peso, que ralenticen la carga de sus páginas es un básico de optimización web, pero hacerlo sin intervención del usuario no es tan buena idea.

La optimización y gestión responsable de recursos es una cuestión que debería ser más de concienciación, de conocimiento y responsabilidad, no de tomar decisiones por los usuarios, puesto que esto no contribuye a que se eduquen en el uso eficaz de los recursos de que disponen.

Casi nunca está justificado que tomemos fotos o vídeos a la ultimísima resolución que permita nuestra cámara o móvil, aunque puedas, porque:

  1. Es innecesario, solo las pantallas mega enormes mostrarán esos tamaños de imagen/vídeo en todo su tamaño.
  2. Consumes datos de conexión innecesarios al enviarlas a tu ordenador, alojamiento en la nube, etc. Y me remito al punto anterior.
  3. Consumes espacio adicional innecesariamente en tu dispositivo móvil, ordenador, servidor. De nuevo me remito al primer punto.

Dicho esto, que el funcionamiento sea sin conocimiento del usuario no va a ayudar a concienciar a nadie sobre el uso responsable y sensato de la tecnología, ni va a ayudar tampoco a reducir la huella de carbono que genera la actividad online, que cada vez es mayor, precisamente por el incremento de conectividad y calidad.

Tener conexiones 5G empeorará aún más este asunto de la sostenibilidad, porque tendemos a usar los dispositivos y redes al máximo de su capacidad, lo necesitemos o no.

Mayor consumo de espacio de hosting

Soy un convencido de que debemos ahorrar en todo, y la WPO debería ser una filosofía de sostenibilidad que moviese a todo proyecto web.

Y, en concreto, el hosting es uno de los principales recursos que se consumen en la web.

WordPress no es lento, pero sí su mal uso.

No solo por costes, pero también, debemos ser austeros en el consumo de espacio de alojamiento, y sí, aquí también podemos contribuir a generar menos residuos, reducir la huella de carbono, ser más sostenibles y responsables con el uso de los recursos disponibles.

Pero este filtro que se ha añadido en realidad no aporta nada en este sentido, porque no solo no vamos a reducir el consumo de hosting sino que va a aumentar considerablemente.

Unido a la irresponsabilidad creciente del usuario, inconsciente de que su megaimagen no se ha reducido, seguirá subiendo megas y megas de archivos enormes que quedarán archivados, en principio inútiles para su uso, así que esto generará un consumo enorme, inconsciente e irresponsable de espacio en tu plan de alojamiento web.

Más de uno se llevará la sorpresa, tras poco tiempo usando WordPress, de que su empresa de hosting le reclame contratar un plan de alojamiento con más espacio en disco, y esto después de llevar tiempo sufriendo problemas de rendimiento a causa de la escasez de espacio de alojamiento, algo que también afecta a la WPO.

Tú mismo puedes hacer la prueba. Configura los ajustes de vídeo de tu teléfono móvil a calidad alta, normalmente HD y una toma que hagas de 1 minutos pesará de 6 a 12 MB dependiendo de la cámara. Ahora pon la calidad a 4K y el mismo minuto pesará más de 100 MB.

Es igual para la fotos.

Por si no lo sabías, Google Photos no consume espacio de tu cuenta si subes las imágenes a calidad alta, pero sí lo hace si las subes a la máxima calidad de tu cámara. Aquí tienes otro argumento para no capturar a megaresoluciones, salvo que seas un fotógrafo profesional.

Dicho esto, es mucho más eficaz el concepto que aporta el plugin Imsanity, pues te permite configurar los tamaños, pero sobre todo, no almacenar la copia original, inútil si has decidido usar un tamaño menor de imágenes ¿no crees?

De paso, te permite convertir de BMP a JPG automáticamente, aumentar la compresión de JPG de WordPress por defecto, e incluso reducir por lotes las imágenes existentes.

También puedes controlar los tamaños y compresión de las imágenes con otros plugins e incluso códigos. Por opciones no es, puedes incluso mejorar las imágenes subidas.

¿Entonces? ‚Es buena idea o no?

Si analizas lo que te estoy contando, quizás llegues a la conclusión de que no es buena idea la incorporación de este nuevo filtro de reducción automática del tamaño de las imágenes en WordPress, sino todo lo contrario.

La sostenibilidad de los recursos disponibles, y la WPO en lo que se refiere a la web, depende sobre todo del conocimiento y responsabilidad de los usuarios.

Si otros toman decisiones de las que no seamos conscientes no se educa a la sociedad en cuestiones tan importantes como vivir bajo principios de responsabilidad informada.

Además, ya había suficientes opciones, mediante plugins, para optimizar imágenes, y de paso de manera consciente y responsable.

¿No se ha dicho siempre que WordPress debe ofrecer la base estable y aplicable a todos, y que el resto es territorio plugin? Pues estoy de acuerdo, y ya hay plugins suficientes, buenos, eficaces, con un enfoque mejor del problema y aportando mejores soluciones.

Resumiendo: NO, no es buena idea, ni el concepto, ni la solución aplicada al problema, real, de la optimización web.

¿Y tú, qué piensas de esto?

Mójate, WordPress lo hacemos entre todos.

La entrada WordPress 5.3 reducirá automáticamente las imágenes grandes ¿Es buena idea? la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.

¡Que no quiero reproductores automáticos en WordPress!

Una de las características que más gusta a todo el mundo, y cuando digo todo es todo, es lo fácil que es incrustar en tu contenido vídeos, imágenes externas, todo tipo de contenido dinámico.

Esto es gracias a oEmbed, del que ya hemos visto en otros artículos sus posibilidades.

¡Pero yo no quiero embeds automáticos!

Ahora bien, nunca se puede estar a gusto de todo el mundo, y el otro día en el artículo sobre cómo insertar vídeos en WordPress un lector me comentaba que a él le puteaba esto de los embeds, porque quería usar otro reproductor pero salía automáticamente el de WordPress y claro, no le valía.

Así que me puse a revisar todos los modos que hay por ahí de desactivar esta bonita característica de WordPress, por si te pasa también a ti que no es lo tuyo, que no te vale vaya.

¿Debería desactivar los incrustados?

Un momento antes de seguir…

Los incrustados de WordPress son muy útiles, pero …

  • Si no quieres que otros compartan tu contenido en sus sitios incrustándolo fácilmente.
  • Si no vas a compartir contenido de otros en tu sitio incrustándolo fácilmente.
  • Si quieres optimizar más tu sitio reduciendo peticiones HTTP.

Solo si quieres que se cumplan estas 3 premisas, todas, no una o dos solamente, las tres, solo entonces deberías desactivar los incrustados de WordPress.

¡Para, no sigas! Por aclarar, ¿qué era eso de los incrustados oEmbed?

Fácil, la posibilidad de incrustar contenido dinámico de sitios compatibles con oEmbed en tu sitio solamente pegando la URL de dónde está alojado el contenido.

Por ejemplo, si quieres mostrar un vídeo de YouTube, una lista de Spotify, una foto de Instagram, solo tienes que copiar la URL dónde se ve ese contenido, a continuación pegas la URL en tu editor de WordPress y … magia, el contenido aparece en todo su esplendor.

En este minitutorial en vídeo tienes un ejemplo…

WordPress en un pasado lejano permitía desactivarlos fácilmente

Pues sí, resulta que antes de la versión 3.5, en los ajustes de WordPress había una casilla para desactivar la funcionalidad de oEmbed, más fácil imposible.

Era así…

Teníamos esa práctica casilla de selección en la que activar o desactivar los «auto-incrustados», que es como los llamábamos entonces.

Pero, como te digo, esto cambió en WordPress 3.5, y esta libertad de decisión quedó solo para amantes del código.

Pues, a partir de esta versión, para desactivar oEmbed había que añadir esta línea al archivo functions.php del tema activo o, mucho mejor, a nuestro plugin de ñapas y personalizaciones:

// Desactivar oEmbed
remove_shortcode( 'embed' );
remove_filter( 'the_content', [ $GLOBALS['wp_embed'], 'autoembed' ], 8 );
remove_filter( 'the_content', [ $GLOBALS['wp_embed'], 'run_shortcode' ], 8 );
remove_action( 'edit_form_advanced', [ $GLOBALS['wp_embed'], 'maybe_run_ajax_cache' ] );

Con este código desactivamos la característica oEmbed que te digo, del todo, consiguiendo que no se aplique el JavaScript

wp-embed.min.js

en ninguna parte.

¿Se puede desactivar de otra manera?

Pues claro, un método diferente es así:

/* Desactivar oEmbed */
function ayudawp_quitar_oembed(){
 wp_dequeue_script( 'wp-embed' );
}
add_action( 'wp_footer', 'ayudawp_quitar_oembed' );

¿Algún otro modo de desactivar oEmbed?

Mira que te estás poniendo exigente ¿no te han gustado los anteriores?

Venga, aquí tienes otro método:

/* Desactivar oEmbed */
function disable_embeds_code_init() {

 // Quita la variable de la REST API.
 remove_action( 'rest_api_init', 'wp_oembed_register_route' );

 // Desactivamos la detección automática de servicios oEmbed.
 add_filter( 'embed_oembed_discover', '__return_false' );

 // No filtramos los resultados de oEmbed.
 remove_filter( 'oembed_dataparse', 'wp_filter_oembed_result', 10 );

 // Quitamos los enlaces de detección de oEmbed.
 remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );

 // Quitamos el JavaScript de oEmbed tanto de la administración como de la web.
 remove_action( 'wp_head', 'wp_oembed_add_host_js' );
 add_filter( 'tiny_mce_plugins', 'disable_embeds_tiny_mce_plugin' );

 // Quitamos todas las reglas de rewrite de los incrustados.
 add_filter( 'rewrite_rules_array', 'disable_embeds_rewrites' );

 // Quitamos el filtro del resultado de oEmbed antes de que se haga ninguna petición HTTP.
 remove_filter( 'pre_oembed_result', 'wp_filter_pre_oembed_result', 10 );
}

add_action( 'init', 'disable_embeds_code_init', 9999 );

function disable_embeds_tiny_mce_plugin($plugins) {
    return array_diff($plugins, array('wpembed'));
}

function disable_embeds_rewrites($rules) {
    foreach($rules as $rule => $rewrite) {
        if(false !== strpos($rewrite, 'embed=true')) {
            unset($rules[$rule]);
        }
    }
    return $rules;
}

Mola el codiguito ¿eh? ¿No dirás que no está detallado todo?

Sí … está bien … ¿no hay un modo más … eh … fácil? Como en WordPress 3.4

Ah vale, ya te pillo, un plugin o algo ¿no?

De acuerdo, también hay algún plugin para hacer esta cosa de desactivar los incrustados oEmbed de WordPress.

El que te recomiendo de llama Disable Embeds.

Una vez lo hayas instalado y activado ya está, no solo desactiva todo el JavaScript relacionado con oEmbed, también dejan de funcionar los bloques de incrustados del editor.

También hay plugins de optimización como WP Disable, entre cuyas opciones está la de desactivar los oEmbed, pero si optas por él comprueba que no estás duplicando optimizaciones con otros plugins, como el de caché u otros.

Advertencia importante

Ya sé que seguramente esté de más recordarlo, pero por si acaso …  no uses todos los códigos, o el plugin, que te esto poniendo aquí, elige uno, el que sea más óptimo para tu sitio.

La entrada ¡Que no quiero reproductores automáticos en WordPress! la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.