¿WordPress? Pero si yo no quiero un blog

29/04/2013 por lostium en Trabajo

Esta es una de las respuestas con las que nos topamos con más frecuencia a la hora de explicarle a un cliente cuál va a ser el gestor de contenidos que, por nuestra parte, queremos implementar en su proyecto. Resulta harto complicado de explicar a los clientes que, WordPress, no sirve solo para crear blogs. Creednos. MUY difícil.
wordpress mola
Y como en Lostium somos parcos en palabras, pero muy de demostrar que tenemos razón, decidimos que teníamos que hacer algo para no tener que dar tantas explicaciones. A fin de cuentas, y aunque somos “flexibles como juncos y ágiles como gacelas”, preferimos trabajar con herramientas con las que nos sentimos más cómodos y sabemos que podemos exprimir a fondo, que tener que reinventar la rueda y/o formarnos en la enésima herramienta que no volveremos a ver jamás. Como gestor de contenidos configurable y “tuneable” y bajo nuestro criterio, claro está, WordPress no tiene parangón. Así que nos decidimos a utilizar WordPress en un proyecto que no tuviera nada que ver con un blog, pero sí con contenidos de otro tipo, para dejar claras las capacidades de esta plataforma. Y que somos muy cazurros, vamos, que Salamanca es parte del Reino

Y entonces surgió la necesidad de rehacer Tuitrafico. Al principio, parecía algo de locos el querer “calzar” un WordPress en un proyecto de este tipo, donde se manejan grandes volúmenes de datos, información en tiempo real y visualizaciones con mapas e interacciones complejas. Pero al poco tiempo de comenzar con el desarrollo, llegó Antonio, que es el master and commander del back-end en Lostium Project, y me suelta: “¿Pues sabes qué te digo? Que esto lo podemos hacer correr todo bajo WordPress”. Yo, ojiplático, le devuelvo la típica mirada de: “Ya, claro, con un WordPress lo hacemos en dos patadas…”.

Pero el caso es que iba en serio. Y tras algunos meses de desarrollo, siempre menos de lo que nos hubiera gustado y muchos más de los planificados, lanzamos la nueva versión de Tuitrafico ejecutándose bajo un WordPress y además haciendo la aplicación multidispositivo mediante responsive web design . Aún nos quedan muchas cosas que pulir, somos conscientes de ser un equipo muy pequeño realizando labores muy heterogéneas, y que en muchas ocasiones nos son aún muy ajenas (pero todo llegará, menudos somos…). Pero, a falta de pasar la prueba del rendimiento y la exposición pública, podemos afirmar que no podemos estar más contentos con el resultado. Y si todo sale bien, esta es solo la primera fase de un proyecto que creemos que todavía tiene mucho recorrido.

Volviendo a WordPress, en la nueva versión de Tuitrafico contamos ahora con una plataforma fácilmente extendible, donde poder añadir funcionalidades con mucha mayor rapidez y agilidad, además de una gestión de contenidos unificada desde la cual actualizar de forma dinámica prácticamente cualquier contenido que aparezca en la aplicación. ¿Los comentarios? Para eso ya existe Disqus (que además nos permite mantener copia de los mensajes en nuestra base de datos, por si mañana cambiamos de opinión). ¿La gestión multimedia? Resuelta. ¿Paginación? Resuelto. ¿Tagging y categorización? Todo eso ya nos lo da WordPress. Si además le sumamos un buen sistema de caché como W3 Total Caché y un buen plugin de backup, nos hemos ahorrado un montón de horas de desarrollo, y muchos dolores de cabeza.

¿Y cómo hemos conseguido hacer todo esto? Pues yo no lo sé muy bien, para mi es poco más que brujería. En algún momento Antonio dará explicaciones. Pero lo que sí he de decir es que, como desarrollador front y diseñador un poco torpe, las veces que he necesitado modificar algo o añadir alguna pequeña funcionalidad, no he tenido mayor problema. Me ha bastado con hacer un par de búsquedas en el Codex, y ahí estaban las respuestas y los métodos para hacer lo que necesitaba. Y si no ya estaba Antonio que me lo explicaba. Con esto quiero destacar que WordPress es ya una plataforma lo suficientemente madura y desarrollada como para haber bajado un peldaño el nivel de abstracción y “hablar” un lenguaje mucho más humano y más fácil de comprender para los que no somos ninjas del código (pero tampoco tontos). Seguro que si me oye un purista me dirá que donde esté python y una mongo-db y mimimi… que se quite el resto. Pues lo que tú quieras, para gustos los colores. Si para ti son las herramientas que te funcionan y con las que trabajas mejor, no hay discusión posible. Nuestra intención, tanto cuando la pasta sale de nuestro bolsillo como cuando lo hace de el del cliente, es poder hacer el mayor número de productos de calidad en el menor tiempo posible. Puede que PHP no sea el lenguaje más cool del momento, nada que ver con Rails, donde vamos a parar… Pero ahí lo tienes corriendo… y con WordPress.

