Ulzurrun de Asanza i Sàez

Tag: WordPress 3.0

WordPress 3.0.1 ya disponible

Desde anteayer está disponible la versión 3.0.1 de WordPress, que corrige 51 bugs no demasiado críticos. La única novedad más interesante para los desarrollares es que se ha añadido la función unregister_nav_menu(), que como su nombre indica, permite desregistrar un menú.

Podéis actualizar directamente desde el Panel de Administración o descargar la nueva versión.


Elimina el nuevo filtro de WordPress 3.0

Con la llegada de WordPress 3.0 se ha introducido un nuevo filtro que no aparecía documentado en el codex: se trata de un filtro que reemplaza la palabra “WordPress” por “WordPress“. Esto en principio resulta inofensivo, aunque algo molesto en algunos casos, sin embargo puede provocar algunos problemas con nombres de archivos y URLs, ya que el filtro se aplica a los títulos de los artículos y el contenido tanto de los mismos como de los comentarios.

Este nuevo filtro está definido en el archivo wp-includes/default-filters.php (sobre la línea 90):

[php]
// Format WordPress
foreach ( array( ‘the_content’, ‘the_title’, ‘comment_text’ ) as $filter )
add_filter( $filter, ‘capital_P_dangit’ );
[/php]

La función capital_P_dangit() en cuestión está en el archivo  wp-includes/formatting.php (sobre la línea 2828):

[php]
/**
* Forever eliminate "Wordpress" from the planet (or at least the little bit we can influence).
*
* Violating our coding standards for a good function name.
*
* @since 3.0.0
*/
function capital_P_dangit( $text ) {
return str_replace( ‘WordPress’, ‘WordPress’, $text );
}
[/php]

Como podéis ver, la función reemplaza cualquier aparición de “WordPress” por “WordPress“, dando igual que esté en la URL de una imagen o de un enlace, en una cita, en parte de un código (en PHP la variable $Wordpress y $WordPress son variables distintas), lo que puede hacer que algunos ejemplos de código estén mal.

Eliminar el filtro es muy sencillo, basta con añadir al archivo functions.php de nuestro theme (o crear un plugin con el siguiente código):

[php]
foreach ( array( ‘the_content’, ‘the_title’, ‘comment_text’ ) as $filter )
remove_filter( $filter, ‘capital_P_dangit’ );
[/php]

Con esto el filtro queda eliminado y volvemos a tener la libertad de escribir WordPress como nos plazca. Yo por mi parte ya he eliminado el filtro en Sumolari.com.


WP Carousel 0.5.3

¿Os acordáis del bug con el guardado AJAX que medio arreglé con un sistema de guardado híbrido? Pues bien, gracias a la colaboración de Joel he encontrado una posible solución definitiva al problema, que no sólo afectaba al guardado AJAX, sino también al Modo de Integración Externa (aunque no se había reportado). La solución es algo tosca, pero parece eficaz: si tras buscar la ruta al archivo wp-blog-header.php, WP Carousel no encuentra la ruta correcta, se prueba a usar la ruta “../../../”, que en teoría debería de ser válida en cualquier caso, si esta ruta es correcta, se procede con el guardado AJAX, si es incorrecta, se procede con el guardado alternativo.

Por el momento parece que este método funciona, ya que aquellos usuarios que usaban el guardado AJAX sin problemas seguirán usándolo como hasta ahora, mientras que aquellos que tenían problemas usarán la ruta “../../../” (ruta que de hecho es la que obtiene en mis pruebas el método usado en la versión 0.5.2). Si ni aún así se encuentra la ruta, el plugin utilizará el guardado no AJAX, que aunque no es ni tan rápido ni tan cómodo como el AJAX, guarda los cambios.

WP Carousel 0.5.3 ya está en WordPress.org, y en unos minutos os aparecerá la actualización en el Panel de Administración de WordPress. ¡Recordad que WP Carousel 0.5 sólo es compatible con WordPress 3.0 (y posteriores)!


WP Carousel 0.5 requiere WordPress 3.0

Al liberar WP Carousel 0.5 no revisé los requisitos mínimos en cuanto a la versión de WordPress, ya que realmente tan sólo había cambiado de lugar las funciones que ya usaba anteriormente, así que no le di la más mínima importancia. Sin embargo, WP Carousel 0.5 no es compatible con versiones anteriores a WordPress 3.0. En esta versión de WordPress añadieron un estupendo sistema que avisa a los desarrolladores cuando usamos una función obsoleta. WP Carousel 0.5 utilizaba dos funciones que estaban marcadas comos obsoletas: un parámetro de la función encargada de mostrar los enlaces de las páginas de opciones y una función que sirve para mostrar el enlace a la encuesta una única vez a los usuarios.

Para ser exactos, en cuanto a los enlaces del Panel de Administración, usaba un valor numérico para los permisos de los usuarios, en lugar del nombre del tipo de cuenta requerida. Por lo que respecta a la segunda función, se trata de una que permite asociar una pareja de índice-valor a cada usuario. El uso es muy sencillo: si el usuario que ha accedido a la página no tiene cierto valor en cierto índice (que sólo es usado por WP Carousel), se le muestra el mensaje para participar en la encuesta y se modifica el índica para que sí que tenga dicho valor (de modo que ya no volverá a ver el mensaje de la encuesta). La idea era ofrecer a los usuarios una forma de enviarme con facilidad sus opiones y sugerencias (que recordad, siempre son bienvenidas), pero tampoco molestar y mostrar un mensaje aún después de haberse hecho lo que el mensaje pedía.

En estos momentos ya están actualizados los requisitos en la página del plugin y las combinaciones de WP Carousel 0.5 con versiones de WordPress anteriores a la 3.0 están marcadas como incompatibles. La solución que yo recomiendo es actualizar a WordPress 3.0, ya que cada vez serán más los plugins que hagan uso de funciones que se han añadido en esta versión de WordPress.

Disculpad las molestias y gracias a todos por reportar los errores que habéis encontrado hasta ahora.


Ya está disponible WordPress 3.0

Ya está disponible para su descarga la versión final de WordPress 3.0. Las novedades más importantes ya las he ido comentando por el blog, pero a modo de resumen (y saltándome muchísimos cambios de esta versión) son:

Os dejo a continuación el vídeo de presentación de WordPress 3.0.

Como de costumbre, podéis ver el anuncio en el blog oficial o descargar directamente WordPress 3.0.


Descarga WordPress 3.0 RC3

Desde el sábado pasado está disponible la tercera RC de WordPress 3.0. Cada día queda menos para que vea la luz la versión final. Los cambios entre esta RC y la anterior son casi en la totalidad bugs detectados en versiones anteriores arreglados. Esta será seguramente la última versión candidata antes de la versión final, así que es más que probable que antes de julio se libere WordPress 3.0.

Podéis leer el anuncio oficial o descargar WordPress 3.0 RC3.


Descarga WordPress 3.0 RC2

Vía AyudaWordPress descubro que ya está disponible la segunda RC de WordPress 3.0, que a pesar de no haber sido anunciada oficialmente, aparece en el archivo de descargas y se puede descargar sin problemas.

Las novedades de WP Carousel 0.5

Nueva UI de WP Carousel 0.5

Tras liberar la versión 0.4 de WP Carousel me di cuenta de que había algunas cosas que mejorar en WP Carousel, así que hice una pequeña lista y me propuse dedicarle el tiempo que fuese necesario para poder implementarlas en WP Carousel 0.5. El primer problema que encontré es que la interfaz de WP Carousel se hacía algo pesada (siempre recargando la página y teniendo que esperar a que se cargasen los mismos elementos una y otra vez, junto con tener que rellenar algunos campos estúpidos como el de orden, etc).

Nueva UI Drag & Drop
Añadiendo (arriba) y eliminando (abajo)

Así pues la principal novedad para los usuarios es una nueva interfaz para administrar los carruseles. Ya no habrá más tablas ni tener que seleccionar entre varias listas de tipos (cosa que causaba un fallo que no he podido solucionar) o no poder editar el contenido una vez añadido. La nueva interfaz es fundamentalmente Drag & Drop (arrastrar y soltar): arrastras lo que quieres añadir al carrusel (una categoría, un artículo, una página, etc) y lo sueltas en la posición que quieres que ocupe. Si quieres eliminarlo del carrusel, lo arrastras a la zona de borrado y listo. Más fácil, más rápido y más potente. Además con este nuevo sistema se podrá editar el contenido del carrusel en cualquier momento. Otra de las mejoras es que el proceso de guardar los contenido se hace ahora mediante AJAX, con lo cual tampoco es necesario tener qeu cargar de nuevo la página: se espera a que aparezca el mensaje avisándonos de que se ha guardado todo correctamente y listo.

