Antes de preguntarte, “¿cómo le hago para desarrollar WordPress Plugins?”, en mi punto de vista, deberías preguntarte: “¿qué necesito para desarrollarlos?”.
WordPress Plugins
Estos aportan funcionalidad extra a nuestro WordPress, demasiada. Y hacen que nuestro WP tenga habilidades que creíamos que no se podían, y eso nos da mucho alivio y evita dolores de cabeza.
Ya hace un año que empecé como desarrollador de plugins para WordPress, y aunque sigo aprendiendo nuevas cosas día con día, en cada plugin siempre es necesario saber las siguientes cosas, (y también para los temas):
PHP
PHP es un lenguaje de programación dedicado para la web en el lado del servidor (backend), con el puedes desarrollar infinidad de aplicaciones web y/o usarlo como una REST API. Todo WordPress está construido en PHP, tanto su núcleo como sus clases y funciones; por otra parte, el equipo de WordPress.com ha estado desarrollando una versión con Node.js y React.
HTML y CSS
Estas dos tecnologías son la base de cada página web que hay en Internet, creas o no, cada desarrollo web tiene algo de esto.
HTML es el que aporta la estructura de nuestra aplicación y el CSS el que aportará los estilos necesarios para que nuestra página se vea bonita.
¿Usarás HTML y CSS dentro de tu plugin? Depende, si tu plugin lo necesita, adelante; por ejemplo, si un plugin necesita expandir unas tablas personalizadas que muestren las compras de unos usuarios, aquí si aplicaría.
Si tu plugin no necesita ejecutar código HTML y CSS, entonces no es necesario agregarlo. Pero, si vas a desarrollar temas para WordPress, esto será tu pan de cada día.
HTML y CSS son las tecnologías que debes aprender primero, antes de PHP y JavaScript.
JavaScript
JavaScript es otro lenguaje de programación, pero este se orienta más en el lado del cliente (frontend), en pocas palabras, es el que le dará la interacción a nuestra página; por ejemplo, darle interacción a un objeto de nuestra página al momento de dar click sobre otro objeto.
Aunque, tal vez hayas visto o escuchado que WordPress utiliza mucho jQuery; ésta es una librería de JavaScript, y hace las cosas más sencillas al momento de trabajar con Vanilla JS (JavaScript puro), ya que transforma expresiones de JS a algo mucho más legible por el desarrollador.
Si tu plugin no necesita ejecutar código JS, entonces no es necesario agregarlo.
No empieces a trabajar directo con jQuery. Aprende JavaScript puro, esto te dará la ventaja de poder leer y entender más código, además de saber qué sucede dentro de jQuery y otras librerías.
Hooks
Los hooks son muy importantes en WordPress, éstas son líneas de código PHP que te ayudan a editar ó expandir un código ya existente, ya sea de las funciones de WordPress u otro plugin.
Estos se dividen en dos: acciones y filtros.
Las acciones te permiten agregar o cambiar cómo opera WordPress. Si estás esperando un resultado concreto de una función, puedes usar esto para agregar cosas nuevas a WordPress.
Los filtros te dan la habilidad de cambiar datos durante la ejecución de WordPress; por ejemplo, si quieres agregar un atributo nuevo a una etiqueta <script>.
Los hooks serán profundizados a detalle en otro post.
WordPress APIs
WordPress cuenta con distintas APIs para ejecutar funcionalidad en específica, por ejemplo:
¿Qué API usaríamos para crear una página de opciones de nuestro plugin? La respuesta es: Settings API y Options API.
¿Qué API usaríamos para crear shortcodes? La respuesta es: Shortcode API.
Dale un vistazo a la variedad de APIs de WordPress: https://codex.wordpress.org/WordPress_APIs
Paciencia y Constancia
Todo esto no se aprende de la noche a la mañana, necesitas ser constante en tu aprendizaje y ser muy paciente por los resultados. Y estar probando, y probando y probando.
Recursos
A continuación, te dejo unos cuantos recursos para empezar a desarrollar plugins para WordPress:
https://developer.wordpress.org/plugins/ (Plugin Developer Handbook – Lectura Obligatoria)
https://carlalexander.ca/ (Desarrollo de plugins para WP usando PHP Orientado a Objetos, entre otros.)
http://php.net/manual/es/ (Documentación oficial de PHP)
https://developer.mozilla.org/es/docs/Web/JavaScript (Documentación de JavaScript, muy completa)
Si tienes alguna duda en el desarrollo de tus plugins, no dudes en contactarme, lo resolveremos. 🙂
Deja un comentario