Manual de instalación de nuevos blogs de proyectos

De cara a facilitar la instalación de nuevos blogs de proyectos en la comunidad Morfeo, se ha creado una guía de instalación y configuración. Esta guía está disponible aquí.

Instalando un weblog en Morfeo

Ampliaciones a Wordpress

El nuevo Website de la Comunidad Morfeo requiere, además de las funcionalidades típicas de un blog y las que ofrecía la antigua Web (con Joomla), servir como agregador de noticias y eventos de los distintos proyectos que en ella se desarrollan. Para conseguir todo esto, se han añadido los siguientes plugins:

  • Language Switcher: permite mantener un blog bilingüe o multilingüe posibilitando la traducción tanto de contenidos como categorías, opciones de administración, etc. Para su instalación se deben seguir los pasos recomendados en http://www.poplarware.com/bilingualblog.html, en los que se requiere la reescritura de algunos ficheros de Wordpress para adaptarlos a las necesidades del plugin, y se ha instalado el plugin disponible en http://www.poplarware.com/languageplugin.html. Además es necesario añadir las traducciones (para más documentación sobre cómo obtener las traducciones de los términos de un template visitar: http://www.poplarware.com/languageplugin.html) que se deseen en la carpeta languagesdel directorio wp-includes de la instalación de Wordpress (ficheros .po y .mo).
  • Collapsing Page Menu: muestra una lista no ordenada de páginas estáticas que se pliega o despliega en función de la página actual.
  • Friends RSS Aggregator: agrega un conjunto de feeds RSS de otros blogs organizados en categorías. Sobre este plugin, obtenido de http://adam.404.org/projects/friends-rss, se han realizado varias modificaciones debido a que no es compatible con la versión 2.2 de Wordpress. Por ello, se ha cambiado en el fichero >friends_rss.php la llamada a la función get_linkobjectsbyname, que está obsoleta, por get_bookmarks(“category_name=$category”). Del mismo modo, se ha modifiado este fichero para compatibilizar este plugin con el de Language Switcher. Así, obtiene el lenguaje en el que se deben mostrar los elementos del RSS mediante las funciones proporcionadas por el plugin del lenguaje. Además, Se ha modificado el fichero wp-admin/index-extra.php para evitar un posible error en la pantalla inicial de administración, comentando la línea 3:
  • require_once (ABSPATH . WPINC . ‘/rss.php’);

    Por otro lado, la funcionalidad de este plugin no cubre todas las necesidades que han ido surgiendo a lo largo de la ampliación del Website de Morfeo, por lo que ha sido mejorado en la FI-UPM para que aporte toda la funcionalidad necesaria, cambiando su nombre a RSS Aggregator. Así, se ha modificado la administración de este plugin para que contemple el hecho de manejar varios RSS organizados en categorías, de forma que sea posible, dependiendo de las necesidades, agregar únicamente los RSS pertenecientes a una determinada categoría. Además se ha modificado la configuración del plugin (en el fichero wp-content/plugins/rss-aggregator/rss_fetch.inc) para que el acceso a los distintos feeds sea realizado a través de un Proxy. Otra mejora realizada sobre este plugin es que se ha añadido la posibilidad de establecer un proceso Cron que actualice la caché de RSS automáticamente para que en el acceso al Website estén ya agregados los RSS necesarios. Además, se ha establecido un tiempo máximo de vida de la caché de 60 minutos (en el fichero wp-content/plugins/rss-aggregator/rss_aggregator.php), de forma que, si no existe un proceso Cron que realice la sincronización, se llevará a cabo una actualización de la caché con el primer acceso al Websiteque se realice pasado dicho tiempo.

  • PJW Mime Config: permite extender la lista de tipos mime soportados por la herramienta de subida de archivos de Wordpress.
  • Search Everything: permite ampliar las capacidades de búsqueda de Wordpress a elementos distintos a posts
    como, por ejemplo, páginas estáticas.
  • Social Bookmarking Reloaded: añade los iconos de los servicios de etiquetado social más utilizados a los contenidos mantenidos en el blog para facilitar su etiquetado. Este plugin también ha sido modificado para posibilitar que los posts creados en la categoría Eventos dispongan de un nuevo icono que permite añadir dicho evento a Google Calendar.
  • Simple Tagging: permite al autor de un contenido añadir palabras clave que serán mostradas en un Tag Cloud para facilitar las búsquedas y la navegación de los lectores.
  • BackupWordpress: permite al administrador realizar de forma sencilla un backup del blog, así como programar backups semanales o diarios.
  • Email Immunizer: proporciona protección frente a posible spam en los correos electrónicos que aparecen en los posts y páginas estáticas publicados en el weblog.Este plugin no necesita ser configurado ya que, de manera automática, modifica los correos electrónicos publicados cambiando aleatoriamente algunos de sus caracteres por el código ASCII asociado a los mismos. De esta forma se impidien que robots maliciosos puedan obtener la dirección del correo sin necesidad de que el usuario se percate de dicha actuación.
  • Random AntiSpam: proporciona protección frente a comentarios de tipo spam generados automáticamente por máquinas. Para llevar a cabo su tarea, este plugin obliga al usuario que desea realizar un comentario sobre un post a cumplimentar un código Captcha generado de manera aleatoria.El código Captcha generado dispone además de un soporte sonoro para facilitar la labor a personas con deficiencias visuales.

