10 sept 2013

Mejora el rendimiento de tu Blog optimizando los CSS y JavaScript: "Remove render-blocking JavaScript and CSS in above-the-fold content"

Posiblemente la regla que más impacto negativo ha tenido en los resultados de Page Speed en la gran mayoría de Blogs de Blogger ha sido la que vamos a tratar y resolver en esta guía: los problemas de generación con bloqueos de Javascript y CSS.

Fundamentalmente y siguiendo la máxima de minimizar la cantidad de accesos que se realicen al servidor que puedan penalizar el tiempo de ejecución en el cliente, Google centrándose exclusivamente en el rendimiento puro y duro, ha introducido una nueva regla en Page Speed que verifica si por un lado estamos accediendo a archivos externos al servidor donde se encuentra nuestro blog.


Y por el otro, comprueba si algún archivo o recurso interno o externo que estamos utilizando produce un "bloqueo" o impide la ejecución secuencial y paralelizada de las partes que componen la página.

Todos los Bloggers se plantean cómo poder optimizar, quitar o poner su código CSS (hojas de estilo) o el JavasScript previo a la carga de la página, dado que Blogger no ofrece directamente la posibilidad en el editor de plantillas de quitar CSSs o JavaScripts que nuestra plantilla esté utilizando.

Aprendamos qué significa cada actor de esta nueva regla: ¿qué es una CSS?, ¿cómo se utiliza el JavaScript en Blogger? y lo que es más importante, ¿cómo puedo solucionar esta sugerencia que me da Page Speed y que me está quitando la puntuación que antaño tenía?.

NOTA IMPORTANTE: esta guía está destinada a los usuarios que deseen saber qué ocurre con la sugerencia del "Render-blocking" de Blogger en Page Speed. Los que luego apliquen la solución deben saber que es un tema eminentemente técnico que requiere un mínimo de experiencia en JavaScript, CSS y HTML. Si no tienes esos conocimientos, te servirá saber porqué te da la sugerencia PageSpeed  pero no trates de realizar los cambios si no tienes experiencia técnica en programación.

Sugerencias de Page Speed analizadas paso a paso hasta el momento:

Aviso para principiantes, diversidad de temáticas adaptada a niveles de conocimiento en la materia:

Todos los cambios que se van a tratar en la guía son de eminente carácter técnico. Trato de explicarlo para hacerlo asequible a un público con escasos o nulos conocimientos en informática. No obstante, hay muchas de las reglas que este servicio ofrece que están dirigidas a usuarios expertos.
En caso de que dispongas de poca experiencia o conocimientos en materia web, si lo explicado en esta guía te resulta complejo, te recomiendo que realices estas otras guías simplificadas a tal efecto:


Conceptos previos imprescindibles para comprender la guía:

  • Page Speed una vez ha evaluado el rendimiento de tu sitio web o Blog te proporcionará una puntuación basada en la ponderación de los puntos enumerados en su análisis. Es muy importante entender que Page Speed sólo da sugerencias, ninguno de sus cambios es obligatorio. 

Conceptos previos para los no iniciados en informática o programación de páginas web (Si tienes experiencia en código HTML, CSS y  JavaScript puedes pasar directamente a la solución):



MUY IMPORTANTE: Recomendaciones y omisión de responsabilidad:

Si eres un usuario con nulos conocimientos en HTML, CSS y JavaScript, este cambio no te
merece la pena realizarlo. Me explico, para poder solucionar esta sugerencia, dado que Blogger no permite que podamos quitar CSS que nuestra plantilla utilice por defecto, hay que emplear una solución que NO se realiza por los "cauces normales" y que implica comprender muy bien lo que se está haciendo por varios motivos:

  • Si se comete cualquier error al tocar el CSS o los JavaScript que por defecto lleva tu plantilla, tu Blog puede quedar parcial o totalmente inutilizado.
  • Si hay actualizaciones sobre tu plantilla por parte de Blogger, éstas no se reflejarán en la tuya al haber alterado el código fuente original de la misma.
  • No podrás seguir utilizando algunos asistentes como el de formato de personalización del Blog por medio de Blogger. A partir del momento en que emplees esta solución, todas las modificaciones que desees realizar en este sentido deberán de ser programadas directamente por ti.
  • La puntuación de mejora final, aún siendo un cambio de los que mejor puntúa, te va a permitir si aplicas el resto de soluciones que explicaremos en todas las entregas, llegar hasta los 90 puntos. Puntuación suficiente como para contar con una ejecución "estándar" o "normal" para un Blog. Mas que suficiente para unos resultados aceptables.
  • Si realizas la solución que ofrece Google Page Speed al CSS y Javascript Render-Blocking, es necesario que a continuación realices una "minimización" del código de la plantilla para que quede todo perfectamente optimizado. De lo contrario se producirá un efecto contrario al deseado. En el último paso de la guía se te recordará realizar la "minimización".
Por todo lo aquí explicado, se hace fundamental conocer qué se está cambiando y qué consecuencias puede tener en caso de no disponerse de los conocimientos adecuados. Los usuarios más experimentados siempre pueden disponer de la herramienta de copia de seguridad del Blog para en caso de problemas poder volver a la situación inicial.
 No me responsabilizo de los daños que puedas sufrir en tu Blog por el uso de esta solución.



Realiza una copia de seguridad de tu página web o Blog. Salvaguarda tus datos antes de hacer cualquier cambio:


Analizando cada Punto de los resultados que Page Speed puede devolverte y aplicando soluciones Paso a paso:


El problema y su detalle: 
  • El contenido "above-the-fold" o previo al "dibujado" de la página es vital tenerlo perfectamente optimizado. Page Speed, centrándose en el rendimiento bruto, trata de buscar aquellos archivos externos que utilices en tu página web o Blog de tipo CSS, JS o javascript previo a la carga de la página. 
  • Page Speed sugiere que objetivamente, el acceso a un servidor, sea externo o el mismo donde reside la página web, para utilizar recursos que actúen sobre los componentes de nuestra página web, resulta en una "pérdida de tiempo" en la petición y obtención del resultado. El navegador debe "parsear" (transformar) un contenido de la página HTML que se encuentra "fuera" de ella, con el consiguiente tiempo de ejecución que en ello se pierde. 
  • Al margen de la controversia de la norma, está comprobado y es claro que la ejecución de "módulos" externos de código de una página es más lento que si estos se encuentran ya en ella.
La solución:
  • En Blogger no se pueden tocar directamente las líneas de código html que invocan a los archivos CSS o JS. La plantilla está conformada por un código XML que simplifica y estandariza el código a utilizar en la plantilla. Este XML es interpretado por Blogger para que luego "él" lo transforme en HTML que se irá interpretando el navegador del usuario.  
  • Si el CSS no es de gran tamaño, es necesario que sea  inyectado directamente en tu página HTML (CSS inline) como podemos ver en la página de soporte de Google Developers.
  • Si no reduces como mínimo el tamaño del CSS o el Javascript inline en tu página, estarás consiguiendo un efecto negativo para el rendmiento de tu web o Blog. Esto se debe a que estarás aumentando considerablemente el tamaño del XML de Blogger, lo que resultará en un HTML enorme. No dudes en realizar la "minimización" o "compactación" del código CSS y Javascript inline, es mucho más rápido que lo que ya has hecho en esta guía y optimizarás al máximo posible los recursos de tu sitio web o Blog. Para hacerlo ejecuta esta guía cuando termines con los pasos inferiores: Entrega V, Soluciones para cada sugerencia de PageSpeed paso a paso - "Minify CSS", "Minify HTML" Y "Minify Javascript".

