Cómo utilizar amp-img y amp-video para acelerar tu sitio web

AMP, en pocas palabras, es un método para optimizar los sitios web para que sean más rápidos y más eficaces..

AMP significa "Páginas móviles aceleradas", y si bien el enfoque declarado es el rendimiento en dispositivos móviles, las ganancias de velocidad que puede aportar son igual de útiles en dispositivos no móviles. AMP contiene un conjunto de métodos de optimización que ofrecen varios tipos de beneficios, pero el poder de hacer que los sitios sean más rápidos es sin duda el más significativo en los sitios de imagen y video..

Dado que los sitios son más rápidos para los visitantes más comprometidos, los rankings en los motores de búsqueda potencialmente más altos (y por lo tanto una mayor exposición), definitivamente vale la pena pensar en AMP cuando cree la próxima muestra de su trabajo basada en la web.

AMP es un proyecto de código abierto con Google que lo respalda, y ha estado en desarrollo desde septiembre de 2015, con versiones de sitios de AMP que aparecen en los resultados de búsqueda de Google desde el 24 de febrero de este año. Hemos estado cubriendo AMP desde su lanzamiento público a principios de este año, por lo que es una buena idea leer el "Proyecto AMP: hará que sus sitios sean más rápidos" si desea conocer algunos antecedentes antes de continuar.

En ese artículo, encontrará mucha información sobre el valor general de trabajar con AMP, pero vamos a ver un poco más directamente los dos aspectos más relevantes para trabajar con imágenes y videos: la costumbre de AMP.  y elementos.

Faro por ssuaphoto / PhotoDune. AMP puede ayudar a que sus sitios funcionen mejor en la búsqueda.

Qué son  y ?

Cuando cree una página de acuerdo con los requisitos de AMP, utilizará una serie de elementos personalizados en lugar de algunos de los elementos HTML predeterminados a los que podría estar acostumbrado..

  • En lugar de usar un regular elemento que usarás
  • En lugar de utilizar un  elemento que usarás

Cuando use estos elementos personalizados, aprovechará automáticamente algunos de los beneficios inherentes a AMP. Echemos un vistazo a lo que son y por qué son dignos de su consideración.

Por que usar y ?

Ya sabe que se supone que AMP ayuda a que sus sitios sean más rápidos, pero ¿qué hace específicamente el y ¿Qué elementos tienen para ofrecer? Los beneficios más pertinentes son los siguientes..

Carga lenta

De forma predeterminada, si tiene una página con varias imágenes en ella, cada imagen debe cargarse de una vez. Esto puede arrastrar fácilmente el tiempo de carga total de su sitio hasta una duración considerable. Cuanto mayor sea el tiempo de carga inicial, mayor será la probabilidad de que los visitantes abandonen su sitio y peor podrá hacerlo en los motores de búsqueda..

Sin embargo, con una técnica llamada "Carga perezosa", puede tener las primeras imágenes cargadas con el resto para luego. Se ha cargado suficiente contenido para que el visitante comience a ver la página, y las imágenes restantes se "cargan de forma perezosa" cuando el visitante se desplaza hacia abajo. Esto puede hacer mejoras considerables a su velocidad de carga..

Por ejemplo, en las pruebas que ejecuté como parte de mi artículo "Proyecto AMP: hará que sus sitios sean más rápidos", descubrí que en una conexión móvil simulada tardó 26 segundos en cargar una página con cinco imágenes de 500Kb. Con una versión AMP del mismo sitio, el tiempo de carga se redujo a 16 segundos.

Sin diseño de flujo

Una de las principales ventajas del uso de AMP es que evita el problema de que el diseño de la página se "repita" varias veces.. 

Mientras se está sirviendo una página, los elementos de los medios descargados inicialmente no tienen altura ni ancho. Por lo tanto, el navegador expone las cosas como si dichos medios no formaran parte de la página. Luego, cuando una imagen termina de cargarse, el diseño debe recalcularse, con otros elementos movidos y redimensionados para que encajen alrededor de la imagen, algo que se llama reflejo. Si otros medios aún no se han cargado, la página debe volver a aparecer una y otra vez para cada elemento..

En particular, en los dispositivos móviles, los visitantes pueden enfrentarse a la frustración si ya están comprometidos y en lo que están enfocados se saltan de la vista debido al reflujo. Esto puede conducir muy fácilmente a una menor atención de los visitantes o al abandono del sitio, especialmente si ocurre varias veces.

