Actualización de portales web basados en Drupal a la versión 5.9

Software, Web August 8th, 2008

En los primeros días del mes de julio del presente año se liberaron las versiones 5.9 y 6.3 de Drupal.  Su actualización es altamente recomendada.

A pesar de que no he variado los pasos requeridos para realizar la actualización desde artículos anteriores, agregué un paso adicional para remover completamente los módulos de core antígüos y evitar con esto cualquier tipo de incompatibilidad por mezcla de versiones.

Con respecto a los siguientes pasos de actualización se debe tener en cuenta que el directorio donde se ubican los archivos del portal basado en Drupal se encuentran en site localizado en el directorio actual.  El paquete con la nueva distribución de Drupal ha sido descargado y copiado también en la ubicación actual.

Al final del proceso de actualización el directorio site contendrá la versión actualizada del sitio y el directorio site.old la copia de seguridad de la versión anterior.

Realizar una copia de seguridad de la base de datos.

Renombrar el sitio actual para conservarlo como una copia de seguridad previa a la actualización.

$ mv site site.old

Descomprimir la última versión de la distribución de Drupal.

$ tar zxvf drupal-5.9.tar.gz

Renombrar el directorio recién extraído para ser el nuevo portal web.

$ mv drupal-5.9/ site

Mueve los módulos de la nueva versión a una ubicación temporal para evitar cualquier tipo de sobreescritura con los módulos antígüos.

$ mv site/modules/ site/modules.new

Restaura los archivos del sitio y de los usuarios.

$ cp -rf site.old/files site

Restaura la información de configuración del sitio.

$ cp -rf site.old/sites site

Restaura los archivos del tema del sitio.  Reemplazar MITEMA por el nombre del tema (directorio) a restaurar.

$ cp -rf site.old/themes/MITEMA site/themes/

Restaura la totalidad de los módulos instalados en la versión anterior.

$ cp -rf site.old/modules site

De los módulos recién restaurados remueve los del grupo core para utilizar únicamente las últimas versiones.

$ rm -rf site/modules/aggregator site/modules/blog site/modules/book site/modules/comment site/modules/drupal site/modules/forum site/modules/legacy site/modules/menu site/modules/path site/modules/poll

$ rm -rf site/modules/search site/modules/system site/modules/throttle site/modules/upload site/modules/watchdog site/modules/block site/modules/blogapi site/modules/color site/modules/contact site/modules/filter

$ rm -rf site/modules/help site/modules/locale site/modules/node site/modules/ping site/modules/profile site/modules/statistics site/modules/taxonomy site/modules/tracker site/modules/user

Restaura los módulos de core de la última versión.

$ cp -rf site/modules.new/* site/modules

Remueve la copia de seguridad de los módulos de core de la última versión.

$ rm -rf site/modules.new

Ejecute el script de actualización de la base de datos si es necesario.

(web) $URL/apps/site/update.php

Utilizando el módulo update-status verifique si existen módulos con versiones nuevas, suceptibles de ser actualizados.

(web) $URL?q=admin/logs/updates

Actualice los módulos reemplazando sus directorios con las nuevas versiones bajo el directorio /site/modules y ejecute nuevamente el script de actualización de la base de datos.

(web) $URL/apps/site/update.php

Para terminar el proceso de actualización, remueva la copia del paquete de distribución de la última versión de Drupal.

$ rm drupal-5.9.tar.gz

Tags: ,

Premios para CMS de código abierto

Software, Web February 18th, 2008

El ganador según la página de PackPub ... Drupal.

2007 Overall Open Source Content Management System Award:

1. Drupal
2. Joomla!
3. CMS Made Simple

Most Promising Open Source Content Management System:

1. MODx
2. TYPOlight, dotCMS

Best PHP Open Source Content Management System:

1. Joomla!
2. Drupal
3. e107

Best Other Open Source Content Management System:

1. mojoPortal
2. Plone
3. Silva

Best Open Source Social Networking Content Management System:

1. WordPress
2. Drupal, Elgg

Tags: ,

Actualización de portales web basados en Drupal (versión 5.7)

Web February 11th, 2008

El día de hoy actualicé cuatro de los cinco portales web que tengo desarrollados con Drupal a la versión 5.7.

No encontré ninguna novedad en el protocolo de actualización frente a los pasos de actualización que establecí con las otras versiones.

Lo único particular fue que el módulo Localizer que permite mantener veriones de los nodos en varios idiomas pidió que le agregara la siguiente línea al final del archivo sites/default/settings.php.

include_once('sites/all/modules/localizer/localizer_settings.php');

Sin embargo ese archivo incluido no existe en esa ubicación. Yo realicé la modificación con la siguiente línea.

include_once('modules/localizer/localizer_settings.php');

Tags: ,

Plugin CodeHighlighterPlugin de wordpress

Software, Web February 11th, 2008

Esta semana instalé el plugin CodeHighlighterPlugin para Wordpress el cual está basado en GeSHi como su motor genérico para resaltar la sintaxis.

El código fuente a resaltarse se debe encerrar entre etiquetas <pre> las cuales aceptan los siguientes parámetros.

Lenguaje del código fuente (lang="XXX"). Es obligatoria e indica en que lenguaje se encuentra el snippet de código fuente inscrito. Su valor debe ser una de las siguientes cadenas.

actionscript, ada, apache, asm, asp, bash, c, c_mac, caddcl, cadlisp, cdfg, cpp, csharp, css, delphi, html4strict, java, javascript, lisp, lua, mpasm, nsis, objc, oobas, oracle8, pascal, perl, php, python, qbasic, sas, smarty, vb, vbnet, visualfoxpro, xml

Número de línea (lineno[=d]). Es opcional, si está presente hace que las líneas de código se presenten numeradas. Adicionalmente es posible especificar un valor a partir del cual se numerarán las lineas.

#include &lt; stdio.h &gt;
 
int main(void)
{
	printf ("Hola Mundo");
}

Otro ejemplo.

function hola($nombre)
{
    return "Hola " . $nombre;
}

Tags: ,

Actualización de portales web basados en Drupal

Web January 12th, 2008

La prueba de que hace rato que no escribía nada en este blog es que ya salió una versión de nueva de Drupal y por poco quedan seguidos los dos registros de actualización.

El día de hoy actualicé los 5 portales web que tengo en este momento basados en Drupal con la nueva versión: 5.6 la cual soluciona hallazgos de seguridad y por lo tanto la actualización es strongly recommended.

Mas información acerca de la actualización en: http://drupal.org/drupal-5.6

El protocolo de actualización que utilice fue el mismo de la vez pasada.

$ mv site site.old

$ tar zxvf $HOME/drupal-5.6.tar.gz

$ mv drupal-5.6/ site

$ mv site/modules/ site/modules.new

$ cp -rf site.old/files site

$ cp -rf site.old/sites site

$ cp -rf site.old/themes/MITEMA site/themes/

$ cp -rf site.old/modules site

$ cp -rf site/modules.new/* site/modules

$ rm -rf site/modules.new

(web) $URL/apps/site/update.php

(web) $URL?q=admin/logs/updates

(web) $URL/apps/site/update.php

$ rm $HOME/drupal-5.6.tar.gz

Tags: ,

Actualización de portales basados en Drupal

Web December 12th, 2007

En la mañana de hoy realicé la actualización de los cinco portales web basados en Drupal que estoy desarrollando actualmente. Este software pasó rápidamente de la versión 5.2 que tenía instalada a la nueva 5.5.

A continuación describo el protocolo de actualización que realicé en cada uno de los sitios.

Realizar el inicio de sesión en el Portal Web como un usuario Administrador utilizando un navegador web.

A través de una conexión de SSH realizar las siguientes acciones.

Renombrar el directorio del sitio (site) para conservarlo como copia de seguridad en vivo (además de la copia de seguridad real).

$ mv site site.old

Descomprimir la nueva distribución de Drupal, los archivos resultantes quedarán en el directorio actual.

$ tar zxvf $HOME/drupal-5.5.tar.gz

Renombrar el directorio de Drupal recién descomprimido para convertirse en el nuevo sitio (site).

$ mv drupal-5.5/ site

Renombrar la carpeta de los módulos de la nueva versión para evitar su sobreescritura.

$ mv site/modules/ site/modules.new

Copiar los archivos (files) de la versión instalada a la nueva instalación.

$ cp -rf site.old/files site

Copiar el directorio de los sitios (sites) con la información de conexión a la base de datos.

$ cp -rf site.old/sites site

Copiar los temas personalizados de la versión instalada a la nueva.

$ cp -rf site.old/themes/MITEMA site/themes/

Copiar los módulos del sitio antigüo al nuevo en instalación.

$ cp -rf site.old/modules site

Copiar los nuevos módulos del núcleo (core) al directorio de módulos sobreescribiendo los antigüos.

$ cp -rf site/modules.new/* site/modules

Remover la carpeta con los módulos de núcleo nuevos.

$ rm -rf site/modules.new

Acceder a la siguiente dirección web utilizando un navegador para completar la instalación del sitio. Se deberá reemplazar $URL por la dirección del Portal Web.

$URL/apps/site/update.php

Verificar los requerimientos de actualización de los diferentes módulos instalados según disponibilidad de los mismos. Para esto se debe consultar la siguiente dirección utilizando un navegador web. Se requiere que el Portal Web tenga instalado previamente el módulo Update Status.

$URL?q=admin/logs/updates

Actualizar los módulos que sea necesarios reemplazando sus archivos en el directorio $PATH/modules con las nuevas versiones.

Ejecutar nuevamente el script de actualización del sitio visitando la siguiente dirección con un navegador web.

$URL/apps/site/update.php

Remover el archivo de distribución original de Drupal.

$ rm $HOME/drupal-5.5.tar.gz

Terminar.

Tags: ,

Crear nuevas secciones en page.tpl de Drupal

Web August 16th, 2007

Cómo agregar secciones nuevas a plantilla de un tema de Drupal además de las convencionales header, footer, left_sidebar, right_sidebar y content ?En el contenido de la plantilla (archivo page.tpl.php) agregar la impresión del contenido del nuevo bloque. En este caso links_section.

<?php if ($links_section):?>
<?php print $links_section; ?>
<?php endif; ?>

En el archivo de la plantilla (template.php) crear o editar la función TEMA_regions() especificando las regiones contenidas. En este caso, el tema se llama mitema y al final se incluye la sección nueva.

function mitema_regions()
{
return array('left' => t('left sidebar'),
'right' => t('right sidebar'),
'content' => t('content'),
'header' => t('header'),
'footer' => t('footer'),
'links_section' => t('links section'));
}

Para mas información consultar el siguiente enlace: http://drupal.org/node/29139.

Tags: ,