Paso a paso con los CSS:
0) RESUMEN: extraeremos primero los CSS que tenemos integrados en la página, bien referenciados en el código de la plantilla o en archivos CSS externos al Blog. Después comentaremos las líneas del XML de Blogger que hacen que se dibujen sus CSS. Acto seguido introduciremos "inline" nuestro código CSS en la plantilla con TAGS html estándar, de manera que todo vuelva a la normalidad pero teniendo el código CSS incluído en la página. 
1) Recopila tus CSS, dado que vamos a hacer que  dejen de utilizarse. Debes localizarlos y descargártelos en un editor de texo o similar.
 MUY IMPORTANTE: en el editor de plantilla de Blogger, localiza todo el código que esté entre el TAG <b:skin><![CDATA[ y ]]></b:skin> y haz CONTROL+X para cortarlo de la plantilla.
2) Pega todo ese código en un NOTEPAD o editor de textos que no altere el formato para que luego podamos tenerlo disponible. 
3) Adicionalmente,  utiliza "ver código fuente" de tu navegador. Observarás que en el código HTML aparece la siguiente cadena para referenciar a tus CSS " <link rel="stylesheet" href="NOMBRE_DE_TU.css">. Estarán los CSS de los Widgets de Blogger, estos debes copiarlos. Descárgate utilizando el navegador (escribe la URL del CSS en la barra de direcciones del navegador) y guarda el contenido de esos CSS en otro NOTEPAD o editor de textos. Así los tendremos disponibles para luego meterlos en la propia página HTML. 
4) Con tus CSS metidos en un editor de texto, ya puedes ir al editor de plantila de Blogger de nuevo y al haber "cortado" el contenido del CSS de tu plantilla, debería haberte quedado así el código con el que vamos a trabajar: 
<b:skin><![CDATA[   ]]></b:skin>
5) Quita ese código y cámbialo por este otro:
 &lt;style type=&quot;text/css&quot;&gt;&lt;!-- /*<b:skin><![CDATA[*/]]></b:skin><style type='text/css'> </style> 
Estamos comentando con HTML puro la línea del XML de blogger que trabaja con sus hojas de estilo. A todos los efectos, comentar en programación quiere decir que ha quedado inhabilitado el uso del CDATA que trabaja con los CSS anteriores al cierre del HEAD. 
6) Ahora entre la etiqueta del nuevo código copiado en el paso 5) <style type='text/css'> </style> metes primero el código CSS del NOTEPAD que extraíste en el paso 3) y seguido pegas el que extraíste en el paso 1 y 2):
 &lt;style type=&quot;text/css&quot;&gt;&lt;!-- /*<b:skin><![CDATA[*/]]></b:skin><style type='text/css'>DENTRO_TU_CSS_PASO_3+CSS_PASO1y2</style> 
