Acelera tu WordPress. Parte III: Trucos para W3 Total Cache

Instalar el plugin W3 Total Caché para WordPress, incrementa el rendimiento de nuestro sitio hasta 10 veces, es decir, disminuye significativamente el tiempo de respuesta, mejora la experiencia de usuario y el aumenta rendimiento del servidor de hosting.

Podríamos decir que instalado y configurado este sistema de cache, el sitio ya está optimizado, y es así. Pero los sistemas de caché tienen intervalos de actualización, que crea archivos estáticos cada cierta cantidad determinada de tiempo. W3 Total Cache utiliza segundos para estos intervalos y por defecto tiene 180 y 900 segundos, es decir 3 y 15 minutos.

El tiempo necesario para no "estresar" al usuario ni al servidor dependerá de la característica de nuestro sitio web, que puede ser un sitio corporativo o personal, un blog, una tienda virtual o ecommerce, entre otros.

El tiempo utilizado por defecto en este plugin, a mediano plazo, no hace posible reflejar las bondades de un sistema de caché, es por eso que el tiempo que fijemos está directamente relacionado a nuestro sitio web. Por ejemplo, si realizamos actualizaciones o cambios semanalmente, el sistema de caché debiera tener intervalos de 7 días, y como podemos deducir, este ciclo está directamente relacionado a los cambios que realicemos. Pero también, si queremos priorizar el uso de los archivos estáticos, para mejorar la experiencia de usuario, podemos aumentar el tiempo a 45 días o más.

Además, independiente del tiempo fijado para los intervalos de creación de caché, si queremos limpiar o crear el caché cuando queramos, W3 Total Cache tiene la opción para hacerlo en cada página o a todo el sitio de una vez, en la opción Purge Cache.

Los tiempos recomendados para fijar los intervalos de creación de cache o archivos estáticos son los siguientes:
  • 7 días: 604800 segundos.
  • 14 días: 1209600 segundos.
  • 21 días: 1814400 segundos.
  • 45 días: 3888000 segundos.
Y si queremos ser extremos, podemos dejarlo cada 3 meses (7889400 segundos) o 6 meses (15778800 segundos). Dependerá de nuestras necesidades.

Una vez elegido el intervalo de tiempo para nuestro sitio, es momento de ir a la configuración del plugin. Para esto debemos ir a las siguientes secciones.

Caché de página

Ir al parámetro: Intervalo de recolección de basura y cambiar por el tiempo elegido.



Caché de Base de Datos

Ir a los parámetros: Máximo tiempo de vida para los objetos almacenados en caché y Intervalo de recolección de basura.



Caché de Objetos

Ir a los parámetros: Duración por defecto de la caché de objetos y Intervalo de recolección de basura.



Utilizando estos trucos ya podremos estar tranquilos de tener un sitio veloz para nuestros visitantes, y como nos podremos dar cuenta, este plugin posee cientos más de parámetros y configuraciones, que luego podremos ir conociendo a medida que lo utilicemos.

Acelera tu WordPress. Parte II: Configuración de W3 Total Cache

Luego de instalar W3 Total Cache siguiendo las recomendaciones de su Setup Guide, nuestro sitio está optimizado para acelerar su carga y mejorar la experiencia de usuario. En este artículo revisaremos la  configuración de cada capa de cache que se puede activar en este plugin.

Como aclaración, las recomendaciones de configuración que veremos a continuación considera la versión gratuita de W3 Total Cache y un sitio en un servicio de hosting compartido.

Page Caché (Caché de página)

Habilita el almacenamiento en caché de la página para disminuir el tiempo de respuesta del sitio.

Recomendación
  • Estado: Activado
  • Método de caché: Disk: Enhanced.
Optimiza: El rendimiento en el uso de ancho de banda.













Minify (minificar)

Reduce el tiempo de carga disminuyendo el tamaño y la cantidad de archivos CSS y JS. Elimina automáticamente datos innecesarios de CSS, JS, feed, página y publicación HTML.

Recomendación
  • Estado: Desactivado
Optimiza: El rendimiento en el uso de ancho de banda.

Solo se recomienda para administradores avanzados.


