Cómo construir un plugin para Wordpress que permita obtener contenido (fetching) de todos los sitios que queramos utilizando Yahoo! Pipes, pre y post-procesado :)
3. Objetivos
• Dar una visión global de cómo se crea un “pipe” de Yahoo
y como incrustarlo en una web/cms o un blog de
Wordpress.
• Adquirir aptitudes para filtrar URL’s y hacer “fetching”.
• Conocer las herramientas implicadas.
• Aprender mediante la práctica a crear un “fetch” web
básico.
• Dudas , preguntas…
4. Qué no vamos a ver
Al tener tan poco tiempo hay cosas que no podremos ver:
• No estudiaremos en profundidad XHTML ni CSS.
• No estudiaremos usabilidad ni posicionamiento.
• No aprenderemos a publicar una página web.
• No aprenderemos a crear un blog.
6. ¿Qué es PIPES y para qué se usa?
Yahoo! Pipes
Yahoo! Pipes es una aplicación web de Yahoo! que provee de una
interfaz de usuario para construir conjuntos de datos híbridos que
tienen como origen datos: la web,tales como RSS,servicios,
páginas, CSV, etc., permitiendo además publicar el resultado.
La aplicación funciona habilitando tuberías o "pipes" con diferentes
procedencias de información y aplicándoles después un conjunto
de reglas sobre cómo tratar y modificar dicha información, (por
ejemplo, filtrado u ordenación). Un ejemplo típico es el New York
Times usando Flickr, un “pipe” que toma la URL del NYT RSS y le
añade imágenes de Flickr basándose en las palabras clave de cada
ítem… El sitio de Yahoo! se encuetra en fase beta.
7. Introdución histórica
Yahoo! Pipes surgió el 7 Febrero de 2007 como tributo a los
famosos “pipes” de Unix, según sus creadores.
Provee un servidor donde guardar nuestros conjuntos de datos
editables gracias a una potente herramienta visual, el resultado
es la combinación de diferentes orígenes de datos en un único
integrado.
Según Tim O’Reilly ,la herramienta es un jalón en la historia de
Internet, un servicio que generaliza la idea de una aplicación
web híbrida en una Internet que se ha convertido en una
colección de servicios de red…una GRAN IDEA de la
ingeniería.
9. Cómo construir pipes en segundos
Hay 3 conceptos fundamentales al usar el framework:
Origen
Fuente de datos, sea entrada de usuario, un servicio o un
alimentador RSS de una web,etc.
Filtrado:
Los operadores, las cadenas , expresiones regulares, etc.
Salida:
Una vez procesados los datos, se conectan con la salida y se
ejecuta, esto a su vez puede ser convertido en un RSS u otro
servicio…
10. La Comunidad de Yahoo! Pipes
Visita obligatoria:
http://pipes.yahoo.com/pipes/search
11. Conectando con WordPress
Con los resultados obtenidos de Yahoo! Pipe incrustamos el
nuevo origen de datos pre-procesado en nuestro blog de
WordPress. En sidebar.php de nuestro tema (o el widget)
14. WordPress Avanzado – Plugins
Vamos a crear un plugin de Wordpress para traer el
contenido del RSS pre-filtrado por Yahoo! Pipes e insertarlo
en nuestro blog como contenido propio.
15. Pasos para crear un plugin “fetching”
15 de 59
• pipenews.php
– Crear función para guardar una URL permitida en
un fichero, poner un límite de caché (evitar ataques)
– Crear y añadir la función de filtro que busque la
palabra clave “pipenews” en el contenido de un
artículo y aplique el proceso de substitución
• Crear la interfaz de administración para añadir URL’s
permitidas y sus expresiones regulares asociadas
• Crear una página donde insertar la llamada al plugin
19. Administración de plugins con WP
Wordpress utiliza funciones y clases como un CMS, además
de “ganchos” para asociar acciones en el panel de
administración:
24. Ejercicio avanzado: 3 simples pasos
1. Lo primero es obtener las direcciones que vamos
a incluir en nuestro pipe.Usamos el componente
“Regex” de Yahoo! pipes para redireccionar a
nuestro blog las noticias
2. Crear el pipe, ejecutarlo y conseguir la dirección
RSS:
http://pipes.yahoo.com/pipes/pipe.run?_id=f227ec8e41
36c537d419a4fc7cbc530a&_render=rss y crear un
widget con esta dirección para mostrar los enlaces
3. Instalar el plugin de esta charla en WordPress y
añadir las direcciones del punto 1 con sus
expresiones para recortar la “zona de noticia”