Con AMP, el reflujo nunca ocurre. Esto se debe a que cada pieza de medios tiene un marcador de posición de tamaño correcto agregado al diseño desde Word Go. Una vez que se carga el medio, reemplaza el marcador de posición, no es necesario el reflujo.

Acceso gratuito a CDN

El almacenamiento y el ancho de banda para grandes cantidades de medios pueden ser costosos bastante rápidamente, y elegir un host que pueda entregar rápidamente a los espectadores de todo el mundo no siempre es fácil.

Sin embargo, cuando utiliza AMP, obtiene acceso a un CDN proporcionado por Google de forma gratuita. Siempre que cree una página que pase la validación de AMP, Google guardará automáticamente en caché sus documentos HTML, archivos JS e imágenes en el CDN de AMP..

Relativamente manos libres

La verdad es que la mayoría de las cosas que AMP hace por usted también pueden hacerse de otras maneras a través de varios scripts y metodologías. Sin embargo, una de las ventajas del uso de AMP es que no es necesario que se familiarice íntimamente con los aspectos técnicos necesarios para configurar optimizaciones equivalentes..

Al utilizar AMP, puede evitar elegir, configurar y mantener manualmente múltiples scripts y procesos. En su lugar, solo usa AMP según lo prescrito y todo sucede en segundo plano sin necesidad de su participación práctica.

Empezando con AMP

Antes de entrar en los detalles de uso y Necesitará saber cómo crear una página AMP con el código de repetición requerido. Cubrimos cómo hacer esto en otro tutorial, así que para hacer rodar la bola, puede dirigirse a "Cómo hacer una página básica de AMP desde cero"..

No hay necesidad de hacer el tutorial completo, así que si solo trabajas hasta el final de la sección titulada "Manejo de CSS en línea", estarás listo para regresar y continuar de nuevo aquí..

Cómo utilizar

En una página AMP usarás para cargar cada imagen individual. Veamos cómo usar su código correctamente y qué hace cada uno de sus atributos asociados..

(Puede encontrar la documentación completa para en el sitio web de referencia del proyecto AMP).

Inclusiones Esenciales

Al agregar un  Elemento hay algunos atributos esenciales que deberás incluir. Como con un regular elemento que necesitarás para usar un src atributo para especificar la ubicación de su imagen, y un alt atributo para establecer un texto de reserva.

También es un requisito en AMP que especifique altura y anchura cada vez. Esto se debe a que AMP utiliza los atributos de altura y anchura para establecer el tamaño de los marcadores de posición antes de que se cargue la imagen.

Si le preocupa cómo hacer que las imágenes se comporten de manera responsiva dado que está configurando dimensiones fijas, no se preocupe porque AMP tiene la funcionalidad incluida para manejar los ajustes de respuesta, que veremos más adelante..

Un ejemplo básico de la El elemento con estas inclusiones esenciales es:

Usando srcset

los elemento proporciona un srcset atributo que se puede usar para especificar imágenes alternativas que se mostrarán a diferentes anchos o densidades de píxeles. 

Se usa de la misma manera que en un regular.  para que pueda obtener un resumen completo del atributo en: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#attr-srcset

Por ejemplo, para proporcionar diferentes imágenes a diferentes densidades de píxeles puede usar:

O para cargar diferentes imágenes dependiendo del ancho de la ventana gráfica que pueda usar:

Tenga en cuenta, si está utilizando valores que contienen w la src atributo será ignorado en los navegadores que soportan srcset.

Añadiendo Atribución

Si necesita dar crédito a una imagen que puede usar atribución, por ejemplo:

Estilistas

Si desea controlar la apariencia de los marcadores de posición que aparecen en su página mientras se cargan las imágenes, puede hacerlo con CSS orientado a la amp-img elemento, por ejemplo:

amp-img color de fondo: gris; 

Cómo utilizar

En una página AMP usarás siempre que quieras incrustar un video de tu propia fuente. Si desea incrustar videos de terceros, como YouTube o a través de un iFrame, puede utilizar otros elementos como o .

(Una vez más, puede encontrar la documentación completa para en el sitio web de referencia del proyecto AMP).

Inclusiones Esenciales

Al igual que con , Hay algunas inclusiones esenciales al usar . Una vez más src es necesario para especificar la ubicación del video, y ambos altura y anchura son necesarios para que AMP pueda diseñar la página correctamente mientras carga.

