CMS basados en Django: ejemplos y características

5 min lectura
Desarrollo / 04 febrero 2016
CMS basados en Django:  ejemplos y características
CMS basados en Django:  ejemplos y características

BBVA API Market

No existen proyectos editoriales ni relacionados con el marketing de contenidos o la publicidad que no tengan entre sus prioridades la elección de un sistema de gestión de contenidos (CMS). Hay ejemplos gratuitos, de pago, sencillos, complejos, con el núcleo codificado en distintos lenguajes de programación… Hoy veremos algunos ejemplos interesantes de CMS desarrollados en Django, el entorno de desarrollo web escrito en Python

Django CMS, Mezzanine, Wagtail y FeinCMS son cuatro ejemplos de plataformas de gestión de contenidos desarrolladas con Django. ¿Cuál es el problema? Django es un marco de desarrollo muy utilizado en la comunidad de desarrolladores, Python se ha convertido en una tendencia dentro del mercado de la programación, pero los CMS no alcanzan el nivel de rapidez, escalabilidad y sencillez que los gestores más utilizados por la comunidad: ya sea el conocido WordPress, Drupal, Joomla, Fork CMS, TextPattern o ModX.

De todas formas, pueden ser una gran elección si disponemos ya de un buen conjunto de aplicaciones y plataformas que están desarrolladas en Django.

Django CMS

La última versión de este CMS es Django CMS 3.2. Este gestor se creó incialmente por la comunidad de Django y Python para solucionar los problemas de seguridad habituales en los CMS más utilizados y crear una plataforma con un núcleo especialmente ligero. Es además muy fácil de usar, una característica esencial para el usuario final. Los desarrolladores pueden integrar otras aplicaciones desarrolladas con Django con gran facilidad.

Algunas de las características fundamentales de Django CMS:

· Plataforma en varios idiomas por defecto: no es necesario implementar ningún plugin especial para disponer de herramientas, páginas web y contenidos en otros idiomas. Otros CMS son distintos.

· Interfaz basada en la función de arrastrar y soltar.

· Soporte de pantalla táctil: esto permite que el usuario del CMS pueda crear contenidos desde dispositivos como un móvil o una tableta.

· Interfaz: velocidad mejorada y consumo de ancho de banda bajo.

· Está desarrollado en Python: este es un lenguaje de programación realmente sencillo, flexible y dota a los proyectos de una gran escalabilidad. Eso incorporado a un CMS da enormes posibilidades tanto en la parte editorial, como en la parte de desarrollo. Django CMS se conecta con facilidad a infraestructuras más grandes, desde servicios de implementación a servicios de autenticación en bases de datos o desarrollo de front-end. No es necesario crear un sistema para Django CMS, sino que es el propio editor el que adapta al sistema existente.

· Sistema de plugins: cualquier desarrollador puede incorporar nuevas funcionalidades o aplicaciones al CMS. También existe la posibilidad de desarrollar aplicaciones propias e implementarlas dentro del editor.

Mezzanine

Mezzanine es un CMS desarrollado en Django. Sus creadores lo comparan en características y posibilidades con WordPress: es un editor que permite tocar el código para implementar cambios, es extensible y sencillo a la vez porque gran parte de sus funcionalidades vienen incorporadas por defecto dentro del CMS. Su licencia es BSD (Berkeley Software Distribution): uso del código en proyectos de software propietario. Es una licencia de software libre permisiva.  

Algunas características destacadas de Mezzanine:

· Es un CMS pensado, en gran medida, en el editor de contenido: dispone de función de borrador, vista previa y programación de publicaciones; construcción de urls amigables ‘SEO-friendly’; roles de usuario; uso de widgets para incorporar al blog o la tienda online; incorporación de etiquetas; navegación jerárquica por las páginas; temas gratuitos y de pago al estilo de WordPress; botones de compartir en redes sociales como Twitter y Facebook; traducción a 35 idiomas…

· Edición WYSIWYG (What You See Is What You Get – Lo que ves es lo que obtienes): es un paradigma por el que el editor siempre trabaja en borrador o previsualización con el tipo de maquetación que se verá cuando finalmente se publique el contenido. Mezzanine tiene un sistema de back-end, donde el editor escribe el contenido, pero la previsualización y el borrador muestran la entrada con la misma apariencia que tendría cuando finalmente ésta sea publicada.

· Características para desarrolladores: integración con Bootstrap, el marco de desarrollo para front-end (CSS y JavaScript) desarrollado por Twitter; integración con aplicaciones de terceros desarrolladas con Django; incorporación sencilla de Google Analytics para el control de las métricas, Disqus como sistema de comentarios, Akismet para el filtrado de spam, Gravatar para asociar imágenes a usuarios y bit.ly como sistema de urls acortadas; automatizado de los procesos de producción y despliegue; compatible con JVM (Máquina Virtual Java) a través de Jython (Java + Python), un lenguaje de programación orientado a objetos basado en Python e implementado en Java (proyecto de software libre). 

Wagtail

Los creadores de Wagtail lo definen como un CMS de código abierto en Python, construido en Django “por desarrolladores para desarrolladores”. Debe su nombre a un ave, la motacilla alba o lavandera blanca. Ellos consideran Django la plataforma ideal para el desarrollo de un CMS por su robustez, su facilidad a la hora de picar código y su velocidad en el desarrollo.

Algunas de sus características esenciales:

· Integración de aplicaciones Django dentro del CMS.

· Configuración de los distintos tipos de contenidos a través de los modelos estándar de Django.

· Control sobre el diseño a través de las plantillas de Django.

· Sistema de permisos y roles configurable.

· Plataforma con soporte para varios idiomas.

· Elasticsearch como motor de búsqueda: es un sistema de código abierto que se integra a la perfección en el editor. La interfaz de Wagtail dispone también de un sistema de recopilación de estadísticas a partir de las búsquedas en ese motor. Con él se puede acceder de forma rápida a documentos, páginas, vídeo e imágenes. Se puede configurar. 

 

· Streamfield: sistema de creación de información totalmente libre. Es posible ordenar como se quiera todos los elementos de un contenido: titular, texto en párrafos, imágenes, vídeos, ladillos… Se puede ver en esta imagen los distintos elementos del documento.

· Estructura de árbol para organizar el contenido dentro del editor.

· Sistema inteligente de corte de imágenes: es capaz de destacar elementos importantes dentro de una foto como caras y personas. También los cortes de imágenes son totalmente personalizables.

FeinCMS

FeinCMS es otro ejemplo de CMS basado en Django. El editor se fundamenta en la capacidad para añadir distintos tipos de contenido a las páginas: contenido en bruto en HTML o JavaScript; contenido en formato vídeo de YouTube o Vimeo (con solo cortar y pegar el enlace se embebe dentro de la página); archivos de audio; listado de comentarios; fuentes RSS

FeinCMS dispone de una serie de extensiones que añaden funcionalidades:

· Mejorar el posicionamiento en buscadores de contenido (SEO): capacidad para añadir los metadatos de una noticia (title, metadescripción, metaetiquetas…). En CMS más conocidos como WordPress existen plugins específicos para esta labor.

· Posibilidad de alojar páginas web en varios idiomas: se puede añadir un campo de lenguaje para cada una de las páginas del site.

 

Síguenos en @BBVAAPIMarket

También podría interesarte