Aug 12

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 empresa donde publican con mucha frecuencia las nuevas versiones de los paquetes y el sistema se encarga de notificar e instalar estos paquetes si son de nuestro interés.

Con Mozilla Firefox sucede algo particular.  Las nuevar versiones de la misma línea del Firefox que tenemos instalado son notificadas e instaladas, sin embargo si surge una nueva versión superior esta no es incluída hasta la siguiente versión de Ubuntu.  Es decir, Ubuntu Jaunty (9.04) viene con Firefox 3.0 y nos notificará de cualquier actualización de esta línea (3.0.x) que suceda, sin embargo nunca nos informará del ya disponible Firefox 3.5.x hasta la próxima gran actualización de Ubuntu.

Para solventar esto es posible utilizar Ubuntuzilla que es un script en Python que nos actualiza e informa de las nuevas versiones de Firefox disponibles.

Instalación.

1. Descargar la última versión de Ubuntuzilla desde la siguiente ubicación.

http://sourceforge.net/projects/ubuntuzilla/

2. Hacer doble clic sobre el archivo recién descargado y presionar el botón Install package para su instalación o ejecutar la siguiente instrucción desde la línea de comando.

$ dpkg -i ubuntuzilla-*-i386.deb

Ejecución.

1. Cierre las ventanas de Firefox que tenga abiertas.

2. Abra una consola y ejecute el siguiente comando.

$ ubuntuzilla.py

3. Verifique que la información desplegada corresponda con la última versión de Firefox disponible.

