Dos plugins para WordPress hechos con clase

Si existe algo que realmente dificulte el desarrollo sobre WordPress, tanto de plugins como de temas, es su formato "no estándar" de desarrollo.

Existirán muchos tutoriales y ejemplos en el Codex que nos pueden ayudar; pero ninguna de estas opciones entrega un orden en el desarrollo. Visité muchos tutoriales antes de llegar a la solución, primero comencé con el de WPNinjas, luego pasé por el clásico de NetTuts hasta que terminé en el de 1st Web Designer que fue el que más me ayudó a formular una clase reutilizable y más ordenada.

Cuando ya tenía el estándar definido me pude abrir paso en los dos plugins que les voy a compatir.

Plugin 1 : aSimpleTimeline

El primer plugin se llama aSimpleTimeline y permite mostrar un Timeline de Twitter en un formato simple de lista (ul – li). Se conecta con la API de Twitter (la versión 1.1) y muestra una lista con los tweets de la cuenta configurada. Hasta el momento solo cuenta con un "shortcode", sin embargo tendrá una actualización para que funcione como Widget.

Cuando el plugin es instalado lo primero que se debe configurar son los datos de tu aplicación Twitter, si no tienes una puedes crearla en el link que el plugin te indica (https://dev.twitter.com/apps/new), del siguiente modo:

Se deben llenar los datos de la aplicación, generalmente relacioandos al sitio web donde vamos a usar nuestro plugin.

Se deben llenar los datos de la aplicación, generalmente relacionados al sitio web donde vamos a usar nuestro plugin.

Posteriormente tenemos que recrear el access token para poder configurar el plugin.

Posteriormente tenemos que recrear el access token para poder configurar el plugin.

Luego, se configura el plugin con las credenciales y ya podremos usar shortcode con el límite de tweets y el nombre de usuario de la cuenta, del siguiente modo:

[asimpletimeline username="alvaroveliz" limit="10"]
Plugin 2 : aDropboxGallery

El segundo plugin está enfocado en la API de Dropbox, permite crear una "galería" de imágenes en base a un directorio que tengas en tu cuenta Dropbox. La idea es aprovechar el servicio de Dropbox para mantener las galerías por directorio sin tener que intervenir WordPress ni ocupar espacio adicional en el hosting.

Para configurar este plugin se necesita crear una aplicación "Dropbox" y darle acceso. Para realizar ésto debemos ingresar a la sección developers de Dropbox y crear una aplicación "Dropbox API App" del siguiente modo:

Ingresamos al link que dice el plugin (https://www.dropbox.com/developers/apps/create) y creamos una Dropbox API App:

Seleccionamos el tipo Drobox API app

Seleccionamos el tipo "Files and datastores"

Configuramos la aplicación para que pueda acceder a los archivos que ya están en Dropbox

Después se debe dar acceso a todos los tipos de archivo.

Finalmente se le da un nombre a la aplicación, que por lo general será tu sitio web.

Seleccionamos las configuraciones indicadas y cuando esté creada la veremos en nuestra "App Console" de donde podremos sacar las credenciales de conexión.

Cuando tengamos las credenciales, podremos configurar nuestro plugin y posteriormente utilizar el shortcode que permitirá mostrar lás imágenes en una lista (por el momento, luego será una galería más avanzada):

[adropboxgallery path="/photos/event"]
La clase estándar

En cuánto a la clase, les puedo decir que llegué a la conclusión de que la mejor forma de hacer plugins es usando una clase que centralice las funciones del plugin sin afectar al código que realiza la integración del plugin al WordPress, que en palabras simples significa separa los códigos para un mejor orden.

La estructura del plugin es del siguiente modo:

Encontramos los archivos index.php y plugin.php en la raíz, además de la licencia y el README. El archivo index.php es un cazabobos, por si alguien entra al directorio wp-content/plugins/ directamente, el archivo plugin.php es el que realiza la integración del menu principal del plugin más el del shorcode. En espera tengo el desarrollo de la integración de un Widget.

Por otra parte, en includes se encuentra la Clase del plugin, aquí se debe programar y hacer todas las "magias" que permitan el funcionamiento del plugin que estamos desarrollando.

Descargas y repositorios

Si te interesa alguno de estos plugins o la clase estándar puedes descargarlos desde Github :

Finalmente si tienes comentarios, aportes o pull requests, recuerda que siempre serán bienvenidos.

Labs
2 minutos