La mala memoria

Estás viendo los posts archivados en Wordpress

Digging into WordPress

Publicado el 16 de June (2009)

Archivado en , ,

Ningún comentario

Chris Coyier es un diseñador web especialmente reconocido y activo, con webs como CSS Tricks que es una fuente interminable de buena información sobre CSS y, en realidad, sobre otras muchas cosas relacionadas con el diseño web.

Ahora nos anuncia que él y Jeff Starr han decidido publicar un libro sobre WordPress en PDF para este otoño. Además, quien compre el libro en realidad estará, en palabras de Coyier, adquiriendo una suscripción permanente a una obra que permanecerá en constante actualización.

De momento, lo que ya está en marcha es la web que servirá de apoyo a este libro y que se llama Digging into WordPress.

Copiando una instalación de WordPress

Publicado el 3 de June (2009)

Archivado en

Ningún comentario

Si en algún momento os veis en la necesidad de trasladar vuestra página montada sobre WordPress de un servidor a otro o de un servidor a una instalación local para tener una copia sobre la que trabajar seguros (normalmente se hace al revés pero digamos que tenéis ordenador nuevo o que os habéis cargado la instalación anterior), la cosa no es completamente automática y simple pero tampoco es como para empezar a darse cabezazos contra una pared [Ojo, como siempre en estos casos he encontrado una forma más sencilla de hacer todo esto y que os dejo al final del post. No le he probado directamente pero tiene pinta de ahorrar bastantes pasos con respecto a lo que explico aquí] . Doy por hecho que tenéis instalado en local Apache, MySQL y PHP, si no es así convendría que os dierais una vuelta por la página de XAMPP donde podréis bajaros una instalación mínima y sencilla de estos elementos. A partir de ahí es suficiente seguir estos pasos. Primero, la instalación:

  • Descargar WordPress, a ser posible la misma versión que uséis en el sitio “vivo” o una lo más cercana posible (en mi caso tengo online la 2.7 y en local la 2.7.1).
  • Descomprimirlo en la carpeta htdocs dentro de vuestra instalación de Apache (en mi caso, dentro de xampp/docs).
  • A través de phpMyAdmin o el administrador de PHP que tengáis a mano, crear una base de datos sobre la que se generarán automáticamente las tablas de WordPress.
  • En la carpeta wordpress encontraréis un archivo de nombre wp-config-sample.php que, como su nombre indica, es una plantilla para el archivo de configuración de WordPress. Abrid este archivo en un editor de textos (recomiendo Notepad++) y veréis que en las primeras líneas es fácil encontrar los espacios donde introducir el nombre de la base de datos que acabáis de crear y el nombre de usuario y contraseña que estéis usando para entrar en vuestro administrador de la base de datos. Es lo único que tendréis que cambiar, ahora sólo queda guardar el archivo como wp-config.php.
  • Si entráis en vuestra página (si es en local será en la dirección localhost/wordpress) arrancará el programa de instalación de WordPress.

Hasta aquí los pasos son los normales para instalar WordPress. A partir de ahora empezaremos a importar nuestro blog al nuevo espacio:

  • Desde la página antigua ir a opciones/exportar. Desde aquí conseguiremos un archivo XML que contiene todas nuestras entradas, usuarios, categorías y etiquetas y que podremos, en opciones/importar/wordpress, incorporar al nuevo blog.
  • Para los enlaces (los clásicos que aparecen como blogroll en muchas páginas y que no se exportan por el sistema anterior) el camino es un poco más complejo. En vuestro navegador, escribid el nombre de vuestra página más este añadido: /wp-links-opml.php. Esto os abrirá una página en la que sólo veréis un texto que dice Links for [nombre de vuestra página] [fecha y hora]. Haced un “Guardar página como…” y os quedaréis con un archivo de extensión php que contiene todos vuestros enlaces que podréis importar al nuevo sitio en opciones/importar/enlaces.
  • Por desgracia las categorías de los enlaces no viajan con este archivo así que aquí no nos queda otra que crearlas a mano e irlas asignando de la misma forma (¿o pensabais que todo iba a ser exportar e importar?).
  • Ahora nos tocará copiar a través de nuestro cliente FTP dos carpetas enteras, la del tema que estemos usando y la de los plugins que tengamos instalados. Ambas las podremos encontrar en nuestra instalación de wordpress, dentro de la carpeta wp-content (la del tema estará dentro de la carpeta themes con el nombre que le diéramos en su momento y la de plugins está directamente ahí y deberemos copiarlas en el mismo sitio en la instalación nueva).
  • Tendremos que activar el tema y activar los plugins en sus correspondientes menús.
  • Ahora toca repasar las distintas opciones de la página original e irlas poniendo igual en la nueva. Normalmente bastará con ir copiando los apartados que aparecen bajo los menús de Herramientas y Opciones donde dejaremos configurada la página y los plugins.

