Entradas marcadas con el tag 'wordpress'

Una 'Tag' es una etiqueta simple sin jerarquía ni relación de parentesco con otras tags y que se utiliza para la categorización de contenidos.

Traducción de Geo Mashup

Lunes, 15 mar '10

Hace poco he estado trabajando con el plugin WordPress Geo Mashup (para un proyecto del que os hablaré muy pronto) que permite localizar las entradas de un blog WordPress y mostrarlas sobre un mapa usando la API de Google Maps.

He traducido los archivos de idioma a español, por si alguno de los usuarios del plugin quieren cambiar el idioma del panel de administración. Sólo necesitáis los siguientes archivos:

GeoMashup-es_ES.mo (15.7Kb)
GeoMashup-es_ES.po (19.9Kb)

NOTA: La traducción al Español ha sido incluida en la distribución del plugin. La versión que contenga el plugin puede estar más actualizada.

Si alguien ve algún fallo o inexactitud, estaré encantado de corregirlos. Podéis dejar un comentario en el hilo que ha sido abierto al efecto por Dylan, el admin de Geo Mashup, en la página del proyecto. Los archivos se añadirán a la próxima revisión del plugin.

WordPress como CMS global

Miércoles, 25 mar '09

Hasta ahora en mi página web, el blog era sólo una sección, y el resto de las páginas estaban hechas a mano, con su propio sistema de plantillas. Hace tiempo que pensaba en la posibilidad de gestionar todo con WordPress, lo que me permitiría añadir contenido desde su interfaz y también unificar la apariencia.

Por ejemplo, mi web tenía dos sitemaps, uno para la raíz y otro para el blog, dos hojas de estilo (muy similares), etc. Migrar todo a WordPress terminaría con todo este contenido (y trabajo) duplicado, pero el mayor problema era cómo preservar la estructura de la web y las URL‘s ya existentes.

Voy a analizar cómo instalar WordPress para usarlo de CMS para toda la web, pero teniéndolo contenido en su propio directorio y conservando la estructura de enlaces actual.

Supongamos una estructura como la siguiente:

  • www.example.com
    • /blog
      • /estructura de WordPress
    • /página1.php
    • /página2.php

Gestión mediante WordPress

La primera pregunta era si instalar WordPress en el directorio raíz, pero era reticente a esto por muchos motivos: primero, por seguridad y segundo por extensibilidad, porque si luego quería montar un wiki en el directorio /wiki/, las páginas del motor del wiki iban a estar mezcladas con las de WordPress. No creo que eso funcionase bien. Tenía más sentido aislar todas las aplicaciones en su propia carpeta, dejando la raíz limpia para otras páginas u aplicaciones.

¿Es posible instalar WordPress en un sub-directorio y aún así hacerlo servir páginas del directorio raíz? La respuesta es que sí, pero con un poco de ayuda. Una página del codex de WordPress explica cómo mover WordPress a su propia carpeta; En mi caso iba a trabajar con una instalación nueva de WordPress, o sea que las instrucciones difieren un poco.

Instalación

Primero instalamos WordPress en una carpeta. Podemos llamar esa carpeta _wordpress o lo que queramos. Tras seguir la instalación estándar, accedemos al panel de control y en la primera pestaña de las opciones (Opciones > General) cambiamos la URL “Dirección del blog” y la apuntamos a nuestro directorio raíz.

Opciones generales de WordPress

El otro campo, “Dirección de WordPress”, debería tener el valor http://www.example.com/_wordpress, o la URL de la carpeta donde lo hayamos instalado. Ahora pulsamos en “Guardar cambios”. Los cambios se guardarán, pero al cargar la página de nuevo WordPress nos dará un error. Tampoco seremos capaces de ver el blog en este punto. Ignoramos este error por ahora.

Ahora tenemos que copiar los archivos index.php y .htaccess del directorio de WordPress al directorio raíz. Los abrimos con un editor y los modificamos. El archivo de index.php por defecto se parece a esto:
< ?php
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
 
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define('WP_USE_THEMES', true);
 
/** Loads the WordPress Environment and Template */
require ('./wp-blog-header.php');
?>

En la penúltima línea del script, modificamos la ruta para apuntar a nuestro archivo, o sea que en nuestro ejemplo la línea quedaría así:

