Acerca de drupal 8

Se aproxima el lanzamiento de Drupal 8, hoy les hablare sobre algunas de sus novedades, como la integración con Symfony.

Qué es Symfony?

Es un framework de desarrollo en PHP de tipo full-stack construido con varios componentes independientes el cual puede ser utilizado bajo el patrón Modelo Vista Controlador (MVC).

Un conjunto de clases Orientadas a Objetos compatibles con PHP 5.3 y versiones posteriores.

Un conjunto de componentes reutilizables de manera independiente y cohesionada que solucionan problemas comunes de desarrollo web.

mvc

Por qué la integración?

Las personas que ya trabajaron con drupal saben que la curva de aprendisaje es bastante elevada, al tener que dominar los hook que son las funciones y metodos que posee drupal para la resolucion de los problemas que se presentan a lo largo del desarrollo.

Esto se conoce como “The Drupal Way”, todo este conocimiento adquirido solo es válido y útil en el entorno de Drupal. En ocaciones el modo de Drupal no esta apegado a los estandares del mercado, no toma ventaja de nuevas buenas prácticas y hace más complicada la implementación de nuevas tecnologias.

Por qué cambiará el core?

Para cumplir los objetivos que se proponen para Drupal 8.

  • Un core robusto, escalable, desacoplado y facilmente extendible, basado en un framework moderno para reemplazar código propio por librerías y componentes externos.
  • Pensado en móvil con una gran experiencia móvil para edición de contenidos.
  • Mayor interoperabilidad con otros proyectos PHP y un menor costo de mantenimiento en el código.

Qué componentes utilizará Drupal 8?

HttpFoundation & HttpKernel, ClassLoader, Routing, EventDispatcher, DependencyInjection, Twig, Validator, Process, Serializer, Yaml.

Otros componentes relacionados a Symfony ó que utilizan componentes de este serán utilizados.

Composer, Annotations, Guzzle, Assetic.

http://crossfunctional.net/blog/2013/mar/symfony-components-in-drupal-8
Qué es REST?REST = Representational State Transfer.Protocolo cliente servidor que permite intercambiar información entre diferentes dispositivos. Un conjunto de operaciones bien definidas. POST, GET, PUT y DELETE. Con frecuencia estas operaciones se relacionan a las operaciones CRUD que se requieren para el acceso y la persistencia de datos. Una sintaxis universal para identificar los recursos.

Para qué sirve?

Desacoplar back-end y frontend, podemos tener un sitio en Drupal, exponer los datos en diferentes formatos y consumirlos desde nuestro sitio en Drupal ó desde alguna aplicación construida en Symfony, Silex, HTML5, JS framework (Backbone, Angular, Ember) ó algun SDK nativo para móvil (iOS/android).

http://drupalize.me/blog/201307/podcast-episode-22-decoupling-drupal

https://github.com/Lullabot/copelandia

Cómo planea Drupal 8 hacer esto?

  • Obteniendo y enviando datos de manera programática en Drupal desde un cliente utilizando un API.
  • Drupal trabaja como un proveedor de interfaz de servicios web.
  • Los datos son intercambiados en un formato entendible para los dispositivos.
Utilizando que MÓDULOS?

  • RESTful Web Services.
  • Serialization.
  • HAL (Hypertext Application Language).
Qué formatos utilizaJSON


{
  "name": "Larry Garfield",
    "role": {
	  "name": "Initiative Owner",
	  "project": "WSSCI"
    }
}

XML


<contributor>
  <name>Larry Garfield</name>
  <role>
    <name>Initiative Owner</name>
    <project>WSCCI</project>
  </role>
</contributor>

Drupal 7 Primeros pasos

MODULO ADMIN
Este módulo me parecio bastante interesante ya que proporciona mejoras de interfaz de usuario con la interfaz de administración estándar de Drupal.

El modulo lo pudes descargar desde: https://drupal.org/project/admin

Lo puedes descargar ya sea en tar.gz o zip.
O tambien puedes instalarlo directamente utilizando Drush.

Una vez instalado lo habilitas y ya tienes el módulo.