Y esto debería ser todo, nuestra página tendría que funcionar en el sitio nuevo exactamente igual que lo hacía en el antiguo. Pueden surgir problemas en función de cómo estén hechas nuestras plantillas. En mi caso el único inconveniente surgió porque las categorías de los enlaces y las entradas no se identifican en el código php por sus nombres sino por sus id, claves numéricas que se asignan automáticamente y que no se van a corresponder en las dos instalaciones. En esta página el blogroll está dividido en dos bloques en función de sus categorías y los apartados del curriculum son en realidad entradas del blog que aparecen en esa página porque tienen asignada una categoría particular con lo que tuve que averiguar la nueva id y cambiar las plantillas. Si os ocurre algo parecido la id es fácil de averiguar, es suficiente con entrar en la categoría en el panel de administración y en la barra de dirección veremos el número que le corresponde. Armados con esa información podremos entrar en la plantilla y hacer los cambios que correspondan. ¡Ahora sí que debería funcionaros todo sin problemas!

: En el vídeo que os dejo aquí explican paso a paso una forma más sencilla de hacer esto mismo que os he explicado antes. En resumen, se trata de hacer una exportación de la base de datos que tenemos online que genera un archivo sql. Sobre este archivo sql tendremos que hacer un “buscar/cambiar” en un editor de textos para sustituir todas las veces en que aparezca la dirección de nuestra web por la dirección local (en mi caso, lamalamemoria.com por xampp/wordpress). Borraremos de nuestra instalación local todas las tablas de la base de datos que wordpress creó al instalarse e importaremos este archivo modificado en su lugar (ojo, hay que asegurarse de que la codificación de caracteres sea la misma para evitar errores en el apartado Operaciones de phpMyAdmin).También copiaremos completa la carpeta wp-content original, eliminaremos la de la instalación local de wordpress y la sustituiremos por esta copia.
Con esto deberíamos tener una copia perfecta de nuestro blog original sin tener que hacer todas las modificaciones y comprobaciones sobre enlaces, categorías y plugins que teníamos que hacer con lo que os contaba antes. Como decía, no lo he probado (en su día intenté una importación por las bravas de la base de datos que, obviamente, se cargó la instalación de wordpress local), lo haré en breve y os comentaré si tengo algún problema.

Actualizando de nuevo: El sistema funciona aunque no está del todo libre de problemas. Tras seguir todos los pasos me dejaba entrar en la página principal pero no en el resto y al tratar de acceder al panel de administración me decía que no estaba autorizado. Finalmente tuve que cambiarle el nombre a la carpeta de plugins para que los “perdiera” momentaneamente y entonces pude acceder al panel. Renombré la carpeta a su nombre original y reactivé los plugins (me conservó la configuración). Aunque al principio seguía sin dejarme acceder a algunas páginas ese problema se solucionó “sólo”, probablemente se trataba de algún archivo temporal o cookie que andaba por ahí sin actualizar.

Plugin para redes sociales

Publicado el 24 de May (2009)

Archivado en

Ningún comentario

Hoy estrenamos otra pequeña mejora en este blog. A partir de ahora podréis ver al final del texto de cada entrada una “caja” con enlaces que os permitirán publicar o compartir estos posts en diferentes redes sociales (Facebook, Digg, Technorati, Stumble Upon, Google Bookmarks, Twitter o Del.icio.us).

Como casi siempre en estos casos, la herramienta mágica si queréis añadir algo parecido a vuestras páginas montadas sobre wordpress es un plugin. Yo he instalado Social Bookmarking Reloaded aunque otro plugin, Social Bookmarks, da prácticamente la misma funcionalidad. La configuración es sencilla, permite definir el mensaje previo a los iconos, el número de líneas que ocuparán y las redes que queremos que aparezcan entre una lista muy amplia de opciones.

Me he encontrado con algunos problemas porque, a pesar de que en la configuración se pueden especificar algunas páginas en las que decidamos que no aparezcan estos enlaces, al final he tenido que eliminarlos vía CSS porque el plugin ignoraba mis instrucciones.

Para manipular  los estilos de presentación hay que tener en cuenta que el plugin cuenta con su propia hoja CSS con lo que tendremos que ir con cuidado con las herencias y la precedencia de unas instrucciones sobre otras.

En la configuración original del plugin se introduce una etiqueta </br>; entre el título que se da al bloque (en nuestro caso, “Compartir:”) y los iconos. Para eliminarlo hay que manipular el archivo php del plugin aunque es una tarea sencilla, no hay más que localizar la parte en la que se genera el html que se va a publicar y eliminar la etiqueta en cuestión. ¡Ahora sólo falta que hagáis uso de los enlaces!

