Archives for August 2009

Como obtener los nodos de un tipo específico en Drupal 6 desde API

Introducción. En algunos casos puede ser útil obtener desde un fragmento de código PHP utilizando el API oficial, los nodos de un portal basado en Drupal 6 que correspondan con un tipo específico (file, story, event, page, ...).  Esto se puede hacer fácilmente de la siguiente manera. Procedimiento. Obtener el listado con la información general [...]

Probando Compiz con una tarjeta Intel 965 bajo Ubuntu 9.04

Introducción. Mi portátil, un Dell Vostro 1400, tiene una tarjeta de video sencilla Intel 965.  La aceleración gráfica de este modelo es bastante limitada, sin embargo es mas que suficiente para mis requerimientos personales en este rubro. Con la versión 8.10 de Ubuntu funcionaba decentemente sin embargo con la actualización a 9.04 el Compiz dejo [...]

Como personalizar la barra de idiomas en Drupal 6

Introducción. Después de instalar y configurar los módulos para mantener las traducciones del contenido en el portal basado en Drupal 6, el siguiente paso era crear la barra de banderas que permitiera cambiar fácilmente entre los distintos idiomas del portal. Procedimiento. Instalar el módulo Consistent Language Interface que provee al bloque Consistent Language Interface block [...]

Mejorando la creación de contenido traducido con Drupal 6

Además de los pasos realizados para la configuración y edición del contenido traducido en Drupal 6 recientemente he instalado algunos módulos adicionales que permiten mayor flexibilidad en su mantenimiento como el hecho de tener una barra para cambiar el idioma desplegado, controlar que nodo es la traducción a otro idioma de otro, cuales idiomas ya [...]

Personalizar el formulario de login en Drupal 6

Procedimiento. Editar el archivo template.php y agregar la siguiente función (el nombre es libre). function phptemplate_generarFormularioLogin() { $form_id = ‘user_login’; $form = array(); $form['name'] = array( ‘#type’ => ‘textfield’, ‘#maxlength’ => USERNAME_MAX_LENGTH, ‘#required’ => TRUE, ‘#attributes’ => array(‘tabindex’ => ’1′, ‘class’ => ‘registro’), ); $form['pass'] = array( ‘#type’ => ‘password’, ‘#required’ => TRUE, ‘#attributes’ => [...]

Compactando los discos de Virtualbox con Linux Ubuntu como cliente

Introducción. Cuando se crean discos virtuales en Virtualbox de tipo dinámico (Dynamically Expanding), a diferencia del estático (Fixed-size), el archivo que lo representa no se crea inicialmente del tamaño solicitado sino que este crece hasta el tamaño elegido a medida que se van agregando archivos. Después de cierto tiempo de uso, de copiar y borrar [...]

Personalizar el formulario de búsqueda en un tema de Drupal 6

Introducción. En algunas ocasiones no es suficiente con el bloque de búsquedas de Drupal y es necesario incluír un formulario de búsquedas en la plantilla del tema con un estilo muy específico. Las búsquedas en Drupal utilizan un sistema de llaves o claves para impedir que sean consumidas desde fuera del sitio, así que escribir [...]

Como mantener actualizado Firefox en Linux Ubuntu

Introducción. Los métodos para instalar y mantener actualizados los paquetes en Linux son actualmente mas que sorprendentes, evitan la necesidad de ir a buscar los archivos, descargarlos e instalarlos así como lidiar con el infierno de las dependencias.  La distribución Linux de Ubuntu utiliza aptitude que se basa en los repositorios de software de esta [...]

Como crear nuevas regiones en Drupal 6

Introducción. Las regiones en Drupal permiten la ubicación de los bloques en la página.  Su distribución se realiza generalmente en el archivo page.tpl.php del tema. Por defecto se incluyen las siguientes regiones. Columna izquierda (left). Columna derecha (right). Contenido central (content). Cabecera (header). Pies de página (footer). Agregar nuevas regiones al tema. Es posible según [...]

Cómo determinar si el usuario se encuentra autenticado en Drupal

En algunas ocasiones es necesario saber si el usuario que visita el portal basado en Drupal se encuentra autenticado o no en una sesión.  Particularmente útil para determinar que elementos de la interfaz de usuario pueden ser accedidos por usuarios anónimos y cuales deben ser accedidos sólo por usuarios autenticados. Esto se realiza gracias al [...]