CANAL VIDEOS DE DRUPAL 8

Diferencias entre Drupal 7 y 8, entre otras cosas…

Drupal 8 lleva algún tiempo con nosotros pero aún así, existen bastantes conceptos que todavía no están claros, sobre todo en cuanto a las diferencias entre versiones, pues como ya sabreis, han cambiado bastantes cosas.
He encontrado un canal con vídeos que conforman un curso de Drupal 8. Actualmente están orientados a gente que no sabe o no conoce aún Drupal en su versión 8. Ignoro si su autor, Manolo Latorre, tiene pensado regalarnos más conocimiento sobre Drupal 8 y en concreto, sobre cómo desarrollar para este framework. Y si, digo framework, no CMS, ya que pienso que clasificándolo solamente como tal, nos quedamos cortos. En esto disiento con Manolo en este punto.
Para aquellos que ya conocéis algo sobre Drupal, incrusto aquí directamente, uno de los vídeos, donde nos habla de las diferencias entre Drupal 7 y 8:

5.Versiones de Drupal. Cambios de Drupal 7 a 8 por manolo-latorre
Nada más. Un cordial saludo y hasta otra.

JOOMLA 3.x. LÍMITE DE PALABRAS INTRODUCIDAS EN EL EDITOR

Anteriormente, ya me había encontrado con la problemática de limitar el número de caracteres o palabras que pueden escribirse en un campo de tipo editor en Joomla:
Campo editor de JoomlaEs el campo que aparece cuando queremos crear un artículo nuevo por ejemplo, tal como se ve en la imagen de la izquierda.
Este tipo de campo muestra un editor WYSIWYG donde puede crearse el contenido correspondiente; tal como hemos mencionado, un artículo por ejemplo.
No son pocos los usuarios a los que les gustaría establecer un límite en la cantidad de información que se introduce. Puede ser muy útil conocer ese dato y tenerlo en cuenta por si ese contenido ha de mostrarse en un dispositivo móvil, queremos que sea de una determinada extensión por motivos de atención del usuario, etc. Los requerimientos pueden ser muchos. El usuario manda.
Necesitamos entonces limitar el número de caracteres. Sin embargo aquí surge el primer escollo. Estamos trabajando con un editor WYSIWYG que “internamente” tiene elementos HTML que, implicando un cierto número de caracteres, visualmente es posible que solamente resulten en un salto de línea, como puede ocurrir con el elemento <BR />.
Es preferible por tanto, no limitar el número de caracteres, sino más bien, el número de palabras introducidas en el editor.
En el momento en que se publica este artículo, la última versión estable de Joomla es la 3.3.6 y su editor WYSYWIG para campos de tipo editor por defecto, es TinyMCE versión 4.1.2. Esta versión también dispone de un plugin que permite mostrar cuántas palabras llevamos introducidas y que podemos ver en funcionamiento, si configuramos TinyMCE para que opere en modo extendido. Lógicamente podemos cambiar el editor WYSIWYG por defecto, pero nos centraremos en el que viene en Joomla tal cual, sin aditivos y de paso, nos sirve para saber como cambiarlo en cualquiera de nuestras aplicaciones que usen TinyMCE como editor HTML.

Estableciendo un límite de palabras para TinyMCE

Lo primero que tenemos que hacer es localizar el sitio donde realizar nuestros cambios. El fichero que necesitamos se encuentra en:
$SU_CARPETA_JOOMLA/plugins/editors/tinymce/tinymce.php
En la línea 575 del fichero aparece una instrucción switch que controla las opciones con que se inicializará el editor, dependiendo del modo en que esté configurado en Joomla:
Joomla. Código inicializador de TinyMCE
Si queremos que el límite de palabras introducidas en el editor, se procese en todos los modos, tendremos que hacer las modificaciones en todos ellos. En este artículo, estableceremos el límite en el modo extendido solamente (línea 655), ya que suele ser el más usado.
El cambio, básicamente consiste en añadir el parámetro setup al método init:

