...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.

Popularidad: 6%

Artículos relacionados

5 comentarios para "Plugin para mostrar la foto astronómica del dia"

  • 1
    Abel
    16 de Noviembre de 2007

    Por lo menos ya comprobé definitivamente que sí funciona… ya que tenía que esperar a que se actualizara el feed para ver los cambios aquí. :D

  • 2
    Cómo acceder a los datos de XML en PHP » …Microplagio…
    18 de Noviembre de 2007

    [...] Bien, ahora si dedicaré una entrada completa al manejo de XML en PHP5. Veremos un ejemplo fácil y de paso servirá como explicación al funcionamiento de plugin que muestra la foto astronómica del día. [...]

  • 3
    Patxo » Archivo del Blog » Sombra aquí y sombra allá
    24 de Julio de 2008

    [...] Picture of the Day): Observatorio (debería de cambiar todos los días). Lo intenté con el plugin wp-APOD pero no he sido capaz de echarlo a [...]

  • 4
    Un castillo bajo un cielo estrellado
    15 de Octubre de 2008

    [...] Aprovecho para recomendarles el plugin que muestra la foto astronómica del día en tu blog. Claro, solo si eres otro astrónomo [...]

  • 5
    Radix2
    4 de Junio de 2009

    Hola:

    Estoy tratando de añadir la imagen astronomica del dia con tu plugin pero apenas tengo conocimientos de programación.
    No queria modificar la plantilla sino que preferia añadirlo en la barra lateral como un “widget” mas. Es esto posible? He añadido un widget tipo texto y he puesto directamente el codigo
    pero no funciona. ¿puedes ayudarme? gracias

  • Deja el comentario