Estos plugins deben situarse en la carpeta wp-content/plugins de la instalación de Wordpress y activarse desde la zona de administración de Wordpress. Una vez instalados se podrá llevar a cabo su configuración, en caso de que fuese necesario.

Además de su instalación y configuración, muchos plugins requieren modificar el template para añadir determinada sentencia que permite mostrar los efectos de los plugins. Estas modificaciones se han llevado a cabo sobre un template creado para el website de Morfeo. Este template dota al website del aspecto estético deseado e incluye en él todas las
funcionalidades deseadas que permiten mostrar las funcionalidades que proporcionan los plugins descritos anteriormente.

Para la creación de este template (ubicado en wp-contents/templates/morfeo) se han añadido determinados ficheros específicos que no son estándares a todos los templates de Wordpress. Estos son:

  • El fichero navbar.php permite especificar un array cuyos pares clave-valor conformarán la barra de navegación basada en pestañas del website. De esta forma, si se desea añadir un nuevo elemento se deberá añadir un nuevo elemento, cuya clave será el texto que se desea mostrar y cuyo valor será la dirección del enlace al que apuntará la nueva pestaña.
  • El fichero linkfeeds_by_date.php añade un nuevo formato de una página que muestre los eventos agregados de los blogs de los proyectos asociados a la comunidad. Este formato debe tener el mismo aspecto que el del resto del template. En el paquete que se distribuye esta acción ya está realizada.
  • Los ficheros pagetemplate.simpletagging.php y sidebartag.php permiten dar un formato adecuado a la página generada al consultar las entradas que se encuentran etiquetadas con uno o varios tags. El primero de ellos se encarga del cuerpo central de la página y el segundo de los menús laterales. Al igual que en el caso anterior, deben mantener el mismo aspecto que el resto del template. En el paquete que se distribuye esta acciónya está realizada.
  • El fichero logos.php permite incluir tanto los logos de las entidades financiadoras como los logos de los miembros del proyecto. En este fichero pueden especificarse el nombre, la URL y el logo de cada entidad para que esta información sea mostrada en la sección “subvencionado por”, en el caso de los logos de los financiadores, y en la sección “miembros”, en el caso de los logos de colaboradores. Si no se desea que se muestren estas secciones basta con no incluir ninguna referencia a entidades en el fichero logos.php. Además, el directorio logos es el destinado al almacenamiento de los logos de las entidades especificadas en el fichero logos.php.
  • Los ficheros ie.css e iefixes.js permiten una visualización correcta del website en el navegador Internet Explorer 6 y 7. Como aclaración recalcar que el fichero style.css garantiza la correcta visualización en el navegador Firefox.