Una vez guardados los cambios y recargada la página, cada vez que queramos añadir más palabras de las indicadas en la constante LIMITE_PALABRAS, aparecerá un alert indicándonos que hemos sobrepasado el límite y evitando que introduzcamos más información. Por supuesto, dependiendo de versiones, puede cambiar. Nada más, espero que lo encontréis útil.
Un cordial saludo y hasta otra.

MODIFICAR LA SECCIÓN DEL HEAD DESDE EL CÓDIGO DE UN COMPONENTE. JOOMLA.

Modificar la sección del head desde el código en Joomla

Modificar la sección del head desde el código de un componente

La sección head de toda página web es de suma importancia. En ella solemos insertar o enlazar el código CSS y de scripts típicos (como JavaScript). Además los datos que contenga pueden tener bastante relevancia en lo que a SEO se refiere. Modificar la sección del head desde el código de un componente no es tan fácil como puede parecer. Vamos a ver como hacerlo.
Normalmente insertamos la cabecera utilizando el siguiente código:

La anterior línea carga el fichero libraries/joomla/document/html/renderer/head.php que contiene los métodos que procesan la sección head y devuelven el código HTML generado.
Ese mismo código HTML lo podemos obtener con:

Pero si lo que queremos es modificar esa sección desde un componente, la cosa se complica un poco si no conocemos lo que Joomla pone a nuestra disposición para realizar esta tarea. Para toda modificación, el método de la clase estática JFactory::getDocument(), nos proveerá de todo lo necesario. Para los siguientes ejemplos, seguiremos usando el ejemplo del código anterior.

Cambiar el título de la página dependiendo de la lógica del componente

El método setTitle(“”) nos permitirá modificar el título:

Añadir estilos CSS dependiendo de la lógica del componente

El enlace a un fichero de reglas de estilos CSS lo hacemos con:

Si solamente queremos añadir unas reglas pero no un fichero completo:

Añadir código JavaScript dependiendo de la lógica del componente

Podemos enlazar un fichero:

O bien simplemente añadir un poco de JavaScript:

La insercción de ficheros CSS y de script, las podemos hacer también, usando el objeto JHTML:

Modificando los metatags dependiendo de la lógica del componente

Desde que los metatags o etiquetas no son tan relevantes en el posicionamiento SEO, su uso se ha quedado un tanto olvidado. Si miramos el código fuente de una web, es probable que nos encontremos con una etiqueta meta del tipo:
… donde se está indicando el software que ha generado el código de la página. Sin embargo sus usos pueden ser muchos y variados, desde redirecciones automáticas de la página, hasta usar las etiquetas meta sugeridas por Facebook que nos permiten compartir nuestros contenidos en su red social.
Joomla pone a nuestra disposición una funcionalidad mediante la cual podemos insertar etiquetas meta. Para ello nos vamos al área de administración y una vez dentro, vamos a:
[En Joomla 3.x] -> [Sitio -> Configuración global]
[En Joomla 2.5] -> [Sistema -> Configuración global]
Nos vamos al apartado donde dice [Configuración de los metadatos] y una vez allí, insertamos las metatags que estimemos oportuno.
En la práctica, lo cierto es que frecuentemente necesitamos una manera dinámica de establecer estos metatags.

Código para modificar los metadatos

Quitar el metatag “generator” puesto por defecto por Joomla:

Otros metatags también tienen su propio método para cambiarlos o establecerlos:

Pero si no dispone de método propio, usamos setMetaData():

Los metas formados de esta manera son los típicos que contienen los atributos name y content. Si queremos que el resultado sea un meta con atributo http-equiv, tendremos que usar el mismo método pero con un argumento más:

Finalmente, debemos tener en cuenta que existen metatags que no corresponden a los estándares, sino que deben ser añadidos para la correcta ejecución de lógica de terceros (como scripts de Facebook por ejemplo):