Etiquetas:

Tecnologías que utilizamos: WordPress

24/01/2013 por lostium en Herramientas

Esta es la primera entrada de una serie donde os queremos contar las herramientas que utilizamos habitualmente en nuestro trabajo. Intentaremos no abusar de palabros y tecnicismos (aunque a veces nos pondremos gafotas y nos bajaremos al barro).

Comenzamos con WordPress, una de las herramientas favoritas para nuestro trabajo. Es complicado no conocerlo ya que es uno de los CMS o gestores de contenidos más populares del mercado.

WordPress, nuestro gestor de contenidos favorito

WordPress, nuestro gestor de contenidos favorito

Aunque todo el mundo lo conoce, no son tantos los que realmente saben de su potencial. Nos hemos encontrado clientes y amigos que cuando se lo recomiendas, lo primero que te dicen es: ‘yo no quiero tener un blog’. Hay una tendencia generalizada a asociar que WordPress es igual a tener un blog y nada más lejos de la realidad.

En sus comienzos nació para dar soporte a una extensa comunidad de bloggers, pero con el tiempo se ha convertido en un robusto CMS capaz de mantener cualquier tipo de aplicación web. Actualmente hay 60 millones de sitios corriendo con tecnología WordPress en Internet.

En nuestro caso lo utilizamos como un framework de desarrollo ya que nos facilita tareas básicas: operaciones CRUD, gestión de usuarios, recursos multimedia, comentarios y como es natural, gestionar los contenidos. Todo ello sin tener que tirar una sola línea de código, cosa que se agradece bastante.

Por otro lado, cuenta con una comunidad de desarrolladores que implementan cada día un buen número de plugins que pueden hacerte la vida mas sencilla. Si necesitas por ejemplo generar un sitemap o cachear tu sitio para minimizar el gasto de recursos, seguro que encuentras a alguien que ha implementado una solución, ahorrándote reinventar la rueda.

Todo hay que decir que también tiene sus sombras: si estas acostumbrado a lenguajes como JAVA o C++, seguramente mirarás con desprecio a lenguajes interpretados como PHP (nosotros lo hacíamos ;), no está del todo bien estructurado y la orientación a objetos se la pusieron con un calzador.

Pero si vas un poco más allá, te darás cuenta de que es un sistema flexible en el que realmente depende de ti, como programador, ser organizado y aplicar los patrones de diseño que necesites.

Volviendo a WordPress y simplificando a tope su arquitectura, se puede dividir en tres partes:

Wordpress - Arquitectura simplona

Norma básica: el núcleo no se toca. Si lo haces, bye bye a la posiblidad de actualizar la versión, con el consiguiente problema de seguridad y de pérdida de nuevas funcionalidades.

Las otras dos patas, plugins y themes realmente son las que nos permiten desarrollar aplicaciones a la medida.

Por regla general, creamos un plugin orientado a objetos con todas las funcionalidades que necesitamos, operaciones con el modelo de datos, obtención de información, interacción con otras APIs, etc.

A continuación creamos un theme desde cero, partiendo de la maquetación que hemos hecho en HTML5. Recortamos cada sección para completar sus correspondientes plantillas: portada, archivos, páginas, cabecera, pie, sidebar, comentarios… y además añadimos el código necesario para mostrar de manera dinámica el contenido gestionado por el CMS.

WordPress mantiene una extensa jerarquía de elementos que permiten conformar la presentación de la aplicación. Si te vas a dedicar a la creación de themes es imprescindible conocerla al dedillo.

Jerarquía de ficheros

Pincha solo si eres un valiente desarrollador

A grandes rasgos estos son los pasos que tomamos para implementar una aplicación Web con WordPress. En otros artículos profundizaremos a nivel técnico para enseñaros, por ejemplo, cómo hacemos plugins.

Etiquetas: