En el anterior artículo, o primera entrega de esta reflexión personal en dos partes, explicaba las ventajas del uso de un gestor de contenidos (CMS) como WordPress para la realización de nuestro diseño web. Como os prometía en dicha entrega, aquí os traigo mi visión personal sobre los inconvenientes en el uso de los mismos. Por último trataremos de conciliar ambas formas de trabajar y sacaremos algunas conclusiones. Pues bien, ¡comenzamos!

Inconvenientes en el uso de CMS

En el anterior post apuntábamos que dichas herramientas nos dan ya soluciones prediseñadas a muchos de los problemas más típicos que podemos encontrarnos. A su vez, podemos ampliar funcionalidades con multitud de software propio o de terceros que solventaran otros problemas o hacer un sitio más atractivo (cómo los vistosos sliders que tanto nos gustan pero que tantos problemas nos traen). Y como guinda del pastel, tenemos esos temas prediseñados que son altamente configurables, con extensos paneles de administración para cambiar desde tipo de letra, colores, botones hasta las columnas que tendrá el sitio. Todo ello totalmente responsive.

Raúl Mayorga diseñador web

Raúl Mayorga. Diseñador Web en IQ y amante de los Theme Multipurpose

Pues bien, todo esto de lo que hemos hablado trae una serie de consecuencias. Para lograr soluciones generalistas a problemas específicos, al final tendremos muchas opciones y funciones a las que no daremos uso pero que seguirá estando ahí. Si no optamos por una solución a medida para mi proyecto, siempre sacrificaré recursos que se verán reflejados en tiempos de carga y consumo de recursos tanto del servidor como del lado del cliente (nuestro navegador), entre otras cuestiones.

Como ejemplo, si habéis instalado algunos de esos magníficos Theme Multipurpose (temas multipropósito) con infinidad de funciones que no llegaremos a usar nunca o plugins de terceros en los que confiamos y luego resultan que suponen un consumo de recursos interesantes (o que pueden suponer agujeros de seguridad), amén de esos plugins que mejoran la estética o dan dinamismo a mi sitio web. En cualquiera de estos casos, entre otros, podemos ver incrementado de forma brutal el consumo de recursos. Al final esto nos puede traer problemas en los tiempos de carga de la página o incluso con nuestro proveedor de servicios de hosting (si es compartido). Si buscamos un poco por internet, se podrán encontrar casos como lo que expongo y soluciones a los mismos.

Además, aunque también hay que considerar que un sitio web en un CMS popular como es WordPress tendrá unas medidas de seguridad muy robustas, actualizadas por la comunidad de desarrolladores, también estará en el punto de mira de hackers informáticos.  Siempre hay que ser cuidadosos y preventivos; hacer respaldos de nuestros proyectos, pero con WordPress se hace prácticamente indispensable el programar BackUps (por cierto hay plugins que lo hacen muy bien pero… ¡Exacto, consumo de recursos extra!). Y, en adición, tendremos que estar revisando nuestro sitio para mantenerlo actualizado a la última versión de WordPress.

Actualizando a última versión de WordPress ¡Sorpresa!

Sorpresa pero sorpresa, ¿eh? Por cuestiones de seguridad decides actualizar tu WordPress y ahora resulta que dejan de funcionar algunos plugins o lo que es peor, el tema que has comprado en su día y que iba de maravilla. Pues bien, tendrás que ir a tu proveedor del tema y cruzar los dedos porque haya actualizado también dicho tema a una versión compatible con el nuevo WordPress. Si es así ya podrás respirar, descargarlo y proceder a actualizar. Sino tienes un pequeño problema. Por ello siempre recomiendo verificar la versión de tu tema y plugins para garantizar que son compatibles antes de actualizar la versión de WordPress. Además, si tienes una versión local de desarrollo, primero deberías hacer las pruebas ahí.

La gran conciliación

Volviendo a la frase del primer post “¿Es que hay que elegir?” y tras haber dado mi humilde repaso a algunos pros y contras del uso de gestores de contenidos tipo WordPress, ahora me aventuro a buscar un punto de conciliación que trate de extraer lo mejor de ambas formas de desarrollar un proyecto web:

Diseño de plantilla propia

Si nos fijamos en lo expuesto en este artículo, podríamos optimizar muchísimo el consumo de recursos de las que hace uso el servidor si, en lugar de instalar plantillas diseñadas por terceros o plantillas multipropósito que incorporen gran cantidad de funciones inútiles para nosotros, diseñamos algo a medida. Sí, volvemos al desarrollo, volvemos a usar Photoshop, Gimp, Illustrator, Fireworks o lo que desees para el diseño, volvemos a invertir tiempo en maquetar los diseños de forma responsive tocando HTML y CSS. También volvemos a dedicar tiempo a animar el cotarro con JavaScript y demás historias. Pero, podemos hacer una solución totalmente a medida que sólo tenga a nivel estético lo que necesitamos. Y, lo mejor de todo, optimizando nosotros el código a placer.

Exprimiendo lo mejor de WordPress

Este diseño será una futura plantilla o tema para WordPress, que instalaremos sobre este potente motor, con lo cual nos seguimos ahorrando todos los tiempos en desarrollo de los que hablábamos en la entrega anterior. De lo que se trata es de aprovechar el motor de WordPress y la estructura de bases de datos para todo lo que es la gestión del contenido y el blog corporativo, y optimizar en lo posible la parte gráfica y de ejecución de scripts del sitio web. Es decir, usamos WordPress como esqueleto y nosotros le hacemos el “traje y la piel” a medida.

Últimas pinceladas o consejos para optimizar más el rendimiento

  • Ya que estamos “conciliando” WordPress con parte de desarrollo propio para optimizar la carga y consumos de recursos de mi sitio, podríamos considerar el restringir el uso de plugins o software de tercero que incluir en mi sitio. Tan sólo usaremos lo estrictamente necesario y funcional: plugins de redes sociales y widgets de interés que incorporen cualquier tipo de interacción que me ayude a conseguir leads (tales como formulario de inscripción a newsletter o de contacto, etc). Si es posible, incorporaremos estas funciones manualmente a base de código en nuestra maquetación. De lo expuesto unos párrafos más arriba, se deduce con buen criterio que realmente el motor de WordPress no es el gran problema para mi consumo de recursos, sino los programas de terceros o propios que vayamos instalando para aumentar sus funcionalidades.
  • Sería conveniente evitar los sliders: sí, es cierto que quedan muy chulos, de hecho, nosotros tenemos uno en nuestro site (aunque nos estamos planteando seriamente suprimirlo). Este tipo de sliders tan dinámicos y atractivos aumentan considerablemente la carga de la página y el consumo de recursos del navegador. Siempre se pueden suplir con soluciones igualmente atractivas y elegantes que consumen infinitamente menos. De todas formas, si decides incorporarlos aquí dejo una comparativa interesante entre distintos sliders.
  • Curiosamente, también podemos toparnos con el caso opuesto a lo comentado más arriba, es decir, plugins que mejoran nuestro rendimiento y que deberíamos de instalar casi obligatoriamente. Tal es el caso de WP SuperCache o W3 Total Cache.
  • Por otra parte, si necesitamos incorporar más funcionalidades, siempre podremos desarrollar nosotros mismos plugins propios que estén hechos a medida para nuestro proyecto, con lo cual también deberían estar optimizados, al igual que el tema del sitio, para funcionar como pez en el agua como solución a nuestro problema específico.

Conclusiones

Como hemos visto, siempre podremos obtener un sitio web fluido y de carga ligera incluso haciendo uso de una solución genérica de contenidos como es WordPress. Obviamente (sobre todo apunte para los puristas), no se llegará al punto de una solución 100% a medida, pero nos habremos quitado gran parte del peso del proyecto y habremos optimizado nuestro tiempo en otras cuestiones.

Sobra decir que un proyecto en WordPress (o cualquier CMS), que se optimice hasta tal punto, incrementa las horas de producción del mismo, luego también encarecerá el precio final de cara nuestros clientes. Así pues, ¿con qué os quedáis vosotros? ¿Desarrollo propio cien por cien, CMS puro y duro o hacemos un híbrido?

Espero pronto  traeros más ideas para nuestros desarrollos.

¡Saludos!