Lo que estás haciendo es comentar la línea del XML de Blogger que se encarga de trabajar con los CSS (CDATA) para luego inyectar por código HTML tradicional primero el CSS que tuvieras en el HTML de tu página y después el código CSS que tenías personalizado en tu plantilla Blogger. Este orden es importante, primero los CSS externos y después el del CDATA de dentro de tu plantilla porque de lo contrario, perderás las personalizaciones o cambios particulares que hayas realizado a tu plantilla en "personalización CSS".
Fuente con la solución probada y utilizada en el Blog: aquí
Paso a paso con el JAVASCRIPT: 
0) RESUMEN: extraeremos primero los JS que tenemos integrados en la página, bien referenciados en el código de la plantilla o en archivos JS externos al Blog. Después comentaremos las líneas del XML de Blogger que hacen que se atienda al JavaScript de la plantilla. Acto seguido introduciremos "inline" nuestro código de llamada a JS o scripts externos en la plantilla con TAGS html estándar, de manera que todo vuelva a la normalidad pero teniendo el código JavaScript reajustado en la página.  
1) Recopila tus JavaScript o Scripts que realmente utilices. Es posible que tengas problemas una vez hayas hecho los cambios y tengas que localizar todos esos javascripts que necesitas para tu Blog. Es ESENCIAL que te fijes en la línea donde llames a tu archivo widgets.js pues es el que controla los componentes que vienen de Blogger.
2) Con la lista de js que utilices clara, ya puedes ir al editor de plantila de Blogger de nuevo y buscar con CONTROL+F : </body>
3) Quita ese código y cámbialo por este otro:  
&lt;!--</body>--&gt;&lt;/body&gt;
4) Ahora, inyecta tu código javascript habitual antes de  &lt;/body&gt; 
A modo de ejemplo, el resultado en mi Blog por ejemplo con el javascript inyectado para Google Analytics y el que utilizo para los +1 es el siguiente: 
&lt;!--</body>--&gt;<script type='text/javascript'>(function(){var a=document.createElement(&quot;script&quot;);a.type=&quot;text/javascript&quot;;a.async=!0;a.src=&quot;https://apis.google.com/js/plusone.js&quot;;var b=document.getElementsByTagName(&quot;script&quot;)[0];b.parentNode.insertBefore(a,b)})();</script><script type='text/javascript'>_gaq=_gaq||[];_gaq.push([&quot;_setAccount&quot;,&quot;XX-XXXXXXXX-X&quot;]);_gaq.push([&quot;_trackPageview&quot;]);(function(){var a=document.createElement(&quot;script&quot;);a.type=&quot;text/javascript&quot;;a.async=!0;a.src=(&quot;https:&quot;==document.location.protocol?&quot;https://ssl&quot;:&quot;http://www&quot;)+&quot;.google-analytics.com/ga.js&quot;;var b=document.getElementsByTagName(&quot;script&quot;)[0];b.parentNode.insertBefore(a,b)})();</script>&lt;/body&gt; 
Lo que estás haciendo es comentar la línea del XML de Blogger que se encarga de trabajar con los scripts para luego inyectar por código HTML tradicional los Javascript que realmente utilizas en tu sitio web.
Fuente con la solución probada y utilizada en el Blog: aquí.

MUY IMPORTANTE: Realiza "minimización" o "compactación" del código CSS o Javascript INLINE :  
  • El uso de CSS o Javascript Inline hace prácticamente "obligatorio" el uso de la minimización, ya que al inyectar el código del CSS o Javascript en la página, estamos ocupando una cantidad de líneas enorme y un espacio mayor que cuando se le llamaba en ficheros externos. 
  • Para cumplir con todas las nuevas sugerencias de Google en Page Speed, es conveniente que si metemos el código de CSS o Javascript en nuestra página este sea también minimizado. Si no reduces como mínimo el tamaño del CSS o el Javascript inline en tu página, estarás consiguiendo un efecto negativo para el rendmiento de tu web o Blog. Esto se debe a que estarás aumentando considerablemente el tamaño del XML de Blogger, lo que resultará en un HTML enorme. No dudes en realizar la "minimización" o "compactación" del código CSS y Javascript inline, es mucho más rápido que lo que ya has hecho en esta guía y optimizarás al máximo posible los recursos de tu sitio web o Blog. Para hacerlo ejecuta esta guía después de haber realizado los pasos anteriores: Entrega V, Soluciones para cada sugerencia de PageSpeed paso a paso - "Minify CSS", "Minify HTML" Y "Minify Javascript".

    Escrito por Miguel García Sánchez - Colomer

    Dispuesto a ayudarte con tu Blog en todo lo posible, Diarios de la nube es mi medio para llegar hasta ti. El conocimiento es universal, es del mundo, es de todos, esta es mi parte y la comparto contigo.

    60comentarios:

    1. Increible el nivel de conocimientos que tienes de CSS y Javascript. Aunque me encantan hacer tus guias en esta me quedo en usuario nivel basico y sin poderlo hacer porque menudo follon es.

      Saludos y enhorabuena por la guia que eres un fenomeno.

      ResponderEliminar
      Respuestas
      1. Gracias Vero!... un honor leer a una Blogger como tú por aquí. Hombre, el cambio es difícil porque requiere mucho técnicamente. No obstante, ofrece casi la máxima puntuación posible. Aunque alcanzar 90-92 es posible por mucho que haya .css externos (siempre que no sean un montón).

        Lo dicho un placer leerte aquí. Un saludo!

        Eliminar
    2. Miguel, ¡¡¡¡¡¡¡¡¡¡una maravilla lo que dices!!!!!!!!!, pero a mi todo eso me viene grande, ¿Hay alguna forma de poderlo hacer para novatas como yo?.
      Saludos y felicidades chiquillo, es alucinante.

      ResponderEliminar
      Respuestas
      1. Hombre, incrementa muchísimo el rendimiento este punto, pero yo lo encuentro demasiado técnico. Quizás te vendría bien probar con esto: http://diariosdelanube.blogspot.com.es/2013/05/como-solucionar-los-problemas-de.html

        Si haces todo lo que ahí pone, alcanzar una puntuación de 90-92 te ayudará mucho en el posicionamiento y en la experiencia de tus usuarios.

        Y por supuesto para las dudas aquí me tienes.

        Eliminar
    3. holA MIGUEL MUY BUENO TU BLOG ya que explica temas avanzados
      quería preguntarte si en el paso de js puedo aplicar estos o no

      https://apis.google.com/js/plusone.js
      http://www.blogger.com/static/v1/widgets/1234567891-widgets.js

      ResponderEliminar
      Respuestas
      1. Hola Esneider!,
        un placer ayudar.Unas veces trato temas simples y otras veces más técnicos o complejos. Intento acercar el mundo web y los blogs a todas las personas, tengan el conocimiento que tengan.

        Son dos buenas cargas con una buena priorización de carga de contenido, tal como explico en la guía que he liberado hoy: http://diariosdelanube.blogspot.com.es/2013/09/la-guia-de-rendimiento-para-bloggers_16.html

        En mi caso, depuré los .js que realmente me hacía falta "atc" (above the fold). Claramente los más necesarios son los que indicas

        Así lo tengo yo, lo ideal es que utilices las variantes de carga ASÍNCRONA, eso mejorará sensiblemente el tiempo de respuesta en navegadores antiguos y dará mayor sensación de fluidez en navegadores modernos (o con problemas de latencia como sucede con los móviles).

        Si quieres, como no me deja copiarte el código la caja de comentarios de Blogger, escríbeme a miguelcolomer@gmail.com y te contesto con los scripts asíncronos que estoy usando.

        Un saludo y encantado de conocerte Esneider. Cualquier cosa aquí me tienes.

        Eliminar
    4. Hola de nuevo Miguel, hice los pasos uno a uno, no es difícil.
      Resulta que lo tenía así desde ayer y cuando te escribí en el otro artículo. Yo tenía colocados los estilos del CSS Bundle arriba del todo justo al empezar

      Por esa parte bien y sin problemas. El caso es que "por algún motivo", supongo que culpa mía, que introducía estilos en la plantilla directamente, luego con el asistente, y le cambié el ancho de los laterales, pues el caso es que los estilos acaban ]]>




      Y luego empieza otra vez <![CDATA[
      body { ..........................

      Es decir, se puede decir que los estilos están cortados, y pues he hecho esto que cuentas al pie de la letra, y finalmente se ha perdido el ancho y los sidebar se han ido abajo de la página.
      He probado poner los template-skin tanto arriba de los estilos, como abajo de ellos, y no he conseguido nada, seguía igual.

      Pero no pasa nada he restablecido la plantilla y ya, he ordenado el CSS Bundle en CleanCSS.com, y se ha estructurado muy bien y lo he añadido al resto.

      El problema continúa siendo que realiza esa llamada al CSS y no estoy seguro de si sea un problema, o el Blog ya lea antes los CSS inline y los aplique sin afectar a la velocidad de carga de la página.

      En fin, saludos y gracias por todo :D

      ResponderEliminar
      Respuestas
      1. Me corrijo, olvidé convertir a texto plano u_u

        El CSS inline se corta, pone esos skin templates, y se vuelven a poner CSS inline:

        ........margin: 0 auto;
        }
        ]]></b:skin>
        <b:template-skin>
        <b:variable default='960px' name='content.width' type='length' value='1200px'/>
        <b:variable default='0' name='main.column.left.width' type='length' value='0px'/>
        <b:variable default='310px' name='main.column.right.width' type='length' value='350px'/>
        <![CDATA[
        body {
        min-width: $(content.width);
        ................. etc.

        Eso es lo que sucede, saludos

        Eliminar
      2. Si pusiste personalizaciones de tu estilo, píllalas de "avanzado" y las pegas al final del css inline que hayas utilizado en la página. Con esto tendrás también tus personalizaciones. Es que en el css original no se graban las personalizaciones, estas las añade Blogger al final del CSS.

        ¿Te está funcionando todo ok ya?

        Eliminar
      3. ¡GUAU! ¡ES INCREÍBLE!
        Como me desconfiguraba todo, he pasado unos días optimizando las imágenes y he arreglado todos los artículos.
        Llegaba al 80/100, pero no me he dado por satisfecho, así que he pasado 3 horas intentando esto.
        El problema es que en "Avanzado" no me aparecían los estilos, así que yo agarraba la parte de abajo que me salían separados por:
        </style>
        <b:template-skin>
        <b:variable default='960px' name='content.width' type='length' value='1200px'/>
        <b:variable default='0' name='main.column.left.width' type='length' value='0px'/>
        <b:variable default='310px' name='main.column.right.width' type='length' value='350px'/>
        <![CDATA[
        body {
        min-width: $(content.width);
        }
        .content-outer, .content-fauxcolumn-outer, .region-inner {
        min-width: $(content.width);
        max-width: $(content.width);
        _width: $(content.width);
        }

        Pero eso estaba mal porque al parecer son las últimas definiciones del cuerpo principal, así que dejé todo eso que hace referencia a otro lado con el símbolo del dólar $ y cogí todo lo demás y seguí los pasos.

        Por último he querido ordenar un poquito el código con dirtymarkup.com, pero me di cuenta que eso destrozaba las variables del comienzo de la plantilla, lo cual por cierto yo no comprendo ya que se supone que están comentadas. Agarré el CSS Bundle, lo puse ordenadito arriba del todo, en medio las variables, y abajo todo el resto del código exceptuando el que ya dije que lo dejé donde estaba.

        Y ya todo genial, me ha dado un 90/100 y he alucinado, tendré que cuidar las imágenes también. Ahora lo que quiero saber es si en Blog se puede especificar la duración de la caché, o si me equivoco al entender ese término, sé que debes tenerlo en este Blog, lo buscaré.

        Saludos y muchas gracias. Respecto al JS ya lo tenía todo en la plantilla hace tiempo.

        Eliminar
      4. La optimización de los CSS es radical en Pagespeed y se nota mucho en el tiempo de carga, mejora sensiblemente. De veras me alegro muchísimo de que hayas conseguido mejorar la velocidad con estos pasos, lo vas a notar también en visitas y tus usuarios lo agradecerán.

        Por otro lado, hazte el tutorial completo, los Javascript deben estar bien colocados (hay algunos que deben estar antes del cierre del head y otros en la página) y minimizados para mejorar aún más la velocidad... hazte un "tour" por todo este tutroial y verás qué de cosas puedes hacer: http://diariosdelanube.blogspot.com.es/2013/09/la-guia-de-rendimiento-para-bloggers_17.html

        En cuanto a la caché, tal como se ve en los capítulos de la guía, no vas a poder hacer nada porque en blogger no podemos tocar directamente el archivo del servidor para reescribir las cabeceras http: http://diariosdelanube.blogspot.com.es/2013/09/activar-la-compresion-de-contenidos.html

        Y ¡90! es una pasada, está muy bien. Optimizando las imágenes de la página principal vas a conseguir unos cuantos puntitos más: http://diariosdelanube.blogspot.com.es/2013/09/gana-velocidad-para-tu-blog-optimizando.html

        ¡Un saludo Klaus!, un placer leerte.

        Eliminar
    5. Hola..que excelente pagina esta!! todo lo que hay en ella es todo lo que necesito y voy a necesitar.. mis gratitudes por tu trabajo esta muy bien armado y te expresas de manera muy clara..
      Sin embargo tengo un problema muy grabe, al modificar el Html o xml obtuve 95 una velocidad excelente, pero al problemase es que se modifica mi plantilla,
      http://yotiponada.blogspot.com.ar/ vela por ti mismo por favor .. No comprendo muy bien acerca de html mis datos son básico pero siempre soy corajudo y no me asusta nada..jeje así que lo que hice fue crear otro blog y copiar el original a este así lo practico y no me lamento nada, (este es el original y es así como debe y quiero que se vea: http://elbumerandelempleo.blogspot.com.ar/) ¿la pregunta es? Como se cuales son mi JAVASCRIPT que tengo instalados..? o como los encuentro..supongo que deben ser lo internos, por que los externos que poseo son el de google+ y del traductor de google. no logro entender muy bien ente puno de java, o tal ves me equivoque en el css, no sabría muy bien que hice mal.. considero que debe ser el JAVASCRIPT, espero que puedas ayudarme. gracias y espero tu respuesta. por cierto mi nombre es Robin. gracias de nuevo.

      ResponderEliminar
      Respuestas
      1. Hola Robinson, una enorme alegría que te guste y sobre todo que te pueda servir en tu Blog o página web.

        1) Antes de hacer cualquier cosa en tu Blog puedes hacer la copia de seguridad: http://www.diariosdelanube.com/2013/04/realizar-una-copia-de-seguridad-de-tu.html Aunque lo del blog de pruebas es la mejor idea para practicar.

        2) 95 es una velocidad bestial!!!. Lo que no entiendo es a qué te refieres con que se te modifica la plantilla. Hombre, a ver, a mí me pasa que Blogger cuando construye el HTML a partir del XHTML si cambia cosas y algunos códigos que comprimo me aparecen descomprimidos. Pero esto a penas baja el rendimiento nominal.

        2) hay varias formas de declarar "javascript" en tu página:

        a) Archivos de javascript externos: localiza cualquier texto que termine con ".js" : estos son archivos externos que contienen javascript que se ejecuta en tu blog.

        b) localiza la palabra javascript. Normalmente si hay funciones javascript irán dentro de una cadena donde ponga javascript y después cierre etiqueta con /script (el /script con < y > a cada lado, es que en los comentarios no puedo ponerte código).

        c) Cualquier cosa que esté entre script entre < y > y /script entre < y >.

        3) Entre los javascript que tengas, varios serán de Google y dependiendo qué quieras hacer, sería conveniente no eliminarlos.

        Mis recomendaciones para poner a tope de velocidad tu página son (pero es necesario EXPERIENCIA en HTML, CSS y JS):

        1 - Ejecutar el tutorial para realizar CSS inline y optimización de javascript: http://www.diariosdelanube.com/2013/09/la-guia-de-rendimiento-para-bloggers_10.html

        2 - Optimiza las imágenes: http://www.diariosdelanube.com/2013/06/mejora-la-velocidad-de-tu-blog-iii.html

        3- En lugar de utilizar el traductor de Google, utilizar uno con banderitas o similar. El de mi web te puede servir.

        Si deseas realizar esto pero se te hace complicado, yo realizo trabajos por un dinerillo para otros Bloggers, para renovarles la página u optimizarles el rendimiento. Cualquier cosa que necesites al respecto me puedes escribir a miguelcolomer@diariosdelanube.com o miguelcolomer@gmail.com.

        Un saludo y suerte!!!, cualquier cosa pregunta.

        Eliminar
    6. Si es verdad adquiero una velocidad buenísima.. pues he optimizado todo lo que hay en mi blog a su mínima comprensión, lo único que me mataba era el CSS y JS. acerca del HTML posee conocimiento, me la he pasado leyendo. pero como tu lo has dicho Blogger posee XML por lo que fue un poco complicado.. pero no imposible de lograr entender.

      Acerca del traductor es la mejor idea poner banderas. excelente. gracias por comentarla.

      Por lo demás seguiré intentándolo, la única manera de aprenderlo es practicándolo, agradezco tu oferta pero considero que sera mejor aprenderlo por mi mismo en caso de tener posibles conflictos en el futuro. Pero la tendré en cuenta, en el futuro planeo hacer distintos blog de negocios y necesitare de un técnico mejor que yo..jeje sin duda voy a recomendarte.

      Bueno gracias por responder. cualquier duda te lo are saber.. un saludo enorme y sigue así con tu web trabajas muy bien. Mucho éxito para ti.

      ResponderEliminar
      Respuestas
      1. Enhorabuena Robinson,
        eres un buen ejemplo de constancia y de auto-aprendizaje, de cómo uno mismo con su esfuerzo y la documentación adecuada puede llegar a conseguir resultados profesionales.

        Mi enhorabuena, eso unido a una persistencia y constancia tenaz en el trabajo es lo que te ayudará a obtener éxito en todo lo que te propongas.

        Eliminar
    7. Si deseas realizar esto pero se te hace complicado, yo realizo trabajos por un dinerillo para otros Bloggers, para renovarles la página u optimizarles el rendimiento. Cualquier cosa que necesites al respecto me puedes escribir a miguelcolomer@diariosdelanube.com o miguelcolomer@gmail.com.

      ResponderEliminar
    8. Excelente me sirvio, pero en el JavaScript me sigue saliendo que este archivo bloquea http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
      ya agregue el contenido en la plantilla pero al guardar me salta error :(

      ResponderEliminar
      Respuestas
      1. Hola jarckol, genial lo del CSS. Este verano han actualizado las normas de javascript y ya no basta con que sea "inline", ahora hay que realizar las llamadas en diferido o asíncrono. Así pues:

        1) Asegúrate en primer lugar de haber hecho en esta guía todo lo que pone bajo el título "Paso a paso con el JAVASCRIPT ". Con esto tendrás el javascript inline y listo para estar optimizado sin necesidad de realizar cargas externas de servidores.
        2) Para la llamada a jquery, realiza esta guía para cargarlo asíncronamento o en diferido: http://www.diariosdelanube.com/2014/07/como-mejorar-el-rendimiento-de-tu-sitio.html Prueba primero una llamada en asíncrono y si ves que no funciona haces el ejemplo en diferido.

        Cualquier cosa por aquí ando.

        Un saludo y muchas gracias,

        Miguel.

        Eliminar
      2. Ash! no puedo bro, hago lo indicado aqui, pero lo de las librerias jquery no lo entiendo, no se como hacerlo. :(

        Esta captura es del mensaje que me sale en page Speed >>> http://4.bp.blogspot.com/-ut8sQh9Ezfk/U9hSEsRev0I/AAAAAAAAHDU/UMdYRL0yTvQ/s1600/0.PNG
        me indica que este archivo es el del problema >>> http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js

        Pero en la plantilla no encuentro ese archivo en ninguna parte..

        Pero le doy en ver codigo fuente de l apagina y si sale el archivo
        >>> http://1.bp.blogspot.com/-oYX7jLrbPXY/U9hSbo8jXMI/AAAAAAAAHDc/cG9bn1X8xXc/s1600/1.PNG

        Si me puedes organizar el codigo y decirme como agregarlo en la plantilla de lo agradeceria mucho :D

        Todo lo demas me funciona perfecto..

        Eliminar
      3. Hola,
        analizando el código fuente de tu página se ve que está en el gadget HTML7, busca en la vista de diseño cuál es el que tiene ese identificador. En el código HTML/Javascript de ese gadget mete una llamada asíncrona a ese jquery para solucionar el problema o directamente elimina ese jquery si es un accesorio que no aporte nada en el Blog.

        Un saludo!!

        Eliminar
      4. jeje ya, era un gatgets de una ventana pop up que tenia, no recordaba... ahora si solucionado :D
        Otra duda, en gtmetrix me dice que debo redimencionar las imagenes, ya mire un post aqui sobre eso pero no es lo que quiero..

        Tratare de explicarte a ver si me entiendes.

        En todas las entradas la imagen principal son de estas dimenciones 400x171 px, unas menos, pero no pasan de ahi...

        Pero en la miniatura de cada entrada es de 197x157 px
        esto es lo que me sujieren
        http://2.bp.blogspot.com/-qb4r1O_vRqU/U9kUKXkPoYI/AAAAAAAAHD8/F5V89TjvP_k/s1600/tama%C3%B1o.PNG

        pero si le coloco esas dimenciones a la propia imagen en la entrada quedaria distorcionada,,
        como areglaria eso?

        tambien cuando agrego mas de 2 o 3 imagenes en las entradas en la pagina principal al analizar me muestra esas imagenes que se necesitan optimizar. pero no entiendo por que, ya que no estan cargandose en la pagina principal solo deben salir cuando abro dicha entrada..

        si me resuelves esas dudas te lo agradesco :D

        Eliminar
      5. GTMetrix utiliza estándares mucho más ortodoxos que Pagespeed. El problema es que GTMetrix sigue utilizando las normas clásicas de rendimiento a la hora de tratar imágenes que obligan a que éstas no puedan escalarse a valores en píxeles por encima del tamaño nativo de la imagen o por debajo.

        En Pagespeed están solucionando un tema con el cálculo y detección del escalado de imágenes para que no sea obligatorio que la imagen se presente en su resolución nativa en el navegador. Permitirán que la imagen pueda crecer o decrecer un tanto por ciento con respecto a su resolución nativa (posiblemente un 50%). De esta manera, ahora con los diseños Responsive donde se trabaja muchísimo con los escalados y adaptaciones de imagen, se podrán utilizar resoluciones no nativas para que queden bien las imágenes en todos los dispositivos (móviles, pcs, tabletas).

        En tu caso, si quieres cumplir con GTMetrix y con como está ahora Pagespeed hasta que resuelvan el tema del escalado, lo único que puedes hacer es mostrar la imagen en su resolución nativa. Esto es, si la imagen mide 150x150px no la escales a un tamaño mayor o menor (de 150 a 200 o de 150 a 72). Pero vamos, en un futuro esto no será necesario.

        Si te fijas todas las imágenes que yo utilizo están en su resolución nativa y empleo media queries para presentar distintos tamaños según resolución. Esto es posible en mi web porque es muy simple, en ella prima el contenido de texto frente a todo (son tutoriales, guías... cosas de sólo texto).

        En segundo lugar, siempre debes optimizar "el peso" (tamaño en KB) las imágenes como pongo en este artículo (según los ejemplos que ponen en Google Developers): http://www.diariosdelanube.com/2013/06/mejora-la-velocidad-de-tu-blog-iii.html o en este http://www.diariosdelanube.com/2013/09/gana-velocidad-para-tu-blog-optimizando.html

        Cualquier duda me dices. Un saludo!!!

        Eliminar
    9. Todo entendido amigo :D
      Mira genio gracias a tus consejos el puntaje que alcanse..
      http://3.bp.blogspot.com/-lh_G-vCVZ0o/U9waUavRRUI/AAAAAAAAHFE/1ypjxMtKgNs/s1600/paggesped.PNG

      Pero aun me salen estos problemas:

      Minificar CSS
      Compactar el código CSS puede ahorrar una gran cantidad de bytes de datos y acelerar los tiempos de descarga y análisis.
      Reducir CSS de estos recursos para reducir su tamaño en 4,4 KB (reducción del 35%).

      Si se reduce http://www.google.com/…b76a3ecbb1316dedbc04cd169/default+es.css, supondría un ahorro de 3,8 KB (reducción del 40%) después de la compresión.
      Si se reduce http://www.google.com/cse/style/look/v2/default.css, supondría un ahorro de 530 B (reducción del 18%) después de la compresión.

      ya hice lo mencionado aqui pero de igual forma me seguia saliendo ese mensaje..

      y esté no lo encuentro
      Reducir JavaScript de estos recursos para reducir su tamaño en 726 B (reducción del 1%).

      Si se reduce http://www.google.com/…76a3ecbb1316dedbc04cd169/default+es.I.js, supondría un ahorro de 726 B (reducción del 1%) después de la compresión.

      Gracias por toda la ayuda...

      ResponderEliminar
      Respuestas
      1. WoW, ¡muy bueno!, esa velocidad ya es muy buena.

        Para minimizar el javascript, el html y los css hazte esta guía: http://www.diariosdelanube.com/2013/09/minimiza-los-css-javascript-y-el-html.html

        Con eso subirás un pelín más.

        Un saludo y enhorabuena!!!

        Eliminar
    10. Hola, Miguel, he conseguido en un blog una puntuación de 86 con optimización de imégenes pero se me resiste mucho este artículo. He hecho lo que indicas del css, siguiendo todos los pasos, pero dejan de funcionar la variables, y no entiendo mucho sobre cómo lo corrigió el compañero de arriba.

      Gracias.

      ResponderEliminar
      Respuestas
      1. Hola Jorge, 86 ya es muy buena puntuación, ya sólo te queda ajustar el bloqueo por css y javascript.

        Con el de css la duda que tengo es si se trata de un Blog de Blogger o es uno en WP. La idea es que hagas "inline" el css que utilices.

        Si es Blogger haz primero los pasos que están bajo el subtítulo "Paso a paso con los CSS:" de esta guía desde el 0 al 6.

        Comienza por ahí y luego seguimos. Me vas comentando las dudas que te surjan y haz siempre copia de seguridad.

        Ánimo que te queda muy poco para alcanzar el 90. Aquí estoy para las dudas, empieza por los css y luego vamos al javascript.

        Un slaudo!

        Eliminar
      2. Lo primero de todo, gracias por tu ayuda, estoy consiguiendo aumentar mucho la velocidad de mis blogs.

        Estoy hablando de blogger y ya que en un blog un me salía y estaba atascado me puse con otro (con una plantilla diferente) pero sigue dando error, aunque éste sea completamente diferente.

        Lo que yo veo es que al cambiar las etiquetas que rodean el css se dejasusta y es entonces cuando da error.

        En el primer blog las variables comentadas, daban problemas, me decía que añadiera "" y cuando lo hacía no aparecía correctamente el blog, aunque eso sí el pagespeed se disparaba.

        En el segundo, he ido probando a añadir algunas cosas dentro del que podía sin que se desestabilizara el blog, pero si lo intentaba hacer realizando los pasos, al ponerlo dentro el "<style type="text/css"><!-- /*< type='text/css'> (he quitado "style" para escribirlo en el comentario aquí") me salta error, no en las variables, ya que no están declaradas en esta plantilla sino al hacer referencia a una url con "&" en un archivo que lo lee como si llamase a una variable. Pero si incluyo todos los css menos ese que me da problemas no da error pero sí que desaparece el lápiz de editar, y supongo que a lo mejor ese no sea el único problema.

        Por el momento ya voy por 88, y sólo me queda el css, para que se dispara, ya que probando a unirlo ponerlo inline (y tratando de que no salte error toqueteando) me ha llegado a dar 96, pero hay algunos errores (no demasiado graves pero errores) que me impiden dejarlo asi.

        Eliminar
      3. Aclaro que los código los copio y los pego bien tal y como salen en la entrada, sólo que han desaparecido al ponerlos aquí.

        Eliminar
      4. Voy respondiendo cada cuestión:

        [JORGE]
        "Lo primero de todo, gracias por tu ayuda, estoy consiguiendo aumentar mucho la velocidad de mis blogs."
        [MIGUEL]
        Genial Jorge, para mí es una alegría ayudar y que sirva. La velocidad es fundamental para conseguir una usabilidad plena.

        [JORGE]
        Estoy hablando de blogger y ya que en un blog un me salía y estaba atascado me puse con otro (con una plantilla diferente) pero sigue dando error, aunque éste sea completamente diferente.

        Lo que yo veo es que al cambiar las etiquetas que rodean el css se dejasusta y es entonces cuando da error.
        [MIGUEL]
        La clave está en conseguir editar la plantilla para que el css quede inline. No debería alterar eso la presentación. Debes conseguir que todas las clases del CSS queden metidas dentro de las etiquetas que te he puesto en la guía.

        [JORGE]
        En el primer blog las variables comentadas, daban problemas, me decía que añadiera "" y cuando lo hacía no aparecía correctamente el blog, aunque eso sí el pagespeed se disparaba.

        En el segundo, he ido probando a añadir algunas cosas dentro del que podía sin que se desestabilizara el blog, pero si lo intentaba hacer realizando los pasos, al ponerlo dentro el "<style type="text/css"<!-- /*< type='text/css' (he quitado "style" para escribirlo en el comentario aquí") me salta error, no en las variables, ya que no están declaradas en esta plantilla sino al hacer referencia a una url con "&" en un archivo que lo lee como si llamase a una variable. Pero si incluyo todos los css menos ese que me da problemas no da error pero sí que desaparece el lápiz de editar, y supongo que a lo mejor ese no sea el único problema.
        [MIGUEL]
        Prueba a poner en el código que añadas dentro de las etiquetas del CSS el CDATA: //<![CDATA[ yo lo uso mucho en javascript para que no te de los errores del & y no tengas que utilizar caracteres de escape tipo &amp.

        [JORGE]
        Por el momento ya voy por 88, y sólo me queda el css, para que se dispara, ya que probando a unirlo ponerlo inline (y tratando de que no salte error toqueteando) me ha llegado a dar 96, pero hay algunos errores (no demasiado graves pero errores) que me impiden dejarlo asi.
        [MIGUEL]
        Comprueba que hayas metido todas las clases que necesitas. Antes de comprimir el css inline, mete las clases tal cual "a pelorro". Con el Javascript todo depende de la colocación.

        Ya casi lo tienes ;)

        Eliminar
      5. Muchísimas gracias por todo. La clave estaba en el orden del css.

        Al principio de la guía tenía 76 en ordenadores y 71 en móviles, ahora 92 y 90 respectivamente. Sólo me quedaría priorizar el contenido visible (html) y ser más estricto con la optimización de imágenes, ya que hay errores que son culpa de Adsense.

        Espero porder conseguir lo mismo en todos mis blogs.

        Eliminar
      6. Cualquier cosa aquí estoy Jorge. Para la priorización del contenido visible, trata de que se dibuije "del tirón" la página. Reordena tu Javascript, sigue estas recomendaciones: http://www.diariosdelanube.com/2014/07/como-mejorar-el-rendimiento-de-tu-sitio.html Vienen varios ejemplos prácticos y te vendrá muy bien. Trata de que el Javascript que no sea necesario tener cargado antes de que se dibuje la página, esté al final, justo antes del cierre del /body>. Intenta usar Javascript asíncrono (async) o diferido (deferred) como te explico en la guía que te he pasado.

        un saludo!,

        Eliminar
    11. Hola Miguel, una consulta en mi web que tiene una plantilla de blogger store tengo un fragmento en el , pero no es css o tendría que pasarlo a css? No lo tengo claro.

      // Background Menu Setting
      < Variable name="menu.background.color" description="Menu Background" type="color" default="#3b5998" value="#3b5998"/ >

      Enlace:http://otaku-no-sekai-tienda-online.blogspot.com/
      Gracias!

      ResponderEliminar
      Respuestas
      1. Hola!,
        esto que muestras parece parte de un script que monta una css. En este caso es mejor no tocarlo. Si quieres saber qué es una css y de más, aprovecha esta guía: http://www.diariosdelanube.com/2014/01/que-son-las-css-que-es-el-html-para-que.html

        Un saludo y cualquier cosa aquí me tienes para las dudas.

        Eliminar
    12. Hola Miguel! Tengo un problema, cuando sigo el paso a paso con los CSS, lo hago bien, pero pierdo el formato de varios widgets y además pierdo el icono para compartir una entrada en las redes sociales. Luego cuando hago lo del JavaScript la cosa empeora. Una consulta los yo tengo varios script dentro de b:if y de div por ejemplo, lo que yo hice fue dejar los b:if y div en el mismo lugar de antes. Debo ponerlos junto con los script?
      Espero puedas responderme, mi página tiene una puntuación de 54.

      ResponderEliminar
    13. ¡Hola!,
      a mí con las optimizaciones de estilos y javascript me pasó igual al principio. Si te das cuenta de que hay estilos que pierdes, debes mirar qué clases y reglas de esos estilos son las que impiden que se muestren correctamente los widgets. Para ir con más precisión y saber cuáles fallan, delante de la página, en el navegador, cuando la muestres, pulsa F12 en Chrome y con el icono de la lupa haz "clic" sobre cada widget fallido. Con eso verás a qué estilos llama o qué errores tiene. Esos son los estilos que deberás corregir.

      Con ell Javascript, debes colocarlo en los puntos precisos antes de donde se produzca la llamada. Si cometes cualquier error de sintaxis, al igual que sucede con los estilos, no te funcionarán. Pulsa F12 al igual que con los estilos y mira donde pone "consola" para localizar los javascript que fallan y entender porqué.

      Mi consejo es que te crees un blog de pruebas, lleves todo el código de la plantilla allí y hagas tus pruebas hasta que lo dejes fino y entonces lo muevas a tu blog o web oficial.

      Un saludo!

      Un saludo,

      ResponderEliminar
      Respuestas
      1. Muchas gracias, voy a seguir tu consejo. Por casualidad creaste alguna entrada en donde hables de como condicionar los widgets para que no aparezcan en la versión movil del blog?

        Muchas gracias nuevamente!

        Eliminar
      2. Para las dudas, aquí me tienes.

        Sí claro, para lo del móvil esto te puede ayudar bastante: http://www.diariosdelanube.com/2013/11/personaliza-tu-plantilla-blogger-para.html

        Un saludo!

        Eliminar
    14. Hola, quería ver si me podias aconsejar con un problema relacionado a esto. Sucede que cuando termine de optimizar mi plantilla hice dos versiones, la comprimida y la normal para poder modificar después sin ningún problema. Cuando quise modificar un poco mi plantilla subi la versión normal y cuando vi, mi blog se había deshecho todo, total, lo arregle buscando en google algo de cambiar blog1 a blog2 pero no quedo solucionado del todo porque lo de evitar la carga del javascript arriba del contenido ahora ya no funciona en las paginas estaticas. Quería ver si no te había pasado o no sabias nada al respecto.

      ResponderEliminar
      Respuestas
      1. A mí me sucede a veces lo mismo con los compresores. Yo mi página por ejemplo, no puedo comprimirla en los estilos porque me termina dando errores dependiendo del navegador donde funcione.

        Yo he llegado a 98 en Pagespeed por eso, sino alcanzaría posiblemente el 100. Ya te digo que no es algo bloqueante, ve haciendo pruebas si te pica la curiosidad. Yo fui alterando parámetros de algunas de las páginas compresoras y llegué a conseguir que funcionara bien en Chrome y Firefox pero no me funcionó bien en Explorer (no utilizando la meta etiqueta para la compatibilidad).

        Con respecto al Javascript, recuerda siempre utilizar CDATA y comprobar con F12 (herramientas del desarrollador) los errores que encuentres, fíjate en la consola que te ayudará a detectarlos más fácilmente.

        Como regla general, mi recomendación con el javascript y las css es que te pases por esta guía: http://www.diariosdelanube.com/2014/07/como-mejorar-el-rendimiento-de-tu-sitio.html

        Hay veces que los Javascript no funcionan porque llaman a otra función que debe ir antes o debe cargarse primero. Si es JQuery, es posible que no te funcione si no cargas primero su librería. Te ayudará mucho a detectar el error la consola del desarrollador (F12/consola).

        Paciencia que al final sale, si bien la parte de compresión no es radicalmente importante, el buen funcionamiento de los javascript sin bloqueos si es una tarea que ayuda bastante.

        Cualquier cosa aquí estoy para las dudas.

        Un saludo!

        Eliminar
    15. Hola Mira yo lo hago todo igual como dices y se me descompone la pagina me queda todo desorganizado solo implementando el css ! lo del javascript todavia no lo e provado ya que primero quiero hacer esto, lo e intentado de todas las maneras y nada, me puedes explicar un poco mejor esto Miguel, me estoy volviendo loco con esto, se me cambian las fuentes todo la cabezera se echa para el lado jeje, por sierto muy buen posto pero para un medio novato como yo me es imposible de hacer sin algo mas de ayuda.

      a que te refieres con esto recopila tus CSS, dado que vamos a hacer que dejen de utilizarse. Debes localizarlos y descargártelos en un editor de texo o similar.

      te refieres lo que esta dentro de esto:

      ResponderEliminar
    16. te refieres lo que esta dentro de esto:
      Perdon no se escribio en el anterior mensaje



      ResponderEliminar
      Respuestas
      1. La idea es que los estilos de tu blog, los debes recopilar y poner en la propia página bajo el etiquetado que pongo en la guía.

        Con el javascript se hace exactamente igual.

        En general es "inyectar" en el código fuente de la página las css y javascript que se utilicen para evitar los tiempos de descarga desde el servidor.

        Hay otras formas de hacerlo explicadas en Diarios de la nube.

        Un saludo!

        Eliminar
    17. Lo que no se donde estan los estilos de mi blog pero si tienes mas articulos de esto mirare, haber si puedo solucionar eso que es el unico incomveniente que tengo en el page speed y muchas gracias Miguel eres el mejor me voy a nutrir de articulos desde aquí para ir mejorando mi pagina web.

      ResponderEliminar
      Respuestas
      1. Es que has escogido algo muy técnico y costoso, ve haciendo pruebas y con paciencia.

        Fíjate que en la guía te dice cómo distinguir las llamadas a los css, busca cada uno primero y extrae su contenido para luego poderlo pegar dentro de las etiquetas que explico.

        Haz pruebas y ve poco a poco, si te cuesta, prueba otras guías más sencillas primero.

        Un saludo y gracias por participar.

        Eliminar
    18. Ya lo ise miguel y todo parece estar bien mira primero ise esto

      style type='text/css'
      .....
      /style
      lo que tu decias en otro post

      y parece estar mejor y despues ise lo de este post y todo salio bien, pero estos dos no se quitan mira

      https://www.blogger.com/…/widgets/772717094-widget_css_bundle.css
      https://www.blogger.com/…&zx=d0e634cc-91ec-4043-b13c-822c0726b9ad

      esos dos siguen hay y ise lo de este post no se por que no me dio ningun error ni nada pero siguen.

      ResponderEliminar
    19. Haber si me puedes explicar algo para que ya lo tenga todo perfecto y gracias a ti Miguel.

      ResponderEliminar
    20. Por cierto en el segundo este

      https://www.blogger.com/…&zx=d0e634cc-91ec-4043-b13c-822c0726b9ad

      ¿no salia nada eso es normal?

      ResponderEliminar
    21. Gracias Miguel me a costado la propia vida pero lo e echo tengo un puntaje de 94 ahora y todavia me quedan 4 reglas por hacer, muchas gracias por todo te voy a seguir por el gran aporte que me as dado.

      ResponderEliminar
      Respuestas
      1. WoW 94 es una muy buena puntuación, ahora dale un poco a mis guías de SEO y a disfrutar. Mi mas sincera enhorabuena.

        Un saludo y gracias por participar.

        Eliminar
    22. Miguel, ahora lo que quiero hacer es lo siguiente, en el movil me sigue apareciendo estos dos.
      https://www.blogger.com/…269196239-widget_css_mobile_2_bundle.css
      https://www.blogger.com/…&zx=65138528-b741-4dd3-ac69-37da91521a7e
      e provado en sacarlos del codigo fuente usando estos caracteres /?m=1 y meterlos dentro de el codigo que nos proporcionastes creia que haciendo eso se solucionaria al igual vista de pc, pero no se soluciona, me puedes decir si tienes algun post o como se hace.

      ResponderEliminar
    23. Amigo Miguel, hay un problema cuando se comenta el < / body > y se sustituye por <!--< / body >--> </body>


      Fíjate que parece un signo como una rayita al final del blog. Esto: -->

      Tú también lo tienes justo al final de todo el blog a la izquierda.

      Fíjate también en este blog de pruebas que he hecho, con la plantilla mínima blogger y donde al comentar el < / body > sale la raya que te indico.

      http://holakftal.blogspot.com.es

      ResponderEliminar
      Respuestas
      1. Hola Félix!,
        cuando pueda lo quito, es que creo que eso puede ser por dos razones:

        1) Sobra ese cierre de comentario de código --> (la más probable).

        2) Hay alguna etiqueta mal cerrada antes.

        Ahora no puedo meterme pero cuando lo compruebe te lo notificaré en este comentario.

        Un saludo y muchas gracias por participar!,

        Eliminar
    24. holan gracias por tu tutorial no soy experto ni nada mas bien soy maa novato y esta muy bien explicado para gente como yo mi estadistcas en spid page son 96/100 de antes de comenzar que era 80/100 naada mas lo del java si no lo supe aser tengo que cortar y pegar todos los scrit en el código o como se hace gracias

      ResponderEliminar
      Respuestas
      1. Gracias a ti, aquí estoy para ayudar. Enhorabuena porque pasar de 80 a 96 es un salto grande y ya estás en "verde" en los indicadores de pagespeed.

        Lo de los javascript lo tienes en varios tutoriales de Diariosdelanube, puedes poner en el buscador de la página " javascript pagespeed" y te aparecerán todos.

        En términos generales, se trata de ir viendo las referencias a archivos .js en tu código para localizar los javascript que cargas en tu web.

        Después ves dentro de cada .js el código que contiene y lo pegas en tu página como pongo en los tutoriales.

        Verás que esto incrementará también el rendimiento. Es mejor que sigas las instrucciones de los tutoriales que tengo en la web porque la aceleración de javascript no es rápida de hacer y requiere que la veas paso a paso.

        De todas maneras, busca el tutorial y cualquier duda me vas preguntando, siempre estoy en los comentarios.

        Eliminar
    25. Tremendo artículo. Te agradezco infinitamente Miguel.
      Realicé los pasos del css: Quitar
      Ahora en pagespeed el rendimiento para móvil pasó de 70/100 a 89/100 (en uno de mis artículos más pesaditos).
      Aún tengo pendiente lo del javascript. Pero la emoción me llevó a comentar el gran cambio y mejora de carga. Saludos y gracias.

      ResponderEliminar
      Respuestas
      1. Nada, a mí me pasó como a ti hasta que salió. Tienes en esta web muchos artículos sobre pagespeed y gtmetrix para subir más incluso.

        Muchas gracias por tu feedback y por participar.

        Eliminar
    26. Hola Miguel, Para acelerar la carga pasé por las páginas GTmetriz y PageSpeedInsights y me sale lo siguiente pero no se sé como hacerlo:

      Eliminar el JavaScript que bloquea la visualización y el CSS del contenido de la mitad superior de la página.

      Evita los redireccionamientos a páginas de destino.

      The following resources are loaded synchronously. Load them asynchronously to reduce blocking of page rendering
      (https://apis.google.com/js/plusone.js synchronously)

      Saludos.

      PD: leí paso a paso con los javascript y el CSS y no comprendí nada. Lo siento. ¿Me puedes ayudar igual?

      ResponderEliminar
      Respuestas
      1. Hola,
        si el Blog es Blogger, claramente esta parte de la guía te resuelve el problema http://www.diariosdelanube.com/2013/09/la-guia-de-rendimiento-para-bloggers_10.html

        En general el "render blocking" se produce cuando llamas a recursos externos y ienes que "perder tiempo" descargando el recurso de la web de origen y después "parsearlo" o "interpretarlo" en el navegador del usuario. Esto sucede con los JS y los CSS. Las llamadas "a la antigua" donde se ponía la referencia al sitio del que se descarga el css o el .js han sido ya muy superadas por otros medios: http://www.diariosdelanube.com/2014/07/como-mejorar-el-rendimiento-de-tu-sitio.html

        En general, lo mejor con los CSS es hacerlos "inline" como explico en el tutorial o que se carguen a través de un javascrit asíncrono.

        Para el tema del javascript asíncrono: http://www.diariosdelanube.com/2016/01/mejora-el-rendimiento-de-tu-web.html

        El Javascript asíncrono, permite al navegador seguir "dibujando cosas" sin quedarse parado esperando a que termine el javascript.

        Prueba con esos tutoriales y mevas preguntando.

        Un saludo!

        Eliminar
      2. Mil gracias, Miguel. Voy a leer los tutoriales.

        Saludos.

        Eliminar
      3. Nada, un placer. Cualquier cosa pregunta y vamos viendo. Un saludo!

        Eliminar

     

    © 2015 Por: Miguel García Sánchez - Colomer en Diarios de la nube Todos los derechos reservados.