¿Y si WP optimize está haciendo trampa en las pruebas de velocidad de la página?

Cuando tuiteó una captura de pantalla de cómo WP-Optimize está impidiendo explícitamente que se carguen ciertos archivos JavaScript cuando los usuarios prueban sus sitios a través de herramientas populares de pruebas de rendimiento, Gijo Varghese, un desarrollador que se describe a sí mismo como un "entusiasta del rendimiento web", sorprendió a los usuarios de WordPress de todo el mundo durante el fin de semana.

Los archivos JavaScript sólo se cargan cuando el agente de usuario o el navegador no es Lighthouse, GTmetrix, Headless Chrome o Pingdom, según Varghese. "Puntuaciones altas = sin JS. ¡Pero estos archivos JS se cargan para los usuarios reales!
Según Varghese, se estaba probando la versión gratuita de WP-Optimize, utilizada por más de un millón de sitios web de WordPress. Con la premisa de que "tiene todo lo que necesitas para que tu sitio web sea rápido y esté completamente optimizado", UpdraftPlus compró WP-Optimize en 2016. A través del plugin gratuito de WordPress.org, también se anuncia una versión comercial.

Un cliente, Adam Lowe, preguntó a UpdraftPlus: "Dime, UpdraftPlus, cómo se supone que voy a seguir confiando en tu empresa con las copias de seguridad de mis clientes cuando utilizas estas técnicas deshonestas y fraudulentas." Varghese había descubierto que el plugin no cargaba JS para las herramientas de rendimiento.
El propietario de la agencia de WordPress y desarrollador Brian Jackson declaró: "Vaya, todo lo que puedo decir es una horrible decepción".

Este tipo de engaño es extrañamente similar a la estafa que denunció una persona que contrató a un freelance de rendimiento a través de Upwork que modificó artificialmente los resultados de Google Pagespeed. Otras personas que participaron en la conversación en Twitter lo relacionaron con la crisis de las emisiones de Volkswagen, en la que se descubrió que el fabricante de automóviles sólo encendía sus controles de emisiones durante las pruebas de laboratorio para cumplir con la normativa de la EPA tras una infracción. En comparación con los resultados obtenidos en las pruebas de laboratorio falsificadas, los automóviles en circulación liberaban hasta 40 veces más óxidos de nitrógeno durante la conducción.

Varghese y algunos otros participantes en la conversación llegaron a la conclusión de que por eso los propietarios de sitios web deberían prestar atención a lo que experimentan los visitantes reales en lugar de a los resultados de las pruebas de las herramientas de rendimiento.

Los propietarios de sitios web suelen confiar en las pruebas para identificar problemas y determinar cómo se puede mejorar el rendimiento de un sitio, incluso cuando se centran en las experiencias reales de los usuarios. No prevén que los archivos JS queden ocultos a las herramientas de rendimiento por un plugin. La credibilidad de WP-Optimize se ha visto perjudicada por el engaño en las pruebas.

"Vaya, si es exacto, esto es irresponsable y corto de miras, según el usuario de UpdraftPlus Johnathon William. Y me hace dudar de la fiabilidad de UpdraftPlus, su otro producto, que utilizo para hacer copias de seguridad de varios sitios web de clientes.

Cuando me puse en contacto con UpdraftPlus, su principal desarrollador, David Anderson, declaró que la empresa no estaba al tanto del problema de codificación, pero proporcionó algunos antecedentes. UpdraftPlus discutió recientemente la posibilidad de asociarse con el creador del plugin Fast Velocity Minify para mantener el módulo de minificación dentro de WP-Optimize y ampliar su base de usuarios. Al final, no pudieron llegar a un acuerdo, pero mientras tanto, los creadores de WP-Optimize hicieron un fork y modificaron Fast Velocity Minify bajo la GPL. La empresa ya no emplea a los desarrolladores que contribuyeron a dicha adaptación.

La operación fue etiquetada como "Resolver 'Añadir código CSS y JS Minification GPL de 'Fast Velocity Minify' - Parte 6'" en nuestro propio repositorio de fuentes hace 2,5 años (enero de 2020). "Una fusión temprana de código que fue refactorizada para hacerla más limpia y usar nuestras preferencias de estilo de codificación (pero sin cambiar ninguna funcionalidad). Por lo tanto, parece que el propósito de la fusión de esas líneas era transferir el código refactorizado sin hacer ningún cambio en ese momento.

"El historial de commit (también conocido como la función 'git blame') indica que no se han realizado cambios en el código desde que se importó. (El SVN de WordPress también pone a disposición del público el historial de WP Optimize).

Anderson hojeó rápidamente el código y llegó a la conclusión de que su equipo podría tener que revisarlo porque no eran conscientes de las adiciones realizadas dos años antes.