Para los desarrolladores estoy preparando una nueva API (de momento sólo tengo algunos esquemas y conceptos, ya que me he centrado hasta hoy en la nueva interfaz). La idea es que no hay motivo para limitar el tipo de contenido que se puede añadir al carrusel. ¿Por qué sólo permitir categorías, páginas y artículos en lugar de permitir cualquier cosa? Obviamente yo sólo no puedo crear scripts que permitan a WP Carousel añadir a los carruseles fotos de Facebook, Tweets de Twitter, fotos de Flickr, etc, porque en cuanto se actualizasen las APIs de cualquiera de estos servicios, WP Carousel se quedaría desfasado y seguramente no podría actualizarlo a tiempo. Sin embargo hay una solución: la nueva API permitirá a cualquiera con conocimientos de PHP crear nuevos tipos de contenidos para WP Carousel, que funcionarían a modo de plugin.

Guardando contenido en WP Carousel 0.5
Guardando (abajo) y guardado (arriba)

Básicamente el programador crearía un archivo con las funciones para obtener la URL de la imagen, la URL de la página, el nombre de la página y la descripción para el carrusel, a continuación WP Carousel cargaría este archivo y añadiría un nuevo tipo de contenido a la lista de contenidos para añadir al carrusel. Cuando fuese necesario obtener la URL de la imagen o cualquier otro dato relacionado con este nuevo contenido, WP Carousel llamaría a la funcion correspondiente creada por el programador. Se podrían considerar como plugins para WP Carousel, aunque más fáciles de desarrollar que un plugin normal (serían de complejidad similar a los themes de WP Carousel) y necesitarían WP Carousel 0.5 para funcionar.

Estas son las dos principales novedades de WP Carousel 0.5, pero no son las únicas. También quiero darle uso a la pestaña de ayuda de WordPress, donde aparecerán una introducción a WP Carousel y algunas preguntas frecuentes. WP Carousel también soportará de forma nativa las tags de WordPress y los autores, es decir, que a partir de ahora se podrán añadir a los carruseles categorías, páginas, artículos, contenidos personalizados, tags, autores y contenidos extra definidos por plugins. Por último, dado que WordPress 3.0 incluye un nuevo theme por defecto, WP Carousel 0.5 incluirá un theme especialmente diseñado para ser usado junto con el nuevo theme por defecto de WordPress.

Actualmente la versión 0.5 está todavía muy verde. La nueva interfaz está bastante avanzada y el plugin permite añadir cualquier contenido que estuviese sorpotado en WP Carousel 0.4 (categorías, páginas, artículos y contenido personalizado). Sin embargo la nueva API no está ni comenzada, tan sólo es un boceto escrito en un papel, el nuevo theme está aún por diseñar y el contenido de la pestaña de ayuda está por escribir (obviamente tendré que acabar WP Carousel 0.5 antes de escribir la documentación). También quedan por implementar las tags y los autores como contenidos admitidos por defecto por WP Carousel, y me gustaría crear uno o dos plugins de demostración para explicar cómo usar la nueva API. Vamos, que actualmente WP Carousel 0.5 es WP Carousel 0.4 con una nueva interfaz.

Por cierto, WP Carousel 0.5 es compatible con WP Carousel 0.4: el contenido generado con la versión 0.4 funciona en la 0.5 (ojo, que al revés no) y los themes se crean de la misma manera (un theme para WP Carousel 0.4 funciona en WP Carousel 0.5 y viceversa).


Ya disponible WordPress 3.0 RC1

Ya se puede descargar la primera RC de WordPress 3.0 (que por cierto, cumple 7 años). Entre otras mejoras, ya está acabado el nuevo gestor de menús y se ha cambiado algo el aspecto del Panel de Administración (aunque, sinceramente, me gustaba más el de la versión 2.9). A pesar de todo, aún hay unos cuantos bugs reportados por solucionar.

Cada vez queda menos para la versión final de WordPress 3.0, que estará disponible o a finales de este mes o a principios de junio. Mientras tanto, podéis descargar y probar la RC, aunque no os recomiendo usarla más que con fines de prueba.


Ya disponible la segunda Beta de WordPress 3.0

Desde hace un par de días está disponible la segunda Beta de WordPress 3.0,que nos sitúa más cerca de la versión final. Los desarrolladores nos recomiendan probar la interfaz del gestor de menús, que ha sido revisada desde la Beta anterior, y los cambios realizados en el exportador e importador de WordPress.

Podéis descargar la Beta desde aquí.