Nuevo plugin para WordPress: CodeMirror for Post Editor

CodeMirror for Post Editor es un plugin para WordPress que te permite escribir código en tus posts de forma más cómoda y sencilla.

Aunque una de las grandes ventajas de WordPress es que sus herramientas de edición te pueden permitir dedicarte tranquilamente a escribir sin necesidad de tocar una línea de código, por diversos motivos a veces es necesario utilizar algo un poco más complejo que la pestaña de HTML.

Si bien los quicktags ayudan, en más de una vez terminé necesitando solamente un buen editor de código, que me permitiera hacer dos cosas fundamentales que el editor actual no permite:

  • Poder usar el tabulador para indentar
  • Resaltar las etiquetas HTML

Obviamente, escribir en un editor, pegar y refrescar cada vez que se hace un cambio es poco menos que ideal, por lo que cuando encontré CodeMirror me pareció que la solución ideal sería integrarlo en WordPress.

Existen varios plugins que hacen justamente eso, pero sólo para el editor de temas; ninguno para el editor de posts… por lo que obviamente me dí a la tarea de hacerlo yo mismo. Hace ya varios días está en el repositorio de plugins de WordPress, y aunque es una versión muy preliminar, es lo suficientemente completa como para poder utilizarla en escribir esta misma entrada.

Descárgalo desde el repositorio de WordPress: CodeMirror for Post Editor

Antispambot Shortcode

Insertar direcciones de e-mail en texto plano por lo general no es muy buena idea, pero hay ocasiones en las que por uno u otro motivo tenemos que insertar un correo electrónico de contacto en el cuerpo de un post o una página.

Hace mucho tiempo que WordPress incluye una útil función que, si bien no es una protección al 100%, otorga una buena posibilidad de evitar que tu bandeja de entrada se llene de basura. Como por lo general no podemos ejecutar código PHP en el cuerpo de una entrada, me pareció una buena idea crear un simple shortcode para tenerla más a mano.

Para usarla puedes copiar este código en el archivo functions.php de tu tema, o bien descargarla desde GitHub, guardarla en tu carpeta de plugins y luego activarlo.

<?php
/*
Plugin Name: Antispambot Shortcode
Plugin URI: http://gist.github.com/371875
Description: A simple plugin to use WordPress' antispambot() function in posts and pages
Version: 1.0
Author: Felipe Lavín Z.
Author URI: http://www.yukei.net
*/

function antispambot_sc($atts, $content = ''){
	extract(shortcode_atts(array(
		'email' => '',
		'link' => ''
		), $atts));
	if ( empty($link) ) {
		$out = '<a href="mailto:'. antispambot($email) .'">'. antispambot($email) .'</a>';
	} else {
		$out = '<a href="mailto:'. antispambot($email) .'">'. $link .'</a>';
	}
	return $out;
}

add_shortcode('antispambot', 'antispambot_sc');
?>

La utilización, como cualquier shortcode, es bastante sencilla:

  1. Para enlazar a una dirección de mail, y que el mismo e-mail sea el texto del enlace, debes usar [antispambot email="tumail@correo.com"]
  2. Para enlazar a una dirección de mail, y utilizar otro texto como enlace, debes usar [antispambot email="tumail@correo.com" link="escríbeme a mi correo"]

Algo sencillo, pero (espero) útil

Tab Catalog: “exposé” para Firefox

Un plugin para mostrar tus pestañas al estilo de Exposé en Firefox.

Desde que OSX introdujo Exposé, la idea ha sido intensamente imitada —de hecho, en Linux Compiz incluye un plugin llamado Scale que se ha convertido en uno de mis favoritos.

En una entrada en el blog de Tim Ferris, Matt Mullenweg recomienda una extensión para Firefox que cumple un propósito parecido: Tab Catalog.

Tab Catalog

Puedes instalar Tab Catalog desde el sitio de extensiones para Firefox.

Traducción para wordTube 1.6

wordTube es un excelente plugin para reproducir y administrar archivos multimedia (video, audio) en WordPress. Hace tiempo había contribuido con la [traducción al español del mismo->wpTube (traducción al español)], pero dado que su desarrollo sigue avanzando, habían varios textos sin traducir… hasta ahora.

Descargar: Traducción de wordTube al español

La instalación, como siempre, es sencillísima: basta con extraer los archivos en el directorio languages del plugin (wp-content/plugins/wordtube/languages).

Esta traducción está hecha para la presente versión del plugin (1.6), pero es probable que también funcione con versiones venideras.

PHPSpeedy: mejora el tiempo de carga de tu sitio

PHP Speedy Hay muchas formas de mejorar el tiempo de carga de una página; algunas de ellas son:

  • realizar menos peticiones al servidor
  • agregar una cabecera de expiración muy lejana en el futuro
  • comprimir los componentes de la página
  • “minificar” tu javascript, css, html

PHP Speedy es un script para PHP que realiza estas cuatro tareas automáticamente. Está disponible como clase (para utilizar en cualquier sitio/página que soporte PHP) o como plugin para WordPress —he estado probando este último en mi tumblelog y el resultado ha sido bastante satisfactorio.

Si quieres utilizar el plugin para WordPress, debes asegurarte que tu theme incluya el hook <?php wp_head(); ?> antes de </head>. Además, revisa que todo lo que tenga que ver con JavaScript siga funcionando: el plugin combinará y “minificará” tus scripts y los enlazará en el punto donde se encuentre <?php wp_head(); ?>. Si tienes código que necesita de librerías que se hayan invocado anteriormente, puedes solucionarlo simplemente moviendo tu código más abajo de <?php wp_head(); ?>.

wordTube (traducción al español)

wordTube es un plugin que permite insertar archivos de video, sonido e imágenes. Adjunto el archivo de traducción para poder utilizarlo en español

Hace algún tiempo, Andrés Nieto posteaba sobre wordTube, un plugin para WordPress que permite integrar archivos multimedia a tus posts.

La verdad es que el plugin es bastante completo, pero una de sus desventajas era estar disponible solamente en inglés (y alemán)… hasta ahora, puesto que gracias al [sistema de localización de WordPress->Localización con WordPress] y poEdit he creado su necesaria traducción al español.

Descargar: Traducción de wpTube 1.40 al español

Actualización: [Traducción para wordTube 1.6->]

Como siempre, hacerla funcionar es sencillo: primero que nada debes bajar el plugin e instalarlo de acuerdo a sus instrucciones, y luego descomprimir los archivos de la traducción en el mismo directorio del plugin: http://dominio.com/wp-content/plugins/wordtube/.

Esta traducción ha sido creada para la versión 1.4 del plugin, pero debería funcionar también con las venideras —aunque es probable en éstas algunos textos aparezcan sin traducir.

Para finalizar, una muestra de lo que puede hacer el plugin: tres videos de uno de mis discos favoritos, [Ladies and gentlemen we’re floating in space, de Spiritualized->Spiritualized – Ladies And Gentlemen We’re Floating In Space (1997)]

[MYPLAYLIST=2]

El video de “Ladies and Gentlemen…” fue creado por besimhat

Subscripciones a Comentarios (III) – Subscribe to Comments

Este plugin para WordPress representa una excelente alternativa para dar a tus visitantes la opción de seguir las conversaciones alrededor de una entrada.

Subscribe to Comments

Carteros Esta alternativa se trata de un plugin para WordPress que ya debería ser considerado un clásico. Con éste, los usuarios que lo deseen tendrán la opción de recibir los nuevos comentarios a una entrada a través de correo electrónico. Adicionalmente, tienen la opción de poder gestionar sus suscripciones a los comentarios a través de una interfaz de administración bastante sencilla, a la que pueden acceder a través de un enlace que va incluido en los mensajes que notifican sobre nuevos comentarios. Además, cuenta con la opción de que un usuario se pueda suscribir sin necesidad de comentar un artículo.

Continue reading “Subscripciones a Comentarios (III) – Subscribe to Comments”

WordPress es todo oídos

El equipo de WordPress se abre a las sugerencias y críticas… ¡y yo no quiero un bloatware!

Esto es algo rarísimo: dos posts en el blog de desarrollo de WordPress durante una misma semana.

Hoy se anuncia la creación de dos nuevas secciones en el sitio oficial de WordPress, ambas están destinadas a escuchar a sus usuarios en una forma en que nunca antes lo habían hecho. Antes, para reportar un problema o solicitar alguna nueva característica, debías crear un nuevo ticket en el sitio de desarrollo de WordPress, un proceso no muy amigable para un usuario común; a partir de ahora, y gracias a Kvetch, cualquier usuario tiene un espacio para quejarse de cualquier cosa con la que puedas estar en desacuerdo en el mundo de WordPress, mientras que en Ideas podrás compartir tus más salvajes deseos sobre WordPress con el mundo, y también votar por las ideas de otras personas.

Solamente porque lo que hemos hecho ha funcionado en el pasado no significa que sea lo mejor para el futuro. Tenemos que tomar una “auto-mirada” crítica a las suposiciones que tenemos sobre nuestro proceso de desarrollo y sobre el mismo WP. El próximo lanzamiento, que ha tenido un larga espera, es el momento perfecto para enfocarnos en el ingrediente secreto de WP… Tú [Ustedes].

Si pudieras agregar cualquier cosa al mundo de WordPress, ¿qué sería? Si pudieras nombrar la cosa que más te frustra de WP, ¿qué sería?

¿Oportunidad o amenaza?

Cuidado. Creo que este anuncio puede transformarse en un arma de doble filo: si bien la idea de conectarse más con la base de usuarios me parece admirable, expresar que las ideas mejor evaluadas serán incluidas en una próxima versión podría llegar a atentar contra el proceso de desarrollo:

  1. En primer lugar, creando expectativas poco realistas sobre las nuevas características que se podrían incluir, lo que genera presión sobre un equipo formado al menos en parte por personas que no están dedicadas exclusivamente al desarrollo WordPress (algunos de los cuales incluso ya han reaccionado a propósito de la carga que supondría el [ciclo de desarrollo->Un ciclo de desarrollo para WordPress] propuesto por Mullenweg)
  2. En segundo lugar desviando la atención desde el desarrollo de un núcleo sólido y estable lo que podría aumentar la posibilidad de encontrarnos con bugs a poco tiempo del lanzamiento de nuevas versiones (como ocurrió con 2.0.6 y el “pequeño problema” con FeedBurner), errores de seguridad, etc.

Viendo las “ideas” propuestas es posible darnos cuenta de que la mayoría de los requerimientos están enfocados a integrar funciones que actualmente no son parte del núcleo sino que vienen agregadas mediante plugins: tags, instalación de un click para plugins y themes, “retos” para identificar comentarios humanos… o podrían ser manejadas por plugins o widgets (por ejemplo, un sistema de gestión de enlaces a páginas tipo menú que fácilmente podría ser parte de un widget de texto).

Creo que el equipo de WordPress deberá optar entre un sistema repleto de características (lo que me recuerda aquella pesadilla [bloatware->@en.wiki] que es [PHP-Nuke->@wiki]) o un desarrollo orientado a ofrecer una solución estable, segura, sólida.

Ochenta por ciento de los usuarios ocupa un veinte por ciento de las características de un software, ¿no? WordPress tiene una sólida arquitectura para plugins y una activa comunidad de personas que continuamente están creando agregados para los más diversos gustos. No se trata de sobrevalorar la simplicidad, sino de enfocarse en las “características críticas” y hacer de la robustez del software una característica importante, a la vez que manteniendo la opción de agregar cuanto haga falta a cada usuario en particular.

Mi opción está clara: prefiero un software sólido, y que los plugins hagan el resto.

Este-estilo (un plugin para WordPress)

Este plugin permite agregar información de estilos a posts individuales de manera muy fácil

En varias oportunidades me he encontrado con la necesidad de crear una clase (class) para utilizarla solamente en un post/página, lo que es bastante dificultoso en WordPress ya que no existe una opción “de fábrica” para agregar información al elemento head de nuestros documentos. La única opción que quedaba era meter mano a la hoja de estilos mediante el útil-pero-limitado editor al que tenemos acceso desde el panel de administración.

Ahora esa molestia se acabó gracias a This Style, un utilísimo plugin para WordPress que permite agregar estilos de CSS a entradas individuales utilizando los “campos personalizados”: una vez instalado el plugin, puedes ocupar la clave this_style para agregar información sobre estilos a tus posts muy fácilmente.

La instalación es como cualquier plugin, pero luego de activar es necesario editar el archivo header.php del theme que estés ocupando y agregar una línea de código a la cabecera del documento (en el <head>):

<style type="text/css"><?php echo tstyle_css_script(); ?></style>

Eso es todo.

Make Link, extensión para Firefox

Una extensión imprescindible, especialmente si tienes un blog y te gusta documentar tus posts con muchos enlaces… y si no, ahora puedes hacerlo con una fracción del esfuerzo

Hoy he dado con una de esas extensiones para Firefox de las que siempre has soñado tener: se trata de Make Link, un agregado muy sencillo pero terriblemente útil que permite nada más y nada menos que crear enlaces a través de una entrada en el menú contextual (ese que aparece al hacer click con el botón secundario del mouse).

Desde el momento en que la he encontrado he sabido que se convertirá en una de esas herramientas imprescindibles, sobre todo para bloggear.

En alguna oportunidad mencioné a Copy URL+, una extensión que permitía copiar el título de la página junto a su dirección, lo cual me resultaba bastante bien por un tiempo… hasta que actualicé a Firefox 2, ya que entonces dejó de funcionar.

Make Link no solamente hace exactamente lo que estaba buscando, sino que además es bastante flexible, puesto que permite crear otras combinaciones para generar, por ejemplo, enlaces en el formato de la Wikipedia, BBCode, Textile, Markdown, etc.

Utiliza cuatro variables: %TEXT%, %URL%, %TITLE%, %INPUT%… bastante obvias. Si necesitan más información, chequeen la documentación, donde está todo muy bien explicado.