¿Qué es un CMS?
Un CMS es un programa que permite la creación y gestión del contenido en una página web por parte del autor, editor o administrador sin necesidad de que sepa programación. El propio software separa el contenido del diseño mediante un sistema de maquetación por plantillas.
Un buen CMS no debería ser demasiado técnico, tendría que decidir por el usuario los aspectos técnicos y simplificar sus opciones
Desarrollar un CMS propio resulta muy caro y lleva mucho tiempo, dado que el tiempo en internet es más importante que el dinero es mejor escoger uno libre como WordPress, Joomla! o PrestaShop y adaptar el código a nuestras necesidades. Si más adelante tenemos la necesidad de uno propio nos lo plantearemos pero la primera opción siempre debería ser uno libre.

Gracias a los CMS cualquiera puede gestionar una web sin saber programación
CMS optimizado para SEO en 13 puntos
1. URLs personalizables y amigables
Tenemos que poder personalizar la URL, editarla, acortarla, cambiarla… que no la genere el CMS automáticamente, debemos tener el control para poder hacerla amigable, es decir, que no sea muy larga, que no incluya caracteres extraños y que contenga las keywords.
2. Titles y meta descriptions personalizables
Aunque el CMS genere estas etiquetas automáticamente es importante que podamos personalizar esa información en cada página.
3. Editor HTML del contenido WYSIWYG
WYSIWYG es acrónimo de What You See Is What You Get, en español “lo que ves es lo que obtienes”, necesitamos un editor de HTML que no haga falta saber código para manejarlo, que permita de forma sencilla añadir negritas, enlaces, etc…
4. Categorización inteligente
Que el CMS nos permita estructurar nuestra página en categorías y podamos cambiarlas o moverlas libremente.
5. Paginación
Independientemente de la plantilla que hayamos escogido, la paginación debería estar implementada en el CMS sobretodo si se trata de un eCommerce. Debemos poder gestionar el número de productos por página, el número de páginas o productos por categoría, etc…
6. Gestión de redirecciones
Dado que vamos a estar con el CMS bastante tiempo y el contenido es cambiante, caduca, lo movemos… el CMS debería poder darnos la opción de redireccionar o eliminar el contenido o al menos estar automatizado.
7. Gestión de XML y RSS del contenido
Que un eCommerce pueda exportar sus contenidos en XML para incluirlos en otras plataformas o que un blog pueda gestionar sus RSS para compartir el contenido debería venir de serie en un buen CMS y además debería ser personalizable.
8. Gestión de imágenes
No solamente deberíamos poder cargar imágenes sino también personalizar la URL de la imagen, el ALT text y el nombre del archivo.
9. Sistemas de cacheo
Los sistemas de cacheo nos permiten reducir el número de consultas que hace la página al cargarse. Cuando se hace una petición se genera un PHP que hace consultas a la base de datos del CMS para cargar los distintos elementos o plugins de la página, el sistema de cacheo sustituye el PHP por un documento HTML previamente cargado reduciendo así los tiempos de carga. Si la página es muy dinámica y cambia cada poco tiempo habrá que cachearla con mayor frecuencia.
10. Diseño de plantillas
Que separe el contenido del diseño y nos permita modificar la maquetación de la plantilla sin necesidad de entrar en el CSS.
11. Multi país y multi idioma
Debería permitir incluir la misma información geolocalizada por país e idioma.
12. Sencillo
Modelos como el de WordPress son ejemplos de CMS sencillo e intuitivo frente a otros mucho más complejos para el ciudadano de a pie como Joomla!.Un buen CMS no debería ser demasiado técnico, tendría que decidir por el usuario los aspectos técnicos y simplificar sus opciones.
13. Comunidad activa
Que haya una comunidad activa de usuarios detrás de nuestro CMS será de mucha ayuda, se desarrollan complementos, plugins, actualizaciones, templates y en caso de duda nos podrán echar una mano en foros, comunidades, etc…
Problemas básicos que nos vamos a encontrar en un CMS
- URLs muy largas: los CMS suelen generar URLs demasiado largas, Google considera que estas no tienen usabilidad. Una URL amigable es aquella que podemos decirle a alguien por teléfono sin que necesite un bolígrafo.
- Metadatos repetidos: este es un error muy típico de los CMS, ocurre porque las plantillas tienen sus propios metadatos, luego nosotros introducimos los nuestros y los complementos y plugins también traen los suyos. Esto puede crear errores y duplicidades como que haya dos titles, varias descriptions, etc…
- URLs diferentes para el mismo contenido: ocurre bastante por la forma que tienen los CMS de estructurarse, a veces se duplica el mismo contenido por estar categorizado de dos formas distintas. Un fallo que por ejemplo WordPress ya ha solucionado.
- Idiomas por cookie o por sesión: algunos CMS cuando escogemos el idioma, nos señala con una cookie o registra en nuestra sesión el interés por este idioma, eso genera que la misma URL esté después en distintos idiomas y nos causa problemas de cara a la indexación en Google que no sabe el idioma de la página.
- Enlaces con javascript: este problema se da más en CMS orientados a eCommerce, que tienen plantillas que contienen enlaces con animaciones en javascript, queda muy bonito pero Google no siempre es capaz de seguir estos enlaces o no les da el mismo valor que a los enlaces normales.
- Identificador de sesión en la URL: si el CMS genera identificadores de inicio de sesión en la URL, debe incluir un canónical apuntando a la URL original, de lo contrario nos estará duplicando contenido.
- Que sea muuuy lento: cuando digo muy lento me refiero a 10-15 segundos de carga por página. Normalmente un CMS no tendría porqué cargar lento pero podría ser que nuestro servidor no responda bien, que no haya nada de información cacheada, que hayamos metido demasiados plugins… estos factores si podrían ralentizar el CMS.
a veces se duplica el mismo contenido por estar categorizado de dos formas distintas
Esta serie de problemas son muy comunes y nos dejan ver que cuando un CMS dice estar optimizado para SEO rara vez suele se verdad.