Y al hacer un click sobre ella se despliega el menú.icono

La barra de herramientas de administración aparecerá automáticamente, en parte superior izquierda de la pantalla.

admin

7 Temas de Administración para Drupal 7

Themes o temas, a muchos drupaleros, que conozco les gusta el tema de administración que trae Drupal por defecto, pero no hay por que quedarse solo con ese tema, existen otras opciones para su instalación y mejora de la navegabilidad, ademas podemos usar esto para variar la presentación de nuestro administrador.

A continuación les presento los mejores temas de adminisracion en drupal 7

SEVEN

Sin duda mejor que algunos otros temas de administración que hay. Lo bueno es que si hay algo mal o poco firme con otro de los temas de administración, siempre se puede fijar Seven por defecto y te irá bien.

RUBIK

Rubik . Este es actualmente el tema de administración de LevelTen de elección, ya que se ve muy bien en general no importa lo que eches. Basado en el tema base de Tao, Rubik ofrece un tema de administración limpia que cubre prácticamente todos los aspectos de Drupal administrador. Por supuesto, no se ha actualizado en un año, pero usted encontrará que funcione bastante bien.

rubik_appear
rubik_blog rubik_content

CUBE

Cubo de Rubik se basa en, por lo que no encontrará demasiadas diferencias entre los dos, pero es un cambio. La principal diferencia que notará es la navegación del sitio incrustado en la parte superior, las fichas de página, los estados activable y elementos de la lista.

cube_appear cube_blog cube_content

STANLEY

Stanley comenzó como una aplicación de Twitter Bootstrap. Aunque Stanley finalmente termino utilizando Bootstrap en la versión 2.x, el tema comenzó inspirándose en Bootstrap. Se ve muy bien, hace que las pestañas principales parescan en el menú de administración.

stanley_appear stanley_blog stanley_content

SHYNI

Este tema es utilizado por la distro de comercio Kickstart v2. Se ha actualizado recientemente así que no es un mal tema para aplicarlo.

shiny_appear shiny_blog shiny_content

EMBER

Ember es un excelente tema nuevousado por la distro Spark. Se basa en Seven, tener en cuenta que fue construido para trabajar con el módulo Navbar (Barra de herramientas de Drupal 8), y aunque no soy un gran fan de Navbar yo mismo (en comparación con Menú Admin). Observe también que Navbar aparece en la parte superior de la pantalla o como una barra lateral (que se muestra en las capturas de pantalla a continuación). Si tienes curiosidad, descargue los dos y darle una oportunidad.

ember_appear ember_blog ember_content

ADMINIMAL

Adminimal el tema está todavía en desarrollo y hay cosas que deben ser corregidos, pero tiene buena propuestas de manejo de informacion. Cuenta con una interfaz de usuario plana, muy similar a Google en la interfaz, agradable iconos de aspecto, y la experiencia en general muy agradable. Ahora creo que, en algunos casos, el texto podría ser más pequeño y necesita ayuda con las listas de selección y radio, pero en general creo que es un gran comienzo a un tema de administración con un gran potencial.

adminimal_appear adminimal_blog adminimal_content

Instalación de Drupal 7 y Drush 5.8 en Windows 7

En el presente artículo, describe una de las maneras por la cuales se puede realizar la instalación, en el sistema operativo Windows 7, del conocido CMS Drupal en su versión estable más reciente Drupal 7.22 y Drush 5.8 que es un paquete de comandos para Drupal que permite descargar, habilitar, deshabilitar, desinstalar, actualizar módulos, temas, perfiles y traducciones desde la línea de comandos.

Instalación de Drupal 7.22

Primeramente, es necesario tener instalado un servidor con tecnología WAMP (Windows + Apache, Mysql y PHP), como ser wampserver o xampp.

En el sitio oficial de Drupal se puede descargar todas sus versiones, la versión estable más reciente a la fecha es Drupal 7.22. Una vez descargado el archivo, se debe descomprimir el mismo y subirlo a su servidor. Suponiendo que se está trabajando en un servidor local, se deberá copiar la carpeta descomprimida Drupal-7.22 en la carpeta que contiene los archivos de sitios en tu servidor local, por ejemplo C:\xampp\htdocs\ en xampp o C:\wamp\www\ en wamp. Comprueba también que se han subido todos los archivos y carpetas, incluyendo el archivo .htaccess.