require ('./_wordpress/wp-blog-header.php');

Ahora deberíamos poder acceder a nuestro panel de administración en http://www.example.com/_wordpress/wp-admin/ y si accedemos a nuestra página (http://www.example.com/), deberíamos ver nuestro blog.

Permalinks y portadas

A partir de aquí, podemos modificar las opciones de WordPress para imitar nuestra estructura de directorios previos, siempre que nuestro servidor tenga activado el módulo “Rewrite” de Apache. La buena noticia es que el 99% de los casos se pueden resolver desde WordPress.

En primer lugar, queremos que la página por defecto no sea la del blog, sino una página de inicio (para imitar nuestra estructura inicial, pero esto es opcional). En el panel de WordPress, creamos esa página y la guardo con el título de “Inicio”. También creamos otra página que podemos llamar “blog” y que podemos dejar vacía. Ahora vamos a Opciones > Lectura y seleccionamos “Una página estática (seleccionar abajo)” como la opción que mostrará la página inicial.

wp_opciones_lectura

En el desplegable elegimos nuestra página “Inicio” y en la siguiente línea (“Página de entradas”) elegimos nuestra página “Blog”. Ahora, al acceder a http://www.example.com/ veremos nuestra página de inicio y al acceder a http://www.example.com/blog/ accederemos a nuestro blog, igual que antes de migrar todo nuestro contenido a WordPress en nuestro ejemplo.

Si ahora además queremos que los demás permalinks se ajusten a nuestra estructura, vamos a la página de Opciones > Permalinks y añadimos /blog/ delante de todos los links.

wp_opciones_permal

Nuestro blog y todas las páginas relacionadas (históricos, categorías, tags, etc.) estarán bajo el directorio virtual /blog/ en nuestro servidor, dejando el directorio raíz libre para páginas que podemos crear con WordPress o fuera del CMS.

Contenido antiguo

Ahora nos ocuparemos del contenido antiguo. Si antes teníamos una página llamada pagina1.php, ahora podemos crear una página en WordPress con el mismo contenido que la página original y asegurarnos de que su “slug” o enlace sea “pagina1″. Ahora debemos asegurarnos de que los enlaces entrantes, ya sean de otras webs o de motores de búsqueda, encuentren esa página y que además les avisemos del cambio para que sea re-indexada correctamente.

Para ello vamos a editar nuestro archivo .htaccess en el directorio raíz y antes de las reglas de permalinks de WordPress, vamos a añadir:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^/pagina1.php [NC]
RewriteRule $ /pagina1/ [L,R=301]

Esta regla hace una redirección externa a /pagina1/ cuando alguien intenta acceder a /pagina1.php dando un código 301 (Movido permanentemente) y para de analizar reglas (L). Esta regla se podría mejorar mediante expresiones regulares para detectar todas las páginas, pero eso ya se sale del alcance de este artículo.

Y creo que eso es todo, aunque hay muchos más detalles en los que no he entrado. Si alguien muestra interés puede que amplíe la serie.

Actualizando a WordPress 2.3.1

Jueves, 08 nov '07

Esto va a doler un poco. Tened paciencia…

ACTUALIZACIÓN: Ya está todo más o menos en su sitio. Hemos tenido unas cuantas bajas y esta vez no ha sido culpa de WordPress. Algunas de mis entradas han perdido sus ‘tags’. Cuando he restaurado una copia de seguridad he visto que las tags tampoco estaban ahí. El backup del mes pasado lo borré hace una semana haciendo limpieza. Nunca aprendo.  En fin, que habrá unas cuantas entradas que no tendrán etiquetas hasta que me ponga a ello.

Cada vez odio más las actualizaciones de WordPress…

Pequeños cambios

Domingo, 10 jun '07

He introducido algunos cambios en el blog. Básicamente he reorganizado la barra lateral que se había ido llenando de más y más cosas. He quitado el calendario, porque debería ser suficiente con el archivo dinámico si queréis ir atrás en el tiempo. También he quitado alguno de los bloques de enlaces a otras secciones y he sustituido las búsquedas con la API de Google (que no dejan de dar problemas con cada actualización) por la búsqueda de WordPress.

También he cambiado algunas páginas que daban error al validar.

Todo debería ir un poco más suave ahora.

Bug en WordPress 2.2

Sábado, 09 jun '07

