Cómo acelerar y optimizar tu blog wordpress

12 Octubre 2008 | Archivado en Diseño Web / Recursos |

Hace escaso tiempo mi blog llegó a la portada de menéame, por aquel entonces yo no tenía previsto el hecho enfrentarme al famoso efecto menéame, este es un blog modesto y que no recibe demasiadas visitas. Cuando me di cuenta de que la noticia estaba en portada comenzaron los problemas, recuerdo que en apenas 10 minutos el blog era prácticamente inaccesible y tardaba demasiado en cargar, poco después, mi proveedor de hosting había suspendido la cuenta. La satisfacción que sentía con el hecho de verme en la portada de menéame se transformó, de buenas a primeras, en un buen puñado de mala leche que debía descargar contra algo o alguien. Tras un rápido intercambio de emails con el servicio de soporte, me indicaron que mi blog había causado una sobrecarga del servidor y que, por lo tanto, debían cancelar mi cuenta para no perjudicar a los otros propietarios de las webs que se alojaban en él. Parecía una respuesta razonable pero no adecuada, reconozco que mi blog no estaba optimizado para el efecto menéame: no usaba sistemas de cache y además tenía demasiadas consultas innecesarias a la base de datos. Aún así, el servicio de hosting por el que yo estaba pagando era deficiente, si tuviese que emplear una palabra para definir sus cualidades yo diría: overselling. Es imposible que una empresa de alojamiento web proporcione servicios de calidad cuando sobrevende sus productos. Reconozco que parte de la culpa es mía por haberme fiado de sus sorprendentes ofertas, de todas formas, en principio este blog no era para mí algo demasiado importante, solo quería experimentar y por ello, no veía inadecuado el pagar poco aunque me arriesgase a un servicio defectuoso.

La empresa de la que he hablado es: Hostony. Aunque mi blog se encuentra en un nuevo hosting, esta vez con una relación calidad precio adecuada, todavía conservo mi cuenta en hostony, la razón se debe a que poco antes de aquellos problemas había pagado mi cuota semestral, como yo no deseo regalarles mi dinero, esperare hasta poco antes de que llegue el próximo ciclo de pago y cerraré mi cuenta. Como la cuenta esta activa, me puedo permitir tomar pantallazos del estado del servidor (server status), este es de hoy mismo:

Pésimo…

Dejando de lado el tema de las empresas de hosting y el efecto menéame, vayamos al asunto que da título a esta entrada:

1 - Limpia tu theme:

La mayoría de los themes de wordpress traen un conjunto de consultas (querys) innecesarios a la base de datos, no es algo que sea intencionado, simplemente siguen el standard de diseño en base a los themes por defecto de wordpress. Todas esas consultas hacen que nuestro wordpress sea lento e ineficaz, la solución es eliminar aquellas que no aportan nada al funcionamiento de nuestro blog, así como transformar en estáticas las que no modifican ningún aspecto en concreto. Comencemos por la cabecera:

Header.php

En la cabecera se encuentran bastantes consultas superfluas que debemos eliminar convirtiéndolas en contenido estático. Algunos ejemplos, tomados del tema por defecto:

PHP:
  1. <meta http-equiv=“Content-Type” content=“<?php bloginfo(’html_type’); ?>; charset=<?php bloginfo(’charset’); ?>” />

Podría ser:

PHP:
  1. <meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8″>

Otra consulta que debemos eliminar es la que nos muestra la URL a nuesta hoja de estilos CSS:

PHP:
  1. <link rel=“stylesheet” href=“<?php bloginfo(’stylesheet_url’); ?>” type=“text/css” media=“screen” />

Indicando la ruta evitamos esa consulta, quedaría así:

PHP:
  1. <link rel=“stylesheet” href=“URL de tu hoja de estilos” type=“text/css” media=“screen” />

También puedes:

  • Hacer la URL del pingback estática.
  • Hacer la URL de tu Feed estática.
  • Eliminar la consulta que indica la versión de tu Wordpress.
  • Hacer el nombre de tu blog y la meta descripción estáticos.

De esta forma puedes eliminar hasta 11 consultas a la base de datos solamente en la cabecera y tu blog ira muchísimo más rápido.

Footer.php

En el pie de página también se encuentran diversas consultas que podemos transformar a contenido estático:

  • El nombre de tu blog
  • La URL del feed
  • La URL del feed de los comentarios

2 - Instala un sistema de cache:

Los sistemas de cache son la herramienta imprescindible para que tu blog sea rápido y liviano, su utilización disminuye la carga del servidor, así como el consumo de transferencia. Si quieres saber mejor como funciona un sistema de cache, y además, tienes curiosidad por saber cuál es el mejor de los existentes, debes leer este gran artículo que realizó Andrés Nieto (incorpora comparativas de los mejores sistemas de cache). Personalmente, yo utilizo 1 Blog Cacher y me va de maravilla.

3 - Comprime tu CSS:

Reduciendo los espacios en blanco de nuestra hoja de estilos, podemos incrementar la velocidad de nuestro blog, de esta forma el archivo CSS pesará mucho menos y su lectura por los navegadores será mucho más rápida. Para un diseñador la estructura del código es muy importante, resultaría complejo trabajar con una hoja de estilos comprimida, la falta de espacios haría imposible su orientación. Un método útil para solventar este problema, es tener una copia sin comprimir para poder trabajar con ella, y otra comprimida, que en este caso, sería la que subiríamos al servidor.

¿Cómo comprimo mi hoja de estilos? Para comprimir nuestro CSS existen diferentes utilidades en la red, una de ellas, y que funciona muy bien, es la que ha creado CSS Drive.

