Posts Tagged ‘wordpress’

Plugin de WordPress para tener un blogroll dinámico

Sábado, Diciembre 26th, 2009

Estoy probando en marinerosbouzas.com un plugin para wordpress llamado SBS Blogroll bastante chulo que te permite incluir en tu blog un blogroll dinámico. Es decir en lugar de tener en la barra lateral una lista de enlaces estática a los blogs que te gustan pasarás a tener una lista con el título de las últimas entradas que haya habido en esos blogs. El plugin tiene la opción además de

  • Añadir el favicon a cada entrada enlazada que aparezca en tu blog
  • Seleccionar el número total máximo de entradas que habrá y el número máximo de entradas que pueden provenir de cada blog en tu lista
  • Desplegar la fecha de cuando fue escrita la entrada
  • Personalizar el estilo de como se muestran las entradas mediante css

Es un plugin sencillito pero potente que nos permite evitar el uso de servicios externos como feevy.

La única pega que le veo, es que por lo que he entendido revisando el código del plugin,  lo que hace es cada vez que se muestra nuestro blog a un usuario se itera a través de toda la lista de blogs que tengamos, si se ha cumplido un tiempo de cache fijado por nosotros “va” al blog de destino a buscar la información, si no la extrae directamente de la cache, parsea la información recibida (esté en cache o no) para extraer el título, fecha, favicon, … y una vez tiene los datos de cada entrada los muestra. Todo este proceso puede consumir bastantes recursos y ralentizar nuestra página. Lo mínimo para optimizar el plugin es fijar un tiempo de cache en las opciones de 43200 segundos (12 horas) dado que poca gente actualiza en realidad más de 2 veces al día. Es decir, lo que hacemos con esto es indicar al plugin que sólo compruebe actualizaciones en los blogs que tenemos en la lista cada 12h en lugar de los 10′ que pone el plugin por defecto.

Como siempre, si tenemos muchas visitas o muchos plugins es conveniente que instalemos algún plugin específico para realizar el cacheado.

Otro pequeño pero de este plugin es que la versión actual tiene un pequeño bug que hace que el favicon sólo se muestre cuando indicamos que se muestre también la fecha. Ya lo he corregido y he mandando un patch (bastante sencillito) al autor por lo que espero que salga pronto una nueva versión.

Si no podéis esperar a la nueva versión, instalar el plugin de la forma habitual y luego sobreescribir con este archivo el que que haya en la carpeta wp-content/plugins/sbs-blogroll/ de vuestra instalación de wordpress. (para poder bajar el archivo hay que hacer click con el botón derecho sobre el enlace y darle a guardar como)

Actualización 28/12: La versión 0.3 del plugin ya funciona correctamente. Thanks to the author for the quick fix.

Como usar FeedBurner para servir nuestro feed

Jueves, Septiembre 10th, 2009
feedburner Feedburner es un servicio web propiedad de Google que se encarga de redistribuir nuestros feeds. Es algo así como si feedburner se subscribiera al feed que proporcionamos desde nuestro blog, luego volviera a distribuirlo y nosotros indicamos a nuestros lectores que se conecten a través de esa segunda versión de nuestro feed y no a través del que proporcionamos directamente en el blog. La ventaja de esto es que ahorramos ancho de banda y que Feedburner puede proporcionarnos estadísticas interesantes de los lectores. La parte mala es que pasamos a tener cierta dependencia de un servicio externo y una disminución de la privacidad puesto que google pasa a poder recolectar información sobre nuestros lectores.

Feedburner estuvo de modo hace un par de años cuando el ancho de banda era un bien escaso y las empresas de hosting eran caras, en la actualidad no resulta en general necesario. Desde mi punto de vista el único motivo para usarlo sería por el de las estadísticas, tu debes valorar si la información que proporciona compensa el ceder datos a google.

Si te decides a usarlo, una forma de minimizar el impacto de la dependencia externa es activar la característica My Brand, en este artículo se explica como activar FeedBurner con My Brand para nuestro blog.

Antes de continuar, debes tener presente dos cosas

  • Para poder usar My Brand tienes que añadir un registro CNAME a las dns de tus dominios, mira en las páginas de ayuda de tu hosting como hacerlo. Generalmente se encuentra en el apartado Dominios o “Gestión de DNS” y es fácil, pero es bueno que mires como hacerlo antes de meterte en faena
  • Las direcciones que se indican aquí para los feeds por defecto de wordpress del tipo dominio.com/feed y dominio.com/comments/feed son sólo válidas si tenemos activados los permalinks de wordpress. Si no los tienes activados deberás usar la dirección dominio.com?feed=rss2 y dominio.com/wp-commentsrss2.php. Si los permalinks están customizados también puedes usar el otro tipo de dirección pero es mejor usar la customizada.

Pasos para servir nuestro feed a través de Feedburner

Entramos en feedburner.com con nuestra cuenta de gmail. Si no tenemos una podemos crear una cuenta de google allí mismo.

feedburner - my brand - Imagen 1