Parece que a los desarolladores de WordPress se les ha escapado un bug que afecta a la función de “Trackback” o de notificación a los blogs que referimos en nuestras entradas.

Se trata de un error en la función “template_rdf()” que se ejecuta dentro del loop después de cada entrada y que añade metadata que apunta a la dirección de trackback para cuando nuestra entrada es referenciada en otro blog. Actualmente dicha información no aparece en la página debido a un error en la línea 242 del archivo “comment-template.php” dentro de la carpeta “wp-includes”.

A falta de parche oficial, podemos arreglarlo cambiando:

if (strpos($_SERVER['HTTP_USER_AGENT'], 'W3C_Validator') !== false) {

por

if (strpos($_SERVER['HTTP_USER_AGENT'], 'W3C_Validator') == false) {

Ya sé que WordPress está desarrollado por un equipo de personas que dan su tiempo y conocimientos a la comunidad de forma totalmente altruista, pero creo que este es uno de esos fallos que no deberían colarse. El error se descubrió hace unas tres semanas y no ha debido considerarse esencial, porque todavía no hay una respuesta oficial.

A mí me encanta WordPress, pero ya son demasiados los bugs sin resolver y los cambios de versión a versión que rompen los plugins y las plantillas. Es esto algo inherente a un proyecto tan grande y popular? O por el contrario se debe a la base del código ya tiene cierta edad?

Vuestra opinión?

Bloguear sobre la marcha

Martes, 23 ene '07

En casa, en tu ordenador, cada uno se va habituando a usar unos y otros programas. Cuando sales de casa, o cuando (como me pasa a mi ahora) no tienes tu ordenador, tienes que buscar nuevos caminos.

No suelo postear imágenes en el blog y cuando lo hago, no me importa editar el HTML a mano para conseguir que todo quede exactamente donde a mi me gusta. Pero ahora las cosas han cambiado; no tengo una herramienta que me permita escribir un post con foto incluida y que lo haga como yo quiera. He estado probando un par de ellas a lo largo de hoy (como flock o ecto) e incluso usando el sistema de publicación por mail automático de flickr, pero no acaba de quedar como a mi me gusta.

Al final lo que estoy haciendo es publicarlas con flickr y luego entrar con wordpress a editar la entrada. Esto es lo que menos dolores de cabeza ha provocado. Sí, pero es un coñazo…

Otros de los cambios a los que me he visto obligado: leer el correo por webmail para compartir el ordenador cívicamente con Meli (PORFAVOR: mandadme mail en texto plano, nada de html), leer las noticias con un agregador web… Pero en general nos hemos adaptado bastante a la vida nómada.

Si alguien conoce algún programa libre que facilite la labor de postear en WordPress y subir fotos a flickr en un único paso, dejad un comentario, porfa.

WordPress 2.0

Martes, 10 ene '06

He actualizado el blog a WordPress 2.0. Algunos habréis notado cosillas raras (entradas antiguas que volvían a aparecer como no-leídas en vuestros agregadores, por ejemplo).

La actualización ha sido sencilla y sin problemas. He tenido que actualizar un par de plugins que daban problemas, pero las versiones actualizadas funcionan bien con 2.0. Lo ideal con las actualizaciones es que vosotros no sepáis de qué hablo ni veáis ningún cambio. Eso significa que todo va OK.

Hoy he actualizado mi servidor a Php 5. Esta nueva versión tenía algo de fama de SP2 en el mundillo web, debido a que se habían realizado algunos cambios que podían romper programas escritos para versiones anteriores.

Si algo malo puede pasar, pasará.

El blog y algunas secciones de la página han estado caídos durante un rato. El primer problema (el más importante) que ha surgido ha sido

Fatal error: Only variables can be passed by reference in /var/www/blog/wp-includes/gettext.php on line 66.

He encontrado nuevas versiones del archivo gettext.php con el mismo problema, e inclso parches que solucionaban parcialmente el problema pero que generaban otros errores leves. Al final he encontrado un post de ayuda en la web de WordPress (Localization Problems « WordPress Support), que sugería sustituir
return array_shift(unpack('V', $this->STREAM->read(4)));
que anda por la línea 66 de gettext.php (en la carpeta /wp-includes/), por
$tmp = unpack('V', $this->STREAM->read(4));
return array_shift($tmp);

Y hacer lo mismo con la función que la sigue (sólo varía la ‘V’, que en este caso es ‘N’).

Luego he visto más problemas en funciones mías, pero eran bugs tontos de mi código (p. ej por usar $HTTP_GET_VARS cuando las tengo desactivadas; solución: $_GET).

Luego he tenido un problema misterioso y dificil de reproducir, pero mis sospechas caían en el plugin wp hashcash, que sirve para evitar el spam de los comentarios. Al desactivarlo he visto que todo iba más o menos bien. Hay una versión nueva que intentaré instalar mañana.

Y lo último que me ha fastidiado PHP 5 es la búsqueda con la API de Google, debido a dos cosas: En primer lugar la biblioteca nusoap.php ha quedado obsoleta (creo) y en segundo lugar, PHP 5 incorpora su propio módulo SOAP. Por suerte he encontrado un excelente artículo en francés, Api Google et SOAP, que detalla una API con ejemplos. Sólo he tenido que cambiar las funciones y llamadas en mi script.

Espero que esto se traduzca en mayor estabilidad y rapidez, porque ha sido una pequeña pesadilla.

WordPress

Viernes, 01 jul '05

[Sin que sirva de precedente, este post está en Inglés]

I’ve posted this at the WordPress forum. Thought it would be interesting to have a local copy here.

If only 4 files are changed between two releases, why force everyone to reinstall the whole thing? Why not a patch or just a zip of the affected files? This is a must! I know upgrades are reasonably fast, but it’s just not logic to download the whole package every single time (about every two weeks…), and have to manually delete a folder, decompress, etc.

Point two: I hope the next major release is tested a lot more! WordPress is loosing credit due to all these minor updates and bugs. I’ve recently read this in a blog’s comment: “Even Microsoft doesn’t release a new OS each time they find a bug that is fixable with a simple patch”. I’d be worried if an open source project I worked on is compared to Windows.

Point three: What’s all that “(…)but an important security issue was brought to our attention which required an update for our users. The problem is not yet public but you should update your blog as soon as possible…” This is amazing! I thought open source meant open mind. You just can’t give something to your users and tell them to install it without telling them why. I deserve to know what I am installing, what has changed and more important: why! I thought only commercial software companies did Security Through Obscurity. Come on, the WordPress team can do better. We’ve seen you do better!

Besides all the above, I know that WordPress is a community effort and I appreciate the time each member dedicates to make WordPress the best CMS ever. This shouldn’t be taken as a rant against WordPress developers, just as a little “hey, let’s not forget that we know how to do things better”, ok?

EDIT: If anyone wants to check the answers I’ve recieved, go to http://wordpress.org/support/topic/38000

Primera encuesta a lectores

Jueves, 09 jun '05

Aprovechando la afluencia de tráfico que hay por aquí últimamente gracias a los premios 20 Blogs (hemos pasado de 2,5 a unos 6 lectores !!!), he decidido consultar vuestra opinión sobre un par de cambios que tengo en mente para el Blog.

El primero de ellos es el nombre de la categoría ‘General’. Ese es el nombre que le da por defecto WordPress y ahora que estoy categorizando cada entrada con ‘tags’, pues la verdad es que ‘general’ tiene el mismo valor semántico de un pepino. La primera pregunta es: ¿cómo llamarías a la categoría por defecto del blog? ¿”Revenadas”? ¿”Revenidas”? Tiene que ser original y práctico (y tener algún significado relacionado con el blog).

La segunda pregunta es más libre. El tema es “Diseño”. ¿Cómo véis reven.org? ¿Qué cambiarías? ¿Algo no se ve bien o se podría ver mejor? A la hora de contestar esto es imprescindible que indiquéis qué navegador utilizáis.

Y eso es todo. Sed buenos y contestad todos. Que os vigilo…

Información addicional

reven.org

Web, diseño, proyectos, ideas y muchas otras cosas.

Estás viendo todas las entradas marcadas con el tag 'wordpress'.

Suscripción

feed icon Si quieres leer reven.blog en tu agregador de feeds, accede al feed. (¿Qué es esto?)

Publicidad

Anúnciate en reven.org

Estadísticas

Actualmente hay 258 entradas y 378 comentarios, repartidos en 20 categorías y marcados con 408 tags.