Database Cache (Caché de base de datos)

Habilita el almacenamiento en caché de la base de datos para reducir el tiempo de creación de publicaciones, páginas y fuentes.

Esta capa de caché es la que más impacta en el rendimiento de nuestro sitio web, ya que WordPress hace bastante abuso uso de Mysql.

Recomendación
  • Estado: Activado
  • Método de caché: Disk.
Optimiza: El rendimiento en el uso de la base de datos y carga del servidor.


Object cache (Caché de objetos)

Habilita el almacenamiento en caché de objetos para reducir aún más el tiempo de ejecución de operaciones comunes.

Recomendación
  • Estado: Activado
  • Método de caché: Disk.
Optimiza: El rendimiento en el uso del CPU del servidor.



Browser Cache (Caché de navegador)

Reduce la carga del servidor y disminuye el tiempo de respuesta utilizando la caché disponible en el navegador web del visitante del sitio.

Recomendación
  • Estado: Activado
Optimiza: El rendimiento en el uso de ancho de banda y carga del servidor.


User Experience - Lazy Load (Carga diferida)

Carga diferida de imágenes.

Esta es una de las optimizaciones más recientes que se han implementado y es bastante útil, ya que solo carga las imágenes de una página cuando el usuario las puede ver.

Recomendación
  • Estado: Activado (Lazy Load Images)
Optimiza: El rendimiento en el uso de ancho de banda.


Fragment Caché (Caché fragmentado)

Habilita el almacenamiento en caché de fragmentos reduce el tiempo de ejecución de operaciones comunes.

Recomendación
  • Método de caché: Disk.
Optimiza: El rendimiento en el uso del CPU del servidor.



Con estas recomendaciones ya tenemos más control del sistema de caché de nuestro sitio. Podemos ver que hay otras opciones que podemos utilizar como:
  • Opcode cache.
  • CDN.
  • FSD CDN.
  • Reverse Proxy (Proxy inverso)
  • Estadísticas de cache
  • Panel para Google Page Speed widget
  • Debug
Que sin duda optimizarían más nuestro sitio. En el siguiente artículo veremos algunos trucos para optimizar aún más W3 Total Cache y el rendimiento de nuestro sitio.

Acelera tu WordPress. Parte I: Instalación de W3 Total Cache

El plugin para WordPress, W3 Total Cache, es una herramienta que crea contenido estático, lo que permite acelerar la carga de un sitio web, mejorar la experiencia de usuario, optimizar el SEO, disminuir el uso de ancho de banda, disminuir la carga del servidor, entre otras cosas más.

Elegimos esta herramienta por las opciones de configuración que posee, ya que podemos administrar el cache en distintas capas:
  • Caché de navegador.
  • Caché de páginas web (minizar html, js y css).
  • CDN.
  • Caché de objetos.
  • Caché de base de datos.
  • Carga diferida de imágenes.
Además, es compatible con distintos métodos de caché: Disco, Redis, Memcached, APC, APCu, eAccelerator, XCache, and WinCache.

Podemos ver más características de este plugin en el siguiente link.


Instalación de W3 Total Caché

Paso 1

Ingresar al administrador de tu WordPress.


Paso 2

Ir a añadir nuevo plugin.


Paso 3

Buscar el plugin: w3 total cache





Paso 4

Instalar y activar w3 total cache


Configuración inicial de w3 total cache

Una vez instalado el plugin, vamos a la configuración de este (settings) y veremos el asistente de configuración (TOTAL CACHE: Setup Guide).

Se recomienda seguir la configuración indicada de acuerdo a los resultados del test según tu sitio.



Estas recomendaciones básicas acelerarán tu sitio de forma inmediata, pero podremos optimizar aún más el sitio.

El triángulo del SEO

¿En qué debemos preocuparnos cuando queremos posicionar nuestro sitio?

Para esto, podemos encontrar varias respuestas, según el tipo de sitio que tengamos y la estrategia que tenemos planteada, pero deben basarse en contenido, estructura y experiencia del usuario o UX.


Triángulo del SEO

Contenido

