Crear enlaces en drupal

En el desarrollo del theming siempre vamos a crear enlaces internos o externos y estoy seguro que siempre usamos la etiqueta <a>, sin embargo Drupal tiene una función propia para la creación de enlaces de una forma segura, la función l().

Por temas de seguridad siempre es una buena práctica usar las funciones de Drupal para la creación de elementos como los enlaces y así nos aseguramos que los links creados siempre serán correctos y seguros.

Importancia de usar la función l() de Drupal

Es importante porque nos garantiza que los enlaces generados serán seguros, además que estaremos cumpliendo con las buenas prácticas de desarrollo que nos indica Drupal y eso es muy importante si queremos ser buenos programadores.

Adicionalmente hay otras herramientas que nos pueden ayudar en este tema, por ahora nos centraremos en la creación de enlaces seguros.

Ejemplo:

print l('Inicio', 'node');
print l('Nosotros', 'node/2');
print l('Servicios', 'servicios');

Enlaces con traducción

Sí, drupal tiene otra función interesante que es la función “t()” que se complementa muy bien con la función “l()” y la sintaxis de ambos son muy similares. A continuación les dejo algunos ejemplos combinando estas dos funciones que les va servir mucho en el desarrollo de su theming.

Ejemplo: Sintaxis función t()

print t('This text is available for translation');

Ejemplo: Enlaces con textos disponibles para traducción

// enlace simple
print l(t('Services'), 'node/3'); 
 
// agregando clase
print l(t('Services'), 'node/3',array('attributes'=>array('class'=>'mi-clase'))); 
 
// agregando target
print l(t('Services'), 'node/3',array('attributes'=>array('target'=>'blank'))); 
 
// agragando clase y target
print l(t('Services'), 'node/3',array('attributes'=>array('class'=>'mi-clase','target'=>'blank')));
 
// agregando clase, target y title
print l(t('Services'), 'node/3',array('attributes'=>array('class'=>'mi-clase','target'=>'blank','title'=>'servicios')));