En estas últimas semanas he comenzado a implementar los plugins del tema que he desarrollado para este blog, de forma que estén disponibles para todos aquellos que quieran utilizarlos, porque les parezcan interesantes, porque les gusten, o por la razón que consideren.
Hasta la fecha he probado diferentes Centros de Software, empezando inicialmente con el Centro de Software de Ubuntu, que es con el que me inicié en este maravilloso mundo del Software Libre, tanto en el lado correspondiente a los equipos de sobremesa y portátiles, como en los dispositivos móviles; pasando por el Google Play Store, hasta llegar en estos días a WordPress.org.
En este artículo, mi intención es no solo comentar mi experiencia con WordPress.org, sino también compararlos entre ellos.
WordPress.org y los complementos
Desarrollar plugins originales para WordPress es misión casi imposible si tenemos en cuenta que en el momento de escribir este artículo ya existían casí 42.000; pero a pesar de esto, y teniendo en cuenta que seguro que mas de uno me podrá decir que no es necesario reinventar la rueda, a mi me gusta darle mi toque personal, y por ello, es posible que alguno de los complementos que estoy implementando exista en el repositorio.
Cuando desarrollé My-Weather-Indicator para Ubuntu, existía al menos otro indicador meteorológico, sin embargo, hoy por hoy, probablemente sea el mas instalado. Es por este tipo de cosas, por que me gusta desarrollar mis propias soluciones. Una razón de peso, sin duda.
El primer plugin en WordPress.org
Cuando pensé en escribir este artículo, solo tenía un plugin en WordPress.org, estadisticas-web, ahora ya he conseguido que Horizontal Widget Most Recent Viewed Posts también forme parte del repositorio.
El primero de los dos es para insertar el código de Analytics en tu propia página, mientras que el segundo, con un nombre tan rocambolesco, sirve para añadir un widget en la barra lateral en el que lista los últimos artículos con la primera imagen del mismo.
Que debe cumplir tu plugin para formar parte de WordPress.org
Para poder tener tu plugin en el repositorio de WordPress.org, es necesario que este cumpla una serie de requisitos como son,
- Debe ser compatible con la licencia GNU GPL v2.
- El plugin no debe hacer nada ilegal o ser moralmente ofensivo.
- Tienes que usar el repositorio Subversion. Esto es así, porque el Directorio de Plugins de WordPress es en realidad un lugar de hospedaje (hosting), no un listado.
- El complemento no puede tener enlaces externos.
- Si no se especifica licencia, se considera que es GPLv2.
- Existe una guía detallada de los requerimientos que debe cumplir.
Paso a paso
A continuación puedes leer los pasos necesarios para añadir tu propio plugin al repositorio de WordPress.org,
- Como te puedes imaginar, el primer paso es registrarse en WordPress.org
- Una vez suscrito, deberás añadir tu plugin, dando la información mínima indispensable,
- Nombre del plugin. Esto es importante, porque el nombre del complemento no se puede modificar posteriormente, y además servirá para ubicarlo en WordPress. Así por ejemplo, en el caso de Estadísticas Web, la dirección será *https://wordpress.org/plugins/estadisticas-web*
- Descripción
- Url de donde se puedan descargar el plugin comprimido.
- Una vez has enviado el plugin conforme a lo indicado en el paso anterior, se revisará manualmente y en su caso te pedirán que cambies algún aspecto. Simplemente debes seguir lo indicado por los supervisores y una vez solventados todos ellos, se aprobará
- Subsandas todas las deficiencias, en caso de que las hubiera, te enviarán un correo donde te indicarán que tienes acceso el repositorio SVN donde deberás colocar tu complemento.
- Una vez colocado tu complemento y un archivo readme con unas características singulares, tu plugin pasará a formar parte del explorador de complementos
Utilizando Subversion
Hasta el momento me había apañado la mar de bien con Bazaar la solución de Canonical para tener el código libre disponible en Ubuntu y con Git. Ambos dos sistemas de control de versiones.
Sin embargo, en el caso de WordPress.org, se han decantado por Subversion otro sistema de control de versiones. Aunque para lo básico no he tenido que sufrir demasiado.
Una vez superados todos los pasos indicados anteriormente, y cuando te envían el email, confirmándote que el repositorio está disponible, lo siguiente es hacer una copia local de lo que existe en el repositorio. Es este punto donde me llevo la sorpresa, y es que resulta que después de que te hayan revisado haciendote las observaciones necesarias para que tu plugin cumpla con los requerimientos marcados, así como alguna que otra observación relativa a la seguridad, lo cierto es que allí no hay nada. Has leido bien, en el repositorio no hay nada, bueno, realmente hay tres directorios pero están vacíos. Sorprendente, ¿no?.
Así por ejemplo, en mi caso, creo un directorio local que se llame este-es-mi-plugin, y hago una copia del repositorio
mkdir este-es-mi-plugin svn co
Ahora, copiamos todo el contenido de nuestro plugin en el directorio trunk/, y los añadimos a subversion,
svn add trunk/*
Ahora registramos los cambios en el repositorio central
svn ci -m "Mi primera versión"
Cada vez que hagas cambios, necesitarás seguir los mismos pasos….
Una vez ya tenemos la primera versión, es necesario etiquetar una copia, lo que te permitirá llevar un seguimiento de los cambios de una forma mas sencilla; y de forma paralela, permite al Directorio de Plugins de WordPress conocer la versión que debe descargarse la gente. Es importante actualizar el campo Stable Tag en el archivo trunk/readme, sobre el que he comentado anteriormente.
svn cp trunk tags/2.0
Entendiendo que 2.0 es la versión actual.
Ahora cualquiera puede descargar el plugin y añadirlo a su instalación de *WordPress.
Conclusiones
De entre los tres repositorios de Software Ubuntu Software Center, Android y WordPress.org, solo revisan que se cumplan con las especificaciones, en Ubuntu y WordPress.org.
Respecto a la velocidad de revisión, inicialmente con el Centro de Software de Ubuntu te podías desesperar, pero últimamente esto ha cambiado mucho, y a lo mejor tienes tu aplicación aprobado en dos o tres dias; mientras que en WordPress este proceso apenas lleva un día.
En Android, como no se hace revisión ninguna, esto no aplica evidentemente.
Por último tengo que destacar el uso de SVN para el empaquetado. Y es que es realmente me gusta como lo han solucionado, puesto que aunque te lo descagas como archivo comprimido, se trata de un verdader repositorio.
En fin, esto ha sido una discreta pincelada de como añadir tu propio plugin al repositorio de WordPress.org.