- 1. Creando un plugin para WordPress: Planificación y planteamiento
- 2. Creando un plugin para WordPress: Estilo del Código
- 3. Creando un plugin para WordPress: Escribiendo el plugin
- 4. Creando un plugin para WordPress: Integración con WordPress
- 5. Creando un plugin para WordPress: Subida al Repositorio
En los siguientes artículos vamos a ver cómo crear un plugin para WordPress. Viene de la charla que dí en la WordCamp Bilbao junto con David Navia. Lo he divido en 5 partes donde veremos desde la planificación y buenas prácticas antes de ponernos manos a la obra, hasta su subida al repositorio oficial de WordPress, pasando por la propia creación de un plugin en sí, con un ejemplo muy básico.
Planificación y planteamiento
La creación de un plugin debe considerarse como un desarrollo en sí. Un plugin es algo que extiende o añade funcionalidad nueva a nuestro WordPress, por lo tanto lo primero que tenemos que hacer es tomarnos un tiempo para planificar cómo vamos a desarrollar el plugin y qué vamos a necesitar para hacerlo. Lo mejor para ello es hacerse una serie de preguntas:
- ¿Cual es el objetivo del plugin? Plantea los requerimientos mínimos y especificaciones
- ¿Debo usar el modelo de datos de WordPress o necesito crear uno propio? Planifica la persistencia de datos
- ¿Necesito opciones de configuración y/o administración del plugin? Establece los flujos de información
- ¿Necesito agregar CSS y/o JS? Diseña las interfaces y la experiencia de usuario
- ¿Cómo lo haré escalable por si el día de mañana necesito crecer? Piensa a lo grande y empieza por lo básico
Es muy importante tener en cuenta que nuestro plugin debe integrarse en nuestro sitio de WordPress y convivir con otros plugins y con funcionalidades que pueda tener nuestro tema. Cobra una vital importancia la organización, el control de dependencias y el modelo de datos a escoger.
WordPress tiene un modelo de datos y pone a nuestra disposición una serie de APIs que nos van a facilitar la implementación de la mayor parte de las funcionalidades que necesitaremos para crear nuestro plugin:
- HTTP API => peticiones HTTP a URLs externas
- Metadata API => obtener o modificar datos de posts, usuarios, comentarios, taxonomías…
- Options API & Transients API => La manera sencilla de almacenar en BBDD información
- Settings API => administrar configuraciones generales
- Shortcode API => permite crear funciones para insertar funcionalidad dentro de nuestros post y páginas
- Theme Customization API => para crear opciones en el personalizador
- Hooks => Actions y Filters que permiten interactuar con funciones o puntos de ejecución
Puedes ver el listado completo de APIs y lo que hacen en la siguiente página.
Lo más importante de este punto 1 se resume en la siguiente imagen:
¡No reinventes la rueda! Lo más probable es que WordPress disponga de algo para realizar lo que tu quieres hacer con tu plugin. Por lo tanto mi recomendación es que busques, te documentes e investigues. Echa un vistazo al codex o busca en los foros… Recopila información y adelante!