Archivos mensuales: abril 2015

El taller imprescindible para profesores de idiomas

Hoy os presentamos un un taller imprescindible para los profesionales de la enseñanza de idiomas, un taller en el que descubriréis una herramienta innovadora para practicar la expresión oral en cualquier idioma de manera autónoma. Práctica oral y colaborativa de idiomas con Babelium Dirigido a Profesores o centros educativos dedicados a la enseñanza de idiomas […]

El artículo El taller imprescindible para profesores de idiomas fué publicado originalmente en Elurnet Informatika Zerbitzuak S.L..

Entrada publicada en Babelium, Formación, Jornadas | Comentarios cerrados

Sinadura 4 sobre ubuntu 14 y KDE

Hace más o menos un mes que liberamos la versión 4.2 de sinadura Desktop, y hoy me ha llegado un mail comentando que en el entorno ubuntu 14.04 con KDE el programa fallaba y se cerraba inesperadamente. Después del intercambio de ...
Entrada publicada en Sin categoría | Comentarios cerrados

Migración, diseño responsive y tunning SEO en Liferay 6.2 EE para el portal de Visure Solutions

Desde Zylk.net, hemos estado trabajando en la migración del portal de Visure Solutions (www.visuresolutions.com), desde una versión 5.2.3 CE de Liferay a una versión 6.2 EE. De esta migración, se desprenden varias mejoras respecto al anterior portal:

  • Aplicación de las recomendaciones SEO
  • Diseño responsive para la correcta visualización de los contenidos del portal en dispositivos móviles
  • Organización de los contenidos por países

Mientras trabajábamos junto a Visure Solutions con la anterior versión de Liferay (5.2.3 CE), el experto SEO nos indicó una serie de recomendaciones resumidas en los siguientes posts:

Entre estas recomendaciones, se encontraba la de tener dominios separados que correspondieran a cada país e idioma, y poder así tener URLs internacionalizadas. Debido a esto y ya que Visure Solutions es una multinacional implantada en varios países (España, Alemania, Reino Unido y Estados Unidos), optamos por tener un dominio por cada uno de estos países:

Así pues, por cada uno de estos sites tenemos un árbol de navegación independiente, con las URLs amigables internacionalizadas, y la gestión de los contenidos la realizaríamos desde el ámbito global de Liferay.

Liferay 6.2 EE gestiona  los links de 'alternate' y 'canonical' de la cabecera a partir de la internacionalización de las páginas de un site, sin embargo, debido a que tenemos diferentes sites por país e idioma, Liferay no es capaz de relacionar una misma página, por ejemplo, en español y en alemán, porque están en diferentes sites. Es por esto que hemos creado un plugin para la relación de las páginas entre distintos sites, para poder completar correctamente la cabecera de cada una de las páginas:

Portlet personalizado para la relación de las páginas entre distintos sites

 

El resultado final, por ejemplo, de la página de 'Requirements Management Software' sería:

  • Canonical: http://www.visuresolutions.com/requirements-engineering
  • Alternate - x-default: http://www.visuresolutions.com/requirements-engineering
  • Alternate - España: http://www.visuresolutions.es/ingenieria-requisitos
  • Alternate - Reino Unido: http://www.visuresolutions.co.uk/requirements-engineering
  • Alternate - Estados Unidos: http://www.visuresolutions.us/requirements-engineering
  • Alternate - Alemán: http://www.visuresolutions.de/anforderungsmanagement

Para la gestión de los sitemaps y la de los robots.txt de cada uno de los sites, Liferay 6.2 EE permite realizarla a través de la interfaz de configuración de estos.

Respecto al diseño responsive, utilizamos el framework Bootstrap 2 que ya trae Liferay 6.2. Además, los nuevos contenidos que hemos añadido en las diferentes páginas del portal, también utilizan este framework. De esta manera, el comportamiento de estos mismos contenidos se adapta para poder renderizarse en dispositivos móviles de forma óptima:

Vista de la página de inicio en un PC

 

Vista de la página de inicio en un dispositivo móvi

 

Vista del menú de navegación en un dispositivo móvil

 

Esta gestión de los sites, nos permite además del tratamiento independiente de los contenidos, la gestión, también independiente, de páginas, usuarios, documentos...

Debido a la gestión de diferentes sites por país e idioma (como hemos explicado anteriormente), la gestión de los contenidos que se muestran en estos, la realizaremos observando dónde se mostrará dicho contenido.

Ámbito global y sites por idioma y país

 

Para decidir, dónde tenemos que crear los contenidos, nos hacemos una pregunta ¿el contenido que vamos a añadir va a estar asociado a todos los sites (esté o no traducido)? si la respuesta es que sí, crearemos el contenido en el scope 'Global' de Liferay y lo traduciremos (en caso de que así sea). Si por el contrario, la respuesta es no, crearemos el contenido en el ámbito del site donde se vaya a utilizar, por ejemplo, si queremos añadir un evento (contenido estructurado) que va a tener lugar en Minneapolis sólo añadiremos dicho evento en el ámbito de www.visuresolutions.us (Estados Unidos):

Gestión de un contenido Web estructurado 'Evento'

 

A continuación, vemos cómo se gestiona un contenido no estructurado:

Gestión de un contenido Web no estructurado

 

Además, a corto plazo, se está planteando usar uno de los nuevos plugins que incluye esta versión 6.2 EE de Liferay: 'Audience Targeting EE', que permite dividir a los usuarios en segmentos para poder ofrecerles contenidos específicos. De esta manera podemos crear campañas personalizadas orientadas a los usuarios perteneciente a estos segmentos. Para ello, este portlet nos ofrece la posibilidad de crear reglas a partir de ciertos datos, como por ejemplo: edad, género, número de amigos en Facebook, localización(a partir de su dirección IP)...

 

A través de la gestión de las campañas, el portlet sugiere a los usuarios que pertenezcan a un segmento determinado, una serie de elementos específicos. Por ejemplo, podemos mostrar un enlace de descarga de una aplicación Android a los usuarios que accedan a la página desde un dispositivo Android.

 

Esta visualización de los contenidos de acuerdo al segmento al que pertenece un usuario, la realizamos desde el portlet 'User Segment Content Display', que nos permite configurarlo para indicar si el contenido se muestra al pertenecer (o no) a uno o varios segmentos.

Entrada publicada en Sin categoría | Comentarios cerrados

Reactive programming, circuit-breaker y otros patrones de interés para trabajar con flujos de datos

LLevo un par de meses metido en un proyecto bastante interesante, y hasta que no finalice no me está dando tiempo a escribir sobre el mismo. Así que al menos voy a publicar un conjunto de links, muy interesantes, de temas que estamos us...
Entrada publicada en Sin categoría | Comentarios cerrados

Addons de interes para el modelado de contenidos en Alfresco

En el post de hoy voy a repasar una serie de herramientas y módulos de Alfresco que utilizan entre otras funciones en el modelado de contenidos para Alfresco.   Alfresco Model Designer Alfresco Model Designer es un módul...
Entrada publicada en Sin categoría | Comentarios cerrados

Algunos conceptos básicos en el modelado de contenidos de Alfresco

El pasado viernes comencé una serie de posts relativos al modelado de contenidos en Alfresco ECM. Como empecé por el final voy a definir algo de terminología y conceptos clave en el lenguaje documental de Alfresco, ara los que empiezan. Lo que sig...
Entrada publicada en Sin categoría | Comentarios cerrados

Recomendaciones a la hora de implementar un modelo de contenido en Alfresco

Existen algunas recomendaciones más o menos generales para la implementación de modelos de contenidos en Alfresco, que se apuntan en la propia documentación de Alfresco y en los tutoriales como:  No cambiar el modelo por defecto de Alfre...
Entrada publicada en Sin categoría | Comentarios cerrados