Un ejemplo básico con atributos requeridos podría ser:

 

Añadiendo un Fallback

En caso de que el video no se cargue o se muestre por una razón u otra, es posible configurar un repliegue anidando un

dentro de elemento. los
debe incluir el atributo retroceder.

Por ejemplo:

 

No se pudo cargar el video. Por favor, compruebe que su navegador soporta video HTML5.

Añadiendo múltiples fuentes

los elemento puede ser anidado dentro de la Elemento para proporcionar múltiples formatos de archivo y maximizar la probabilidad de compatibilidad en varios navegadores.

Esto funciona de la misma manera que lo hace en un HTML5 regular elemento para obtener todos los detalles, visite: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source

Como ejemplo:

 

No se pudo cargar el video. Por favor, compruebe que su navegador soporta video HTML5.

Configuración de un "cartel"

Antes de que se inicie la reproducción de un video, el primer cuadro del video se mostrará de forma predeterminada. Sin embargo, si desea personalizar lo que se muestra, puede especificar una imagen utilizando el atributo póster.

Por ejemplo:

 

Atributos extra

Además de lo que hemos discutido anteriormente, hay algunos atributos adicionales que puede usar con el elemento. Son los siguientes.

Auto-reproducción

Por defecto los videos no se reproducirán automáticamente. Para anular esto incluye el atributo auto-reproducción:

 

Controles

Los controles en un video no aparecerán a menos que agregue el atributo controles:

 

Lazo

Para hacer un video repite infinitamente incluye el atributo. lazo:

 

Apagado

Para apagar el sonido en un video agregue el atributo apagado:

 

El atributo "layout"

AMP  y  Los elementos pueden tener el atributo. diseño establecido en uno de los seis valores, cada uno de los cuales hace que el elemento se comporte de manera diferente:

  • sensible
  • llenar
  • fijo
  • altura fija
  • elemento flexible
  • sin pantalla

Echemos un vistazo rápido a lo que hace cada uno..

(Encuentre los documentos completos de diseño aquí: https://github.com/ampproject/amphtml/blob/master/spec/amp-html-layout.md)

sensible

Tu configuración de diseño "ir a" debe ser sensible en la mayoría de los casos, úselo si no está seguro de qué elegir. Hará que el elemento se expanda al ancho máximo de su elemento principal mientras mantiene su relación de aspecto.

La capacidad de agregar este atributo es la razón por la que no tiene que preocuparse por garantizar la capacidad de respuesta a pesar de establecer explícitamente altura y ancho valores en elementos.

llenar

los llenar el ajuste es casi el mismo que sensible, sin embargo, el elemento se expandirá tanto al ancho máximo y altura de su padre, independientemente de la relación de aspecto.

fijo

Usando un fijo El diseño mantendrá el elemento en su altura y anchura especificadas sin posibilidad de cambiar el tamaño.

altura fija

Con el altura fija establecer un elemento estirará su ancho para ajustarse al elemento padre pero mantendrá su altura igual. 

elemento flexible

Si has aplicado el CSS pantalla: flexión; al padre de un elemento, puedes usar el elemento flexible valor de diseño para que llene todo el espacio disponible dentro del elemento padre. Si varios hijos del mismo padre usan el elemento flexible diseño que compartirán el espacio por igual.

sin pantalla

los sin pantalla La configuración se utiliza para ocultar un elemento. Su propósito es permitir que el contenido se muestre en la acción de un usuario, como en conjunto con el elemento.

Terminando

Eso cubre todo lo esencial de trabajar con la costumbre de AMP.  y elementos, desde por qué deberías usarlos hasta cómo.

AMP proporciona una forma consolidada y de manos libres para optimizar los sitios pesados ​​de los medios de comunicación, lo que permite una experiencia móvil mucho mejor, al tiempo que mejora la experiencia de escritorio al mismo tiempo..

Para más información revisa los enlaces de abajo.

Enlaces relacionados:

  • Proyecto AMP: hará que sus sitios sean más rápidos
  • Cómo hacer una página básica de AMP desde cero
  • AMP en 60 segundos
  • Consejo rápido: haga que el CSS en línea de AMP sea más fácil con Jade o PHP
  • Presentamos el blog oficial de Google Acelerated Mobile Pages Project
  • www.ampproject.org
  • Proyecto AMP en Github
  • Plugin AMP WordPress
  • Páginas móviles aceleradas (AMP) para WordPress en Envato Market