Ya es sabido que el contenido de nuestro sitio debe ser original. Además debe enfocarse en nuestro potencial cliente, y debemos preocuparnos en cómo respondemos a sus necesidades.

Una manera es, preguntarnos:

¿Qué es lo busca mi potencial cliente, en el contexto de mi negocio?
¿Cuáles son sus inquietudes?
¿Tiene algún problema no resuelto?

Al leer las preguntas, nos damos cuenta de que es cercano a cuando estamos desarrollando la estrategia de negocio; esto, nos sirve para saber que no debemos ir muy lejos para hacernos las preguntas correctas; una llevará a otra, hasta que demos con el contenido que sea valioso, para nuestros clientes.

La fuente de inspiración

Ya, tenemos las preguntas ¿Y ahora qué? Bueno, debemos responderlas y generar el contenido para publicarlo en nuestro sitio, página, tienda, blog, o lo que estemos trabajando.

Para responderlas, no solo nos servirá el análisis interno que hagamos, sino que también deberemos buscar fuentes de información, que nos ayudarán a encontrar patrones y enfocar nuestro resultado. Para esto, es recomendable, buscar el término en los buscadores directamente, y ver qué tipo de páginas lo abordan y cómo. También, buscar en redes sociales, unirnos a grupos y observar; participar también es una buena idea.

Otra opción son las herramientas estadísticas de búsqueda, como Google Trends. Acá, podremos ingresar varios términos de búsqueda, ver su comportamiento y compararlos.

También podemos analizar a la competencia, con herramientas como SimilarSites, woorank, entre otros.

Con toda esta información, podremos encontrar las brechas de nuestro sitio y las necesidades de los clientes, para publicar un contenido original.


Estructura

En este punto, entramos un poco más a fondo, y acá hay un post especialmente para esto. Pero, en resumen, debemos también considerar la estructura interna de una página (No confundir con esta otra estructura).

Acá el "jefe" es Google, y debemos estar actualizados según sus exigencias y nuevas formas de presentar nuestras páginas a este gigante. Como por ejemplo, lo nuevo son las páginas HTML AMP, que son páginas optimizadas para móviles.

Una herramienta útil para seguir los lineamientos sobre la estructura, es, la consola de búsqueda de -sí, de nuevo- Google.

Experiencia de Usuario o UX

Todo lo anterior no serviría de nada si no logramos satisfacer a nuestros visitantes. Si el diseño, la navegación o la forma en la que está presentada la información no convencen al lector, no tendremos mucho que hacer.

Para evitar este riesgo, debemos considerar lo siguiente:
  • Utilizar un estilo acorde al negocio.
  • Proveer una buena relación entre contenido y multimedia.
  • Tener disponible los canales de contacto.
  • El contenido debe ser legible y adaptable a diferentes dispositivos.
  • No abusar de la publicidad.
  • No obligar al usuario (registro, suscripción, etc.)
  • Manejar el concepto de Landing Page.
  • Considerar un link para cada contenido.
  • No olvidar la accesibilidad.

En resumen, debemos preocuparnos de la forma y fondo de nuestra portada y cada sección de nuestro sitio, otorgando a cada publicación, un propósito.


SEO y los canales de comunicación con los clientes

Aunque tengamos una landing page optimizada para la conversión, el mejor canal de venta es la comunicación directa con nuestros potenciales clientes.

En HuevoHost, uno de nuestros proyectos, que es un servicio de hosting orientado a pequeñas y medianas empresas; me he preocupado de poder satisfacer a los clientes desde que llegan al sitio. Con más de 200 a la fecha, un factor que descubrí es que cada uno tiene su forma de comunicarse y que también utiliza uno o varios canales.

Analizando la cultura comunicacional de mis clientes, opté por aumentar los canales de, solo un formulario de contacto y sistema de tickets, a todos los que están a mi alcance y pueda manejar. Entonces pasé a tener los siguientes:

  1. Formulario de contacto.
  2. Sistema de tickets.
  3. Chat Online.
  4. WhatsApp.
  5. Redes sociales (Facebook, Twitter, G+).
