Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
Creando un plugin para WordPress

Creando un plugin para WordPress parte 1: Planificación y planteamiento

 

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:

reinventar la rueda

¡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!

Puede que también te interese

Cómo crear un formulario de log-in/log-out personalizado con WordPress
Cómo crear un formulario de log-in/log-out personalizado con WordPress
En la anterior entrada Cómo restringir el acceso al back-end de WordPress a usuarios no administradores vimos como limitar el acceso al panel de control…
Cómo realizar un formulario de contacto personalizado en WordPress sin Plugins
Cómo realizar un formulario de contacto personalizado en WordPress sin Plugins
Para realizar un formulario de contacto personalizado en WordPress podemos utilizar los conocidos plugins contact form 7 o gravity forms. Si no queremos recurrir al…
Cómo agregar el generador de contraseña fuerte de WordPress en nuestro formulario de registro personalizado
Cómo agregar el generador de contraseña fuerte de WordPress en nuestro formulario de registro personalizado
En la entrada anterior veíamos cómo crear un formulario de registro personalizado en WordPress. En el ejemplo, generábamos una contraseña automáticamente, pero ahora vamos a…
AJAX en WordPress, la manera tradicional
AJAX en WordPress, la manera tradicional
Comienzo una serie de entradas donde veremos cómo hacer AJAX en WordPress. SPOILER ALERT: En este primer post, con un simple ejemplo, veremos cómo hacer…