Se debe crear un host virtual, para el acceder mediante una dirección url, por ejemplo http://www.miprimersitiodrupal.com/, a la carpeta del sitio en nuestro servidor local. Asegúrate que la dirección apunte a la ruta “c:/wamp/www/drupal-7.22” o “C:/xampp/htdocs/drupal-7.22” a menos que hagas renombrado la carpeta.

En nuestro navegador web preferido, ingresamos al nombre del servidor que se asignó en nuestro host virtual, como por ejemplo http://www.miprimersitiodrupal.com/.

Aparece la primera pantalla de instalación de Drupal 7, la cual está en inglés.

Select an installation profile_Drupal

El proceso de instalación es sencillo, por lo general se seleccionarán los valores por defecto. Se puede cambiar el idioma durante el proceso de instalación, en la segunda pantalla se muestra un enlace Learn how to install Drupal in other languages el cual explica los pasos a seguir para continuar con la instalación en otro idiomaother_language

Se debe descargar el paquete de traducción del idioma que se quiere instalar, en nuestro caso español, para el cual se puede acceder en en el link https://localize.drupal.org/translate/downloads?project=drupal y seleccionamos el link que hace referencia a Spanish en la versión 7.x.

Como indica en la página de instalación actual, el archivo descargado drupal-7.22.es.po en ruta \profiles\standard\translations en la carpeta de nuestro sitio Drupal. Una vez realizado esto, se debe hacer clic en el link Reload the language selecction page after adding translations, el cual recarga la página de instalación actual.

select_language

Ahora el sistema tiene dos opciones, English (built-in) y Spanish (Español), seleccionamos Spanish y continuamos.

Se verificará los requisitos para el funcionamiento de Drupal 7, y posteriormente en la página de Configurar base de datos, se debe ingresar el nombre de una base de datos existente y el nombre de un usuario y su contraseña.

Instalando Drupal_Drupal

Una vez verificada la información de acceso a la base de datos, comienza el proceso de instalación automático. Luego, se sigue con la configuración del sitio, en el cual se debe ingresar: nombre del sitio web, dirección de email, nombre de usuario, contraseña y otros datos opcionales.

Al finalizar el proceso se debe mostrar la siguiente pantalla.

completedInstall

Ahora, puedes hacer clic en Visite su nuevo sitio el cual te mostrará tu sitio Drupal 7 en modo local.

www.miprimersitiodrupal.com

Instalación de Drush 5.8

Como se indicó, Drush básicamente es un paquete de comandos para Drupal los cuales se pueden ejecutar desde la línea de comandos. Para instalar Drush en Windows 7, se debe descargar el instalador para sistemas operativos Windows del sitio oficial de Drush  , además en el sitio se cuenta con toda su documentación. Ejecuta el instalador en como Administrador, por defecto están seleccionadas las 3 primeras características del árbol de opciones, pero es necesario activar todas las características de lo contrario se tendría que configurarlos “a mano”. La pantalla de configuración debería quedar así:

select_items

Luego se selecciona “Next”, en la siguiente ventana haz clic en “Install” comienza el proceso de instalación. Una vez concluido, cierra la ventana del instalador.

En el escritorio, o mediante el botón inicio de Windows, busca el acceso a Drush Command Prompt y ejecútalo como administrador.

El comando drush status nos permite conocer el estado actual de Drush. Para realizar alguna acción con Drush en nuestro sitio web, se debe ingresar al directorio del sitio web.

drush status

Para descargar un módulo, se emplea el comando dl (download) y el nombre del módulo. Por ejemplo, se puede descargar el módulo pathauto:

drush dl pathauto

Los módulos adicionales de Drupal se encuentran en el directorio \sites\all\modules\ y es ahí donde Drush los descarga.

Para habilitar un módulo se emplea el comando en (enabled) y el nombre de un módulo que está dentro del directorio \sites\all\modules\. Por ejemplo, se puede habilitar el módulo pathauto que ya se ha descargado:

Drush en pathauto –y

-y no muestra un mensaje de confirmación, asume “yes”.

Los comandos arriba descritos, se deben ejecutar en el orden como aparecen en la siguiente imagen:

drush_command_prompt

Ingresa a tu sitio Drupal y en ingresa en módulos, ahora se podrá observar que se ha añadido un nuevo módulo Pathauto y el mismo está habilitado.

Módulos_www.miprimersitiodrupal.com

SlideShows Drupal – (Secuencias ánimadas de contenidos o imágenes)

Slideshow es una transición animada de imágenes o textos, que se ha orientado principalmente a destacar contenidos relevantes y que funcionalmente permite al usuario la lectura de varios contenidos sin necesidad de llevar a cabo una recarga de la página.

Entre los portales que tienen SlideShows en sus páginas principales podemos nombrar algunos como CaracolTV, ColombiaTravel, Revista Shock, etc

Ejemplo de SlideShow empleado en el portal de MTV Uk

Slideshow drupal

SlideShow Drupal

Si bien hay cientos de plugins e implementaciones en JavaScript para lograr lo deseado, integrar estos plugins con gestores de contenido puede resultar en una extensa tarea de investigación y programación. Para facilitarnos a todos el trabajo en un futuro (Tanto a quienes nunca han hecho una implementación de este tipo, como a los que la hemos hecho y olvidamos de que manera concreta lo solucionamos).

A continuación se lista algunos módulos y herramientas que ofrece Drupal para SlideShows:

  1. Featured Content Slider: Brinda un bloque al que se le pueden añadir nodos o contenidos creados previamente. Su implementación es rápida y su despersonalización se hace a través de hojas de estilo (CSS). Una de las limitantes que tiene es que no se puede determinar el orden en que aparecen los elementos de una manera sencilla.
  2. Slideshow: Una opción de sencilla configuración, convierte todas las imágenes adjuntadas a un contenido en elementos de un slideshow. Solo trabaja con imágenes.
  3. Views Slideshow: ImageFlow: Una excelente opción cuando se quieren por ejemplo mostrar imágenes a manera de galería. Presenta un efecto estético muy agradable de zoom y una barra de desplazamiento en vez de botones (Al estilo del visor de carátulas de ITunes). Se integra con el módulo Views; para su implementación solo es necesario crear una vista que tenga campos de imagen y asignarle el estilo SlideShow – ImageFlow. Está orientado a la creación de galerías de imágenes únicamente.
  4. Dinamic Display Block: Es la opción más robusta, configurable y flexible. Se integra con el módulo views de modo que se tiene absoluto control sobre los campos que aparecen, el orden en el que aparecen los elementos (En combinación con el módulo nodequeue) y ofrece muchos estilos de visualización, desde un simple slide con imágenes y selectores con números, hasta selectores con imágenes en miniatura y pequeñas descripciones. A cambio de su funcionalidad se debe saber que se tiene que generar funciones de preprocesado en las plantillas que se esté utilziando y emplearle como mínimo unas dos horas de investigación. Se ofrecen tutoriales en la web del autor que describe como hacer slideshows sencillos y avanzados. Es la opción más cercana a lograr un slideshow como el de MTV Uk.

Cabe resaltar que sea cual sea la solución que se elija, viene bien tomar en cuenta si vale la pena generar un Slideshow para el sitio.

3ra REUNION DE DRUPAL La Paz

enbolivia.com apoya y fomenta la 3ra reunion Drupalera que se llevará a cabo este 15 de junio en La Paz, porque cree en el potencial de esta útil herramienta, brindando sus instalaciones, he invitando a todos los interesados a participar de esta reunión en la que se tratará un temario bastante interesante. Para esta reunión se cuenta con la participación de miembros de la comunidad de Drupal Cochabamba.

Asi que vengan y participen en el “Drupaleando con altura”, hagamos juntos comunidad, este evento fue organizado por Fernando Conde Conde gracias al apoyo de enbolivia.com, miembro de la comunidad de Drupal Bolivia.

Drupalenado-con-altura