Plugins para WordPress

Publicado el 8 de March (2009)

Archivado en ,

Ningún comentario

WordPress es un fantástico sistema de publicación de blogs e incluso se pueden estirar sus capacidades para convertirlo en casi un sistema de gestión de contenidos en toda regla. Para ampliar las funcionalidades de WordPress cualquiera que se haya puesto a hacer una página sobre este sistema habrá tenido que recurrir a los archiconocidos plugins. Los hay de todos los colores y casi para cualquier cosa, los hay más complejos de manejar y los hay absolutamente simples pero lo que es obvio es que hay una variedad extraordinaria y a veces es complicado encontrar ese que hace justo lo que necesitas.Lejos como estoy de ser un especialista en WordPress, lo que sí puedo hacer es explicar qué plugins he acabado utilizando, después de una búsqueda bastante intensiva, para conseguir algunas de las funcionalidades de esta página. Estos son los que tengo instalados ahora mismo, en breve vendrán más.

Akismet

Este viene de serie con la instalación de WordPress y sirve para filtrar el spam que nos llega como comentarios. No conviene equivocarse, por poca actividad que tenga tu blog, antes o después recibirás comentarios de spam así que conviene tener este sistema activado para lo cual necesitarás la clave API de tú usuario de WordPress.

Archives for a category

En esta web he usado una categoría específica para publicar la información sobre mi curriculum pero no quería que esas entradas aparecieran en el listado de la barra lateral del blog o en el que aparece en la portada y que están dedicados sólo a las entradas del propio blog. Ambos listados se extraen gracias a la función wp_get_archives() pero entre los parámetros que acepta esa función no hay ninguno que permita excluir una determinada categoría o declarar las entradas de qué categorías exactamente queremos que formen parte de la lista publicada. Este plugin permite precisamente esto añadiendo el parámetro cat a la función original. Por ejemplo, con la expresión wp_get_archives('type=postbypost&limit=10&cat=-84'), obtenemos una lista de los 10 últimos posts publicados que no pertenezcan a la categoría 84.

Clean Archives Reloaded

En vez de tener un listado mensual en la barra lateral del blog, he decidido que el archivo tenga su página propia. Para ello instalé este plugin que crea una listado automático de todas las entradas de la página por meses y que incorpora una dosis de JavaScript que oculta las listas en entradas de todos los meses menos el último. Se puede manipular fácilmente la presentación a través de CSS y con unos mínimos conocimientos de PHP se puede ajustar la forma en que se presentan las fechas y otros datos. Por supuesto, funciona a la perfección si el usuario no tiene activado JavaScript en su navegador.

Contact Form 7

Plugins para crear formularios de contacto hay muchos. Una búsqueda rápida os mostrará algunos que permiten crear formularios sencillos y otros con los que se pueden hacer cualquier formulario que a uno se le ocurra y que funcionan incluso con Ajax. En mi caso me decidí por este plugin, bastante completo, con el que se pueden crear formularios mucho más complejos que los que yo he usado pero cuya propiedad más destacable es que permite crear varios en la misma página fácilmente.

Google XML Sitemaps

Las “arañas” de buscadores como Google indexan las páginas leyendo su contenido. Cuanto más fácil se lo pongamos a estos bots mejores “rankings” tendrá nuestra página en los resultados de las búsquedas. Este plugin crea automáticamente un archivo XML que indexa todo el contenido de nuestra página y que es particularmente amigable para los principales buscadores.

The Excerpt Reloaded

WordPress permite crear un resumen de cada post y así poder crear páginas que agrupen entradas sin necesidad de dar los textos completos. Por desgracia esta funcionalidad está algo limitada y no permite, por ejemplo, incorporar imágenes dentro de ese resumen. En mi caso necesitaba poder incluir una versión resumida de un post en la portada pero importando también la imagen principal de la misma. Resulta un poco complicado de personalizar o al menos yo tuve que dar alguna que otra vuelta antes de conseguir lo que buscaba pero, al menos para esto, funciona correctamente.

WordPress Database Backup

Como medida de seguridad es conveniente hacer copias de la base de datos de wordpress con cierta frecuencia. Este plugin permite realizar estas copias en el momento o de forma programada, guardarlas en el servidor, en el disco duro o mandarlas por correo a una dirección determinada. Normalmente los servicios de hosting hacen sus propias copias de seguridad pero si no queremos llevarnos sustos es mejor hacer las nuestras.




Diseño y desarrollo de Marcos Pérez Castell, 2009

Realizado sobre Wordpress 2.7