Lo que ocurrió fue que pude conectarme con el cliente de una forma bidireccional y en tiempo real, cosa que no ocurría con los dos primeros canales. Esto ayudó a ganar clientes-amigos, y con algunos hemos logrado establecer relaciones de confianza, que antes no se generaban.

Según el canal de comunicación que use el cliente, varía la forma en que se comunica, siendo lo más inmediato el Chat Online, seguido por WhatsApp.

También hay clientes que envían el mismo mensaje por más de un canal (Buena oportunidad de ganarse su confianza). En este caso recomiendo responder en todos los que utilizó, ya que eso envía la señal de que estos están vigentes; y siempre, ese mismo cliente, al tratar de comunicarse nuevamente, utiliza sólo uno, ya que comprendió de que todos funcionan.

Cada canal tiene sus ventajas e inconvenientes; por ejemplo, para mí es mucho más cómodo tratar temas de soporte por el sistema de tickets, porque así hay un seguimiento y un caso no se puede cerrar hasta que esté resuelta la inquietud o problema. En cambio, en otros canales puede ocurrir que se pierda el tema en cuestión, por lo que otorga la comunicación en tiempo real.

Por otro lado, algo muy importante es cumplir y respetar los tiempos de respuesta que hayamos ofrecido al cliente. En el caso de HuevoHost, es de 24 horas; aunque generalmente se responde en menos de una hora, ese tiempo es suficiente para responder cuando hay varios clientes intentando comunicarse a la vez.

En resumen, se deben definir y mantener vigentes los canales de comunicación que ofrecemos al cliente, y siempre debemos responder a todas sus consultas, demostrando que nuestro servicio va enfocado a la satisfacción de este.

¿Twitter sirve para SEO?

Sí, y tu contenido debe ser único o específico.

Hace cuatro años, cuando estaba maravillado con las posibilidades que encontraba con html5, aprendí que es posible realizar validaciones de formularios por parte del navegador; así que empecé a utilizarlo bastante, para así evitar sobrecargas innecesarias del servidor de una aplicación web que estaba desarrollando en ese entonces.

En mi país, para identificar a los ciudadanos, utilizamos el Rut, que es único y se utiliza para muchas cosas, entre esas, solicitarlo para el registro de usuarios.

Aprovechando la capacidad de validación con html5 y expresiones regulares, creé el siguiente input:

<input type="text" name="rut" required="required" pattern="\d{3,8}-[\d|kK]{1}" title="Debe ser un Rut válido"/>

Pero bueno, volvamos al SEO...

Aproveché mi solución y lo publiqué en Twitter. Pasaron los meses (y años), y me dí cuenta que mis pares desarrollador@s respondían al tuit, cosa que llamó mi curiosidad; así que indagué las causas del comportamiento, llegando a la conclusión que es un término buscado por ell@s.

Si buscamos "validar rut html5" podremos ver algo así:

Si bien el tuit aparece en segundo lugar, es el que realmente responde a lo requerido en la búsqueda; ya que el primero es una solución con javascript y no con html5.

Reflexiones y recomendaciones

Para este caso en particular no es mucho, pero, si tu Twitter no solo habla de ti, te recomiendo ser específico, claro y acompañar con un link (cosa que no hice) a una explicación más detallada el contenido que estás publicando en esta y otras redes sociales que utilices.

¿Alias o Dominio adicional?

Todos los planes de HuevoHost soportan dominio ilimitados, tanto para usarlos como alias o adicional.

Si no sabes cuál usar o para qué sirve un dominio alias o un dominio adicional, a continuación te lo explicamos:


Dominio Alias

En términos prácticos es tener una serie de dominios que apunten a una misma página, se usa para SEO y para protección de marca. 

Un ejemplo para SEO puede ser con el siguiente sitio:


Y otro para protección de marca:


Esto es posible configurarlo en tu cPanel, en la opción DOMINIOS > Alias.


Dominio adicional

A diferencia del Alias, un dominio adicional apunta a una página totalmente diferente al dominio principal. Entonces, para un mismo plan de hosting, utilizando esta opción se podrán alojar varios sitios con sus propias páginas y correos corporativos.

Esto lo puedes configurar en tu cPanel, en la opción DOMINIOS > Dominios adicionales.