Eso es todo. Recordad que toda esta información y más, forma parte de los cursos que ofrecemos de Joomla.
Espero que este artículo os sea de utilidad y como reencuentro con la actividad del blog que no he podido atender por falta de tiempo, durante una temporada que ya se hacía larga.
Nada más. Un cordial saludo a todos y hasta otra.

TIPOS DE EXTENSIONES EN JOOMLA.

Tipos de extensiones en Joomla

Tipos de extensiones en JoomlaAlgo que tienen en común la práctica totalidad de herramientas o aplicaciones basadas en PHP, como pueden ser Joomla, Drupal, WordPress, etc., es que permiten su crecimiento, el aumento de sus funcionalidades, mediante el desarrollo de añadidos. Trataremos en esta entrada los tipos de extensiones en Joomla.
Cada herramienta proveerá una serie de reglas que aplicar al desarrollo de estos añadidos que de no aplicarse, harían que nuestros nuevos añadidos no funcionen, no lo hagan correctamente, estemos “reinventando la rueda” (porque ya existe alguna clase o función en la herramienta que realiza lo que queremos, etc.).
En Joomla, estos añadidos reciben el nombre de extensiones y pueden ser de diferentes tipos. Cada uno es distinguible principalmente, por la función que desempeñan en Joomla. De hecho, muchas de las funcionalidades que utiliza Joomla por defecto, han sido creadas mediante extensiones.
¿Cuáles son entonces estos tipos de extensiones?

  • Componentes,
  • Módulos,
  • Plugins,
  • Plantillas,
  • Lenguajes

Componentes

Los componentes son las extensiones más complicadas. Tienen una parte pública (frontend) que muestra los datos resultantes de utilizar el componente y otra administrativa (backend), encargada de permitir la gestión del componente.
Cada componente puede añadirse al menú de navegación del sitio, como un elemento más del menú. De hecho, cada opción de menú, acaba llamando a un componente.
Los componentes son aplicaciones que pueden ser tan grandes como una red social o un portal de empleo y pueden servir de base para otras extensiones. Es común que un componente provea el contenido principal de una página de Joomla.
El menú Componentes contiene un enlace a todos los componentes instalados
Joomla, menú Componentes
Joomla, menú Extensiones
El resto de extensiones, tienen su correspondiente menú en Extensiones

Módulos

Los módulos o “boxes” podemos verlos como miniaplicaciones que podemos situar en diferentes posiciones de las páginas y que presentarán cierta información. Pueden trabajar independientemente, pero suelen estar enlazados a un componente.
Podemos acceder a los módulos a través del Gestor de módulos en el menú Extensiones.

Plugins

Los plugins son un tipo de extensión un tanto especial, pues siempre trabajan en conjunción con otras. Un plugin modifica el comportamiento básico de otra extensión ante un evento. Un ejemplo simple: queremos que cuando se guarde un contenido, el plugin tome ese contenido y elimine de él cualquier palabra que consideremos ofensiva.
El nombre tradicional para los plugins es “Mambots”.
Podemos acceder a los plugins a través del Gestor de plugins en el menú Extensiones.

Plantillas

Las plantillas son las extensiones que establecen el diseño de un portal Joomla y al mismo tiempo, indican las posiciones donde podemos situar módulos. Podemos hacer la plantilla más o menos completa, proveyendo incluso un área administrativa donde el usuario pueda modificar el diseño de ésta, sin necesidad de modificar el código fuente de la plantilla.
Podemos acceder a las plantillas mediante el Gestor de plantillas en el menú Extensiones como siempre.

Lenguajes

Por último, los lenguajes son extensiones más bien simples comparadas con las anteriores, ya que “solamente” traducen los textos de la interfaz de Joomla.
Podemos acceder a las plantillas mediante el Gestor de lenguajes en el menú Extensiones.
En conclusión: todas las extensiones se instalan a través del Gestor de Extensiones:
Joomla, gestor de extensiones
Y eso es todo por hoy, un saludo a todos.