4 - Optimiza tus imágenes:

Las imágenes pesadas ralentizan mucho la carga del blog, además consumen ancho de banda en exceso. Debemos tratar de mantener una relación estrecha entre la calidad y el peso de la imagen. Por suerte, existen diferentes herramientas que nos pueden facilitar la tarea de optimizar nuestras imágenes, una de ellas es Online image optimizer.

Espero que este artículo te haya resultado de utilidad.

14 comentarios:



  1. Bitacoras.com
    12 Octubre 2008

    Información Bitacoras.com...

    Si lo deseas, puedes hacer click para valorar este post en Bitacoras.com. Gracias....



  2. MakurA
    12 Octubre 2008

    Muy interesante, tío, no tená ni idea de nada o casi nada de lo que comentas (que vergüenza de diseñador xDDD).

    Me ha sorprendido mucho lo del CSS, de verdad que parece de coña que los espacios en blanco afecten... Joder, las cosas que uno aprende ^.^'

    Y comentarte que según hablaba con Willy el otro día, si usas sitema de caché se pierden visitas "reales" a la web, y dependiendo del sistema que uses para el blog, lo mismo esas visitas no aparecen reflejadas en las estadísticas. Aunque imagino que si el sistema de caché está bien hecho, tendrán esto en cuenta para solucionarlo...

    Un abrazote!

    PS. Y estos de bitacoras.com? xDDD
    PS. No te han colgado el artículo para votar en Meneame...? Ingratos desagradecidos! =P
    PS. Si usas la palabra meneame en un post más de 5 veces, se considera masturbación...



  3. jopicar
    13 Octubre 2008

    Id. de lo mismo, yo tampoco tenía ni idea de todas esas cosas que comentas, será porque me "meneo" poco xD
    Muchas gracias por toda esta info, que seguro aprendes cuando te pasan cosas como la del meneo ;)
    Un cordial saludo.
    jopicar



  4. phill
    13 Octubre 2008

    Makura yo no tengo constancia de que se pierdan visitas reales debido al sistema de cache, no creo que altere para nada las estadísticas. Le preguntare a Willy sobre esa teoría que comentas.

    Lo de bitacoras.com es parecido a menéame pero, en este caso, no es necesario que nadie envíe la noticia al sistema, te registras y añades su url para el ping en tu blog y listo, sales en bitacoras.com y si alguien quiere pues te vota, siempre es bueno tener enlaces entrantes.

    P.D: Déjame masturbarme a mi bola cacho perro... :D



  5. phill
    13 Octubre 2008

    Gracias a ti Jopicar por leerme, y sí, es cierto, aprendí todas estas cosas cuando sufrí el efecto menéame, alguien en los comentarios de la noticia dijo las palabras mágicas "contenido estático"; a partir de ahí investigué y realicé pruebas hasta llegar a estas conclusiones.

    Saludos



  6. wakeup
    13 Octubre 2008

    No da problemas para las estadisticas, al menos no da para las que funcionan por javascript como google analytics, tampoco para las registradas en el propio servidor.



  7. phill
    13 Octubre 2008

    Gracias wakeup, a mi también me resultaba extraño el tema de las estadísticas.

    Saludos



  8. phill
    18 Octubre 2008

    He tenido que restaurar la base de datos, con ello se han perdido 2 comentarios en esta entrada, pido disculpas a las personas que enviaron esos comentarios.

    Saludos



  9. Willy Devil
    19 Octubre 2008

    En cuanto al tema de las estadísticas, doy fe de que es así:

    http://img370.imageshack.us/my.php?image=capturaho5.jpg

    Como podeis ver, las visitas, son de la IP a la que resuelve mi mismo blog, haciendo, y el agente, el 99.9% de los casos, es 1 Blog Cacher - [], es decir, el sistema de cacheado.



  10. Naskicet
    19 Octubre 2008

    Pues no sabía todo esto... ahora mismo comienzo a cambiar todo.... GRACIAS por el APORTE



  11. phill
    19 Octubre 2008

    Willy pero no hablamos de las estadísticas que ofrece Wordpress, hablamos de las estadísticas que registra apache en tu server, como awstats y Webalizer. Si lo compruebas veras que no hay cambios significativos, al menos en mi caso.

    Saludos



  12. Willy Devil
    19 Octubre 2008

    Phill, pero yo si hablaba de eso (estadisticas que ofrece wordpress) con Alex en su dia ;-) Logicamente, si metes un tail -f al access.log de tu propio servidor, vas a ver cada peticion, pero yo con Alex hable de los plugins de estadisticas, que los sistemas de cache engañan.

    Saludos



  13. phill
    19 Octubre 2008

    Cierto, los sistemas de cache engañan a las de estadísticas de wordpress, cuando visitas una entrada cacheada, las estadísticas no contabilizan dicha visita debido a que lo que estas viendo es cache y, por lo tanto, wordpress no se ha encargado de servirte la pagina, sino que ha sido el sistema de cache.

    Estábamos hablando de cosas distintas y hemos liado la madeja. :P

    Abrazos

  14. [...] hosting y además resulta necesario controlar la velocidad de carga de nuestra página web, para optimizarla como es [...]

Deja un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Los contenidos de este blog se encuentra publicados bajo una licencia Creative Commons. Creative Commons License
Blog Gestionado con WordPress. Theme diseñado por el que viste y calza :) .
Si quieres recibir las actualizaciones de mi blog suscríbete! Feed RSS Feed RSS.
CSS Válido