El objetivo, añadió, "al tratar de rastrear esa función a través del código dentro de los plugins", parece ser que el código que es inútil para los bots no se ejecutará si el visitante del sitio web es un "bot", dijo.

"Dicho esto, 1) hay muchos bots más obvios que no están incluidos ahí, como el propio Googlebot, y 2) los nombres de los bots parecen estar sustancialmente oscurecidos o borrados, lo cual es extraño (¿por qué? ). Sin duda, me preguntaría por qué es así si esa función se me presentara hoy para examinarla. No se examinó detenidamente línea por línea, ya que, aunque no puedo leer mentalmente 32 meses atrás, se trataba de una larga secuencia de grandes parches. Estábamos seguros de haber elegido un plugin de calidad cuando elegimos FVM, así que, como revisor final, mi enfoque personal fue conseguir que se ajustara a nuestra estructura y estética.
En conclusión, el equipo de desarrollo de UpdraftPlus no conocía este código hasta el fin de semana, cuando se publicó el hilo de Twitter.

Anderson añadió: "Estoy encantado de que nos lo hayan comunicado". "El comentario del código asociado en un fragmento relacionado en su fuente original afirma que está destinado a evitar solicitudes innecesarias para los bots, pero tras una inspección más detallada que la que tuvo esa línea en su momento, es algo que querremos examinar, ya que parece cuestionable/extraño, y lo haremos asignándolo a un miembro del equipo que es nuestro experto en optimizaciones de JavaScript", se lee en el mensaje.
Además, Anderson afirmó que el código "se eliminará definitivamente" con una explicación clara e inequívoca de la lógica que hay detrás si los expertos en optimización de JavaScript no son capaces de identificar ningún uso justificable para él.
Los usuarios pueden leer ahora una nota que UpdraftPlus ha publicado en el foro de ayuda del plugin para hacerles saber que el código se está examinando actualmente.
Para ser claros y tranquilizar a los usuarios, Anderson declaró que el código cuestionado no es dañino, ni un virus, ni una infección, ni útil para los hackers, ni nada por el estilo. "Se alega que su única función es esencialmente hacer trampas en las pruebas de velocidad. Si este es el caso, el código será eliminado de WP Optimize en una futura actualización. Damos mucha importancia a la integridad de nuestros productos y a la confianza de nuestros clientes; por lo tanto, sería una tontería por nuestra parte incluir intencionadamente elementos en el código abierto que socavaran esos valores.

Fuente: https://wptavern.com/wp-optimize-plugin-accused-of-cheating-pagespeed-and-other-performance-testing-tools

¿Cómo convertir una página en post o al revés?

En ocasiones no es fácil decidir si quieres usar páginas o posts. En teoría las páginas están destinadas a contenido que se mantenga fijo, mientras que las entradas o posts son más adecuadas para contenido que se vaya a actualizar.

Pero en ocasiones, después de haber creado muchas páginas y/o entradas, te das cuenta de que lo que necesitas no es eso sino otra cosa.

¿Cómo cambiar fácilmente en wordpress de páginas a entradas o al revés?

Cambiar de páginas a entradas con Post Type Switcher.

Con el plugin gratuito de WordPress Post Type Switcher puedes cambiar / convertir el tipo de post fácilmente.

Post type switcher

Convertir una página de WordPress en un post con Post Type Switcher

El primer paso es instalar y activar el plugin. Simplemente escriba "Post Type Switcher" en la caja de entrada Search Plugins… en la pantalla Plugins > Add New o descargue el plugin a través del repositorio de WordPress y súbalo vía FTP.

Este plugin puede convertir :

Para convertir una sola página a post, edita la página que deseas convertir. En la pantalla de edición de la página encontrarás un menú desplegable de tipo de publicación bajo el cuadro meta "Publicar". Cambia el tipo de publicación a "Post", pulsa OK y haz clic en actualizar. Eso es todo. Tu página de WordPress se ha convertido en un post. Y lo mejor es que todos tus campos personalizados se conservan tal cual. Sólo se cambia la propiedad post_type de un post.

Edición masiva

El cambiador de tipo de entrada también soporta la edición masiva. Aquí están los pasos rápidos para convertir múltiples páginas en posts o viceversa:

Vaya a Páginas > Todas las páginas.
Seleccione las páginas que desea convertir.
En el menú desplegable de Acciones Masivas seleccione Editar y haga clic en Aplicar.
Ahora puede revisar las publicaciones seleccionadas y cambiar el tipo de publicación de página a publicación y Actualizar.
Edición Masiva - Cambio de Tipo de Publicación
Edición Masiva - Cambiador de Tipo de Entrada

El plugin Post Type Switcher es muy práctico. Una vez que haya convertido los puestos / páginas según sea necesario puedes desactivar y eliminar el plugin. Sus actualizaciones se guardan en la base de datos y no necesita mantener este plugin.