En el formulario que aparece en mitad de la página escribimos la dirección de nuestro blog (en el ejemplo usamos la página www.marinerosbouzas.com, y pulsamos en siguiente [Imagen 1, puedes pinchar sobre las imágenes para ampliarlas]. Dejamos seleccionado el usar rss en lugar de atom (esto no importa) y pulsamos siguiente.

feedburner - my brand - Imagen 2

En esta pantalla [Imagen 2] escogemos un título para el feed, generalmente el nombre del blog. Feed address es la dirección desde la que serviremos nuestro rss a partir de ahora así que es bueno que escojamos algo fácil y significativo, por ejemplo feeds.feedburner.com/tudominio.

Por defecto feedburner contabiliza la cantidad de usuarios subscritos a nuestros feeds. En las siguientes pantallas tenemos la opción de activar el clickthrougs, es decir contabilizar el número de veces que los lectores acceden a nuestra web por pinchar en el feed. Yo no lo activo por que significa que feedburner añadirá un código html algo intrusivo en nuestros feeds para poder trazar lo que hacen nuestros lectores. Hay más opciones pero las que están por defecto suelen ser adecuadas para la mayoría

feedburner - my brand - Imagen 3

Si además del feed de los posts, queremos que el de los comentarios se sirva también a través de feedburner volveremos al inicio e introduciremos la dirección http://tudominio.com/comments/feed, en este caso http://marinerosbouzas.com/comments/feed, y en la siguiente pantalla escogemos como feed address feeds2.feedburner.com/comentarios_tudominio (en este caso feeds2.feedburner.com/comentarios_marinerosbouzas) y como feed title “Comentarios para tudominio” por ejemplo [Imagen 3].

A partir de ahora nuestros lectores podrán acceder a nuestro feed a través de http://feeds.feedburner.com/tudominio y a través de http://tudominio.com/feed. Esta última dirección es, por ahora, el valor por defecto que obtendrá alguien que introduzca en su lector de feeds la dirección de nuestro blog. Para hacer que por defecto se sirva el feed a través de feedburner debemos hacer algunos cambios en la plantilla del blog o instalar un plugin. Pero antes de entrar en esto activaremos la característica My brand.

Pasos para activar My Brand

La opción de My Brand permite que la dirección del feed que servimos a través de feedburner sea del estilo http://feed.tudominio.com/tudominio en lugar de http://feeds.feedburner.com/tudominio. Lo bueno de esto es que si alguna vez feedburner quiebra, se vuelve de pago o deja de satisfacernos nuestros lectores estarán subscritos a una dirección sobre la que tenemos el control y no a una externa.

Para activar My Brand pulsamos en My account y después en My brand. Debemos localizar una línea que pone algo parecido a [Imagen 4]

feeds CNAME XXXXX.feedproxy.ghs.google.com

Crearemos un registro CNANE en nuestro hosting que apunte a esa dirección: XXXXX.feedproxy.ghs.google.com (el valor de las XXX dependerán de cada caso)

feedburner - my brand - Imagen 4

De vuelta en la página de configuración de my brand introducimos el valor feeds.tudominio.com (en nuestro caso feeds.marinerosbouzas.com, nótese que no hay que poner el http:// delante) en el campo que aparece en el punto 2 de la imagen 4 y le damos a activar. Por supuesto en lugar de feeds podemos usar el subdominio que queramos.

Con esto hemos activado la dirección feeds.tudominio.com/tudominio para servir el feed de nuestro blog a través de feedburner pero manteniendo la dirección de subscripción bajo nuestro control. Si también servimos los comentarios a través de feedburner estos estarán, sin necesidad de tocar nada más en feeds.tudominio.com/tudominio_comentarios

Modificar nuestro tema para servir por defecto los nuevos feeds

El último paso, es indicar a la gente que accede a tu blog que no quieres que se subscriban a través del feed propio de wordpress si no a través del proporcionado por feedburner. Es posible hacer esto a través de un plugin como FeedSmith, pero si quieres hacerlo a mano tampoco es muy complicado, tan sólo tienes que editar el tema que usas y modificar un par de líneas para hacer referencia a las nuevas direcciones de los feeds. En general tendrás que hacer las modificaciones en dos lugares distintos:

  • Entre las etiquetas < header > que suelen estar en el archivo header.php debes localizar las etiquetas < link > que hagan referencia a los feed y cambiar el valor de href por las nuevas direcciones. Esto es lo que hace que cuando un lector de feeds intente descubrir por si mismo el feed de tu blog lo resuelva correctamente
  • El segundo cambio será necesario cuando en algún sitio del tema indiquemos la dirección directa para subscribirse.

Pasos para el tema default de wordpress

En concreto, particularizando para el tema por defecto que viene con wordpress lo que habría que hacer es:

  • Abrir con un editor de textos el archivo wp-content/themes/default/header.php y buscar las líneas:

    <link rel=”alternate” type=”application/rss+xml” title=”<?php printf(__(’%s RSS Feed’, ‘kubrick’), get_bloginfo(’name’)); ?>” href=”<?php bloginfo(’rss2_url’); ?>” />
    <link rel=”alternate” type=”application/atom+xml” title=”<?php printf(__(’%s Atom Feed’, ‘kubrick’), get_bloginfo(’name’)); ?>” href=”<?php bloginfo(’atom_url’); ?>” />

  • Borrar la segunda, la que pone algo de atom y substituir el texto que está en rojo en la primera por http://feeds.tudominio.com/tudominio
  • En el archivo wp-content/themes/default/footer.php buscar la línea

    <a href=”<?php bloginfo(’rss2_url’); ?>“>RSS das Entradas</a> &amp; <a href=”<?php bloginfo(’comments_rss2_url’); ?>“>RSS dos Comentarios</a>.

  • Substituir lo que está en rojo en la primera por http://feeds.tudominio.com/tudominio. Si también estas haciéndolo para los comentarios substituye también lo que está en rojo en la segunda línea por http://feeds.tudominio.com/tudominio_comentarios.