Retrieving the version of the latest release of Firefox from the Mozilla website...
The most recent release of Firefox is detected to be 3.5.2. Please make sure this is correct before proceeding. (You can confirm by going to http://www.mozilla.org/)
If no version number shows, if the version shown is not the latest, or if you would like to install an older release, press 'n', and you'll be given the option to enter the version manually. Otherwise, press 'y', and proceed with installation. [y/n]?
Please enter 'y' or 'n': y

4. Seleccione la localización que se desea para Firefox.  En mi caso inglés de US.

Please choose the localization (language) for Firefox. Enter the number of your choice from the list below. [If you do not see a list of localizations, please check the help section of our website at http://ubuntuzilla.sourceforge.net/ for steps you can take to resolve this problem.]
0. af         Afrikaans [Afrikaans]
1. ar         Arabic [عربي]
3. be         Belarusian [Беларуская]
4. bg         Bulgarian [Български]
5. bn-BD      Bengali (Bangladesh) [বাংলা (বাংলাদেশ)]
6. bn-IN      Bengali (India) [বাংলা (ভারত)]
7. ca         Catalan [català]
8. cs         Czech [Čeština]
9. cy
10. da         Danish [Dansk]
11. de         German [Deutsch]
12. el         Greek [Ελληνικά]
13. en-GB      English (British) [English (British)]
14. en-US      English (US) [English (US)]
15. eo         Esperanto [Esperanto]
16. es-AR      Spanish (Argentina) [Español (de Argentina)]
17. es-CL      Spanish (Chile) [Español (de Chile)]
18. es-ES      Spanish (Spain) [Español (de España)]
19. es-MX      Spanish (Mexico) [Español (de México)]
20. et         Estonian [Eesti keel]
21. eu         Basque [Euskara]
22. fa         Persian [فارسی]
24. fr         French [Français]
25. fy-NL      Frisian [Frysk]
26. ga-IE      Irish [Gaeilge]
27. gl         Galician [Galego]
28. gu-IN      Gujarati [ગુજરાતી]
29. he         Hebrew [עברית]
31. hr         Croatian [Hrvatski]
32. hu         Hungarian [Magyar]
33. id         Indonesian [Bahasa Indonesia]
34. is         Icelandic [íslenska]
35. it         Italian [Italiano]
36. ja         Japanese [日本語]
37. ka         Georgian [ქართული]
38. kk         Kazakh [Қазақ]
39. kn         Kannada [ಕನ್ನಡ]
40. ko         Korean [한국어]
41. ku         Kurdish [Kurdî]
42. lt         Lithuanian [lietuvių kalba]
43. lv         Latvian [Latviešu]
44. mk         Macedonian [Македонски]
45. ml         Malayalam [മലയാളം]
46. mn         Mongolian [Монгол]
47. mr         Marathi [मराठी]
48. nb-NO      Norwegian (Bokmål) [Norsk bokmål]
49. nl         Dutch [Nederlands]
50. nn-NO      Norwegian (Nynorsk) [Norsk nynorsk]
51. oc         Occitan (Lengadocian) [occitan (lengadocian)]
52. or         Oriya [ଓଡ଼ିଆ]
53. pa-IN      Punjabi [ਪੰਜਾਬੀ]
54. pl         Polish [Polski]
55. pt-BR      Portuguese (Brazilian) [Português (do Brasil)]
56. pt-PT      Portuguese (Portugal) [Português (Europeu)]
57. rm         Romansh [rumantsch]
58. ro         Romanian [română]
59. ru         Russian [Русский]
60. si         Sinhala [සිංහල]
61. sk         Slovak [slovenčina]
62. sl         Slovenian [slovensko]
63. sq         Albanian [Shqip]
64. sr         Serbian [српски]
65. sv-SE      Swedish [Svenska]
66. ta-LK      Tamil (Sri Lanka) [தமிழ் (இலங்கை)]
67. ta         Tamil [தமிழ்]
68. te         Telugu [తెలుగు]
69. th         Thai [ไทย]
70. tr         Turkish [Türkçe]
71. uk         Ukrainian [Українська]
72. vi         Vietnamese [Tiếng Việt]
73. zh-CN      Chinese (Simplified) [中文 (简体)]
74. zh-TW      Chinese (Traditional) [正體中文 (繁體)]

Enter your choice of localization (integer, from 0 to 74): 14
You have chosen localization en-US, English (US) [English (US)]. Is that correct [y/n]?
Please enter 'y' or 'n': y

5. Indique si desea que Ubuntuzilla verifique regularmente por nuevas versiones de Firefox.

Would you like to set up automatic update checking for the official Mozilla build of Firefox (recommended)? This feature will regularly check for updates to Firefox, and put up a small unobtrusive notification message with update information, when a new release is available. [y/n]
Please enter 'y' or 'n': y

6. Disfrute de su nuevo Firefox y de las actualizaciones periódicas de nuevas versiones.

Enlaces.

Tagged with:



En August 12 de 2009, Jorge Iván Meza Martínez escribió acerca de Como mantener actualizado Firefox en Linux Ubuntu.
Aug 12

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.

  1. Columna izquierda (left).
  2. Columna derecha (right).
  3. Contenido central (content).
  4. Cabecera (header).
  5. Pies de página (footer).

Agregar nuevas regiones al tema.

Es posible según la complejidad del tema que sea necesario agregar nuevas regiones para manipular la distribución del contenido del sitio con mayor precisión y granularidad.

Hasta la versión 5 de Drupal esto se realizaba sobreescribiendo la función phptemplate_regions() del archivo template.php, sin embargo este estilo de configuración fue modificado para las versiones 6 y posteriores.

Ahora la configuración de las regiones se realiza en el archivo TEMA.info de la siguiente manera.

regions[left] = Columna izquierda
regions[right] = Columna derecha
regions[content] = Contenido
regions[header] = Cabecera
regions[footer] = Pies de pagina
regions[menu] = Menu horizontal

Enlaces.

Tagged with:



En August 12 de 2009, Jorge Iván Meza Martínez escribió acerca de Como crear nuevas regiones en Drupal 6.
Aug 12

Introducción.

Las "migas de pan" o breadcrumbs es aquella sección de los sitios web que lleva un registro jerárquico de los niveles del sitio que se han visitado permiténdonos regresar a través de ellos de manera asíncrona.  Un ejemplo de breadcrumbs podría ser este.

Inicio > Software > Web.

Esto significaría que se está en la sección Web que depende del Software y que pende del inicio del sitio.

Breadcrumbs en Drupal.

Drupal provee automáticamente esta facilidad, él mismo va generando las "migas de pan" y las ubica donde se inserte la siguiente etiqueta, comúnmente en page.tpl.php.

<?php print $breadcrumb ?>

Por defecto Drupal se hace cargo de generar el contenido HTML asociado a las "migas de pan" con un estilo por defecto.  En algunas ocasiones este estilo no se adecúa a las necesidades propias.

Personalizar las breadcrumbs en Drupal.

Para hacer esto es necesario crear o editar el archivo template.php ubicado en el tema activo y agregar o modificar la definición de la función phptemplate_breadcrumb($breadcrumb) donde $breadcrumb es un arreglo y cada una de sus celdas corresponde con un segmento de las "migas de pan".

/**
 * Return a themed breadcrumb trail.
 *
 * @param $breadcrumb - An array containing the breadcrumb links.
 * @return a string containing the breadcrumb output.
 */
function phptemplate_breadcrumb($breadcrumb)
{
    if (empty($breadcrumb))
        return "";

    $str = "<ul>";

    $length = count($breadcrumb);

    for($i=0; $i<$length; $i++)
    {
        $bc = $breadcrumb[$i];
        $class = ($i < $length - 1) ? "" : "class='ruta_final'";

        $str .= "<li {$class}>{$bc}</li>";
    }

    $str .= "</ul>";

    return $str;
 }

El ejemplo anterior crea las "migas de pan" como un UL donde cada LI corresponde con una sección visitada y cuya última sección tiene además una clase CSS llamada ruta_final.

Tagged with:



En August 12 de 2009, Jorge Iván Meza Martínez escribió acerca de Personalizar las “migas de pan” en Drupal.
Aug 12

Imágenes a partir de las hojas de estilo.

Cuando se desarrolla un tema la mayoría de las imágenes quedan relacionadas a través de las hojas de estilos (CSS) sus rutas son relativas automáticamente al directorio del tema y se incluyen, al igual que los archivos Javascript, en el archivo *.info del tema.

; $Id: dm.info,v 0.1 2009/08/11 11:11:00 jimezam Exp $
name = miTema
description = Esta es la descripción del tema.
version = 1.0
core = 6.x
engine = phptemplate

stylesheets[all][] = css/style.css
stylesheets[all][] = css/layout.css

scripts[] = js/jquery-1.3.2.min.js

El ejemplo anterior hace que miTema incluya automáticamente las hojas de estilo style.css y layout.css ubicadas bajo css/ y el archivo jquery-1.3.2.min.js ubicado bajo js/.  Esto se hace exactamente donde se inserten las siguientes etiquetas, normalmente ubicadas en el <head> de page.tpl.php.

<?php print $styles; ?>
<?php print $scripts; ?>

Imágenes estáticas directamente del tema.

En otras ocasiones es necesario referenciar imágenes (<img>) u otros recursos estáticos que se encuentran ubicados en el directorio del tema activo.  Para hacer esto se utiliza el método path_to_theme del API de Drupal.

Supongamos que se desea crear una imagen con el archivo Foto.png que se encuentra ubicado en el directorio imagenes/ del tema activo.  Se debe utilizar la siguiente expresión.

<img src="<?php global $base_path; print $base_path.path_to_theme(); ?>/imagenes/Foto.png" />

Otra forma de hacerlo, con una sintaxis un poco mas resumida es utilizando las funciones directas que provee Drupal de la siguiente manera.

<img src="<?php print base_path() . path_to_theme(); ?>/imagenes/Foto.png" />

Solución de problemas.

A pesar de que no se encuentren activos los cachés de Drupal, algunas veces los cambios que se realizan en estos archivos de presentación no se reflejan cuando se refresca el sitio.  Para corregir este comportamiento es necesario limpiar el caché de datos del tema para que se generen nuevas versiones que incluyan los cambios recién realizados.

Para limpiar el caché de datos de Drupal inicie como administrador y acceda a la configuración de desempeño (?q=admin/settings/performance).

Al final de la página presione el botón Clear cached data y al terminar esta página refresque nuevamente el sitio web para observbar los cambios.

Tagged with:



En August 12 de 2009, Jorge Iván Meza Martínez escribió acerca de Como referenciar las imagenes de un tema en Drupal.