...Microplagio...

Advertisement

Hace tiempo que quiero escribir algo sobre el manejo de XML en PHP5, pero por una u otra cosa no he podido hacerlo. Sin embargo hoy, mientras veía la foto astronomica del día del proyecto Observatorio, pensé que sería bueno hacer un plugin para mostrar la foto diaria en el blog.

Mientras pensaba cómo hacerlo se me ocurrió que la mejor forma era usando su feed y haciendo un parsing para obtener los datos. Así que recordé que con la extensión SimpleXMLElement de PHP5, manejar contenidos XML es lo más fácil del mundo, así que me puse manos a la obra. Desarrollé un plugin para mostrar la foto astronómica del día.

Bien, explicaré brevemente cómo funciona mi plugin. Lo primero es crear una instancia de SimpleXMLElement usando como parámetro el Feed RSS feed de Observatorio . Una vez teniendo nuestro objeto SimpleXML tomamos los nodos del árbol XML necesarios para mostrar la foto -enlace, titulo, descripción-. Obviamente, solo tomamos la información correspondiente a la foto actual.

Hacemos algunos ajustes necesarios, como por ejemplo, sacar el código de la imagen de dentro de la descripción de la foto o modificar el título para quitarle la fecha. Después se imprime la imagen usando XHTML válido, y finalmente disfrutamos de la belleza del cosmos integrando la foto a nuestra theme tal y como aparece en la parte superior izquierda de esta ventana.

Cabe destacar que el proyecto Observatorio, ha tenido un éxito enorme a pesar de ser la versión en español de la APOD oficial de la NASA

Para usar este plugin solo hay un requisito, tu blog debe correr sobre PHP5. ¿Por qué lo hice así? Por dos razones; primero, debemos ir cambiando ya nuestra forma de programar en PHP, he notado que la gran mayoría de scripts que veo en internet son hechos usando un paradigma funcional y estructurado. La ¡Programación Orientada a Objetos ya existe! y por eso este plugin funciona como consecuencia de instanciar una clase, además el soporte que da PHP5 a la orientación a objetos es mucho muy superior a la de PHP4. Segundo, porque la clase SimpleXMLElement, que es con la que parseamos el Feed, no está disponible en PHP4. Así que no quedó de otra…

Instalación:

  • Descarga el plugin.
  • Sube el archivo wp-apod.php a la carpeta wp-content/plugins.
  • Actívalo y en la parte del theme que más te guste escribes.
   <?php if( class_exists('APOD') ) new APOD() ?>

Está bien documentado y el código es claro. Cualquier duda, bug o comentario es bien recibido.

Artículos relacionados:

0 Comentarios: