WordPress es uno de los sistemas de gestión de contenido más populares en el mundo, principalmente por su gran flexibilidad y extensibilidad. Y una de las maneras más comunes para añadirle funciones es mediante el uso de plugins.
Un plugin es un fragmento de código que al conectarse a WordPress amplía su capacidad, personalizando y mejorando las opciones que posee sin la necesidad de modificar el core.
En este artículo te enseñamos a crear un plugin desde cero, que aunque parece algo difícil y requiere de conocimientos en código, te mostraremos que no es imposible.
Índice
¿Qué son los hooks de WordPress?
La creación de plugins en WordPress está enfocado en los hooks, también conocidos como ganchos. Son puntos de entrada desde donde se puede modificar un procedimiento mediante la introducción de código propio; pero, sin la necesidad de tocar los archivos fuente de WordPress.
Estos ganchos son de vital importancia porque permiten crear funciones o editar la configuración de temas o plugins, pudiendo modificar, ampliar o limitar sus funciones. En WordPress existe dos tipos de hooks, los de acción y los de filtro:
1. Hooks de acción
Se encargan de añadir o cambiar la funcionalidad de WordPress, permitiendo ejecutar un código propio en un determinado punto. Este tipo de hook se ejecuta en respuesta a una acción específica, como la creación de un post o la carga de una página.
2. Hooks de filtro
Parecidos a los hooks de acción, pero se diferencian en que reciben un valor de entrada, se ejecutan en un punto específico del proceso de carga de WordPress y permiten modificar los datos que se están mostrando en la pantalla.
¿Qué se necesita para crear un plugin de WordPress?
Para crear un plugin de WordPress no se requiere tener todos los conocimientos de un programador avanzado; pero, es verdad que necesitas de nociones básicas de la arquitectura de WordPress y conocimientos de programación en PHP, HTML y CSS que debes ir alimentando con el tiempo.
Entre lo necesario para crear un plugin encontramos:
▶️ Editor de texto: Es una herramienta de software que se utiliza para escribir, editar y formatear código fuente. Entre los editores de código HTML más populares se encuentran Visual Studio Code, Sublime Text, Atom, Notepad++, Vim y Emacs. ▶️ Acceso al FTP de tu hosting: Una vez elegido e instalado el editor de texto, debes conectarlo al servidor FTP para hacer la modificación del código. ▶️ Instalar WordPress: Se necesita el acceso a la estructura y funcionalidad de WordPress, para ello debes verificar que este se encuentre actualizado.
Herramientas para crear un plugin en WordPress
Para crear un plugin para WordPress se requiere de algunas herramientas:
▶️ Un editor de texto: Indispensable para escribir el código del plugin, se recomienda usar un editor de código fuente como Visual Studio Code, Sublime Text o Atom. ▶️ Un servidor web local: Es para probar el plugin antes de subirlo a un servidor de producción. Por ejemplo XAMPP, WAMP o MAMP según el sistema operativo que tengas en el ordenador. ▶️ WordPress: Es para poder desarrollar y probar el plugin. ▶️ Conocimientos de programación: Tanto en PHP, HTML, CSS y JavaScript. También es útil tener conocimientos de la arquitectura de WordPress, como los hooks y las APIs, para poder integrar el plugin con el núcleo de WordPress. ▶️ Documentación de WordPress: La documentación de WordPress es una valiosa fuente de información para aprender sobre el desarrollo de plugins. Se puede acceder desde el sitio web de WordPress.org.
Cómo crear un plugin en WordPress desde 0
Los plugins de WordPress son programas que contienen código y permiten añadir funciones al sitio web para cumplir ciertos propósitos. Para crear uno primero se debe entender que contiene un plugin.
Los plugins puede contener varios elementos, pero algunos de los más comunes son:
▶️ El archivo principal del plugin: Siempre es un archivo PHP y contiene el código que define las funciones y características que el plugin ofrece. ▶️ Estructura de la carpeta: Dentro de la carpeta del plugin se puede incluir archivos CSS y JavaScript como archivos, plantillas o activos. Si el plugin es grande, es necesario incluir subcarpetas. ▶️ Scripts y hojas de estilo: Un plugin contiene estos elementos cuando necesita cumplir funciones visuales como botones, formularios o pop-ups, funciones interactivas como carruseles, galerías de imágenes o elementos de animación y funciones de comunicación como servicios de correo electrónico, servicios de pago, servicios de redes sociales, etc. ▶️ Incluir archivos: Se puede dividir el código del plugin en varios archivos para una mejor organización, así el archivo principal se mantiene en lo mínimo.
Ya entendiendo que es un plugin y que contiene, podrás crear tu plugin siguiendo estos pasos:
1. Crea una carpeta y archivo de inicio
Lo primero es crear una carpeta con el nombre del plugin, donde se guardará todos los archivos. Para ello, crea una carpeta en el directorio wp-content/plugins/. Puedes elegir el nombre que desees, lo recomendable es que sea único y descriptivo.
Luego, dentro de la carpeta crea un archivo PHP, el cual sería así: «nombre-del-plugin.php». Este será el archivo principal del plugin y contendrá el código que definirá las funcionalidades del mismo, a la vez será el punto de entrada para WordPress.
2. Añade los encabezados del plugin
Es necesario crear un encabezado en el archivo «nombre-del-plugin.php» para que WordPress reconozca el plugin. Estos encabezados son un conjunto de comentarios que le indican a WordPress información importante sobre tu plugin, como el nombre, la versión y la descripción. Un ejemplo sería el siguiente:
Este archivo se debe subir a la carpeta del plugin creado anteriormente, en el panel de WordPress en la sección de plugins se podrá ver el nuevo plugin. Sin embargo, aunque se muestre el plugin y lo actives no tendrá aún ninguna función, porque se encuentra vacío, así que ahora toca añadir funciones.
3. Añade funcionalidades a tu plugin
Primero, es identificar qué nueva funcionalidad deseas agregar al plugin. Esto puede ser cualquier cosa, desde una nueva página de configuración hasta una nueva funcionalidad de procesamiento de formularios o integración con servicios externos.
Ten en cuenta que cada plugin es diferente, pero comparten componentes similares como es el caso de los hooks que son indispensables para interactuar con WordPress.
En este caso pondremos un ejemplo de un plugin para agregar una función de suscripción por correo electrónico. Consistirá en que los usuarios cuando ingresen su correo electrónico recibirán una actualización cada vez que se publique un nuevo artículo.
Luego, se debe encontrar los hooks adecuados, ya que estos son los encargados de modificar el comportamiento del núcleo de WordPress y de los plugins. En este ejemplo se contará con los siguientes hooks:
the_content
Este hook se dispara cuando se muestra el contenido de un artículo del blog. Permite agregar el formulario de suscripción justo después del artículo.wp_enqueue_scripts
Este hook se dispara cuando se cargan los scripts y estilos de una página en WordPress. Permite agregar los estilos y scripts necesarios para el formulario de suscripción.
Ya identificados los hooks necesarios se puede comenzar a modificar el código del plugin, antes debes hacer una copia de seguridad del código original. Siguiendo el ejemplo, debes agregar el siguiente código al archivo del plugin que lo llamaremos «functions.php»:
El primer bloque de código utiliza el hook the_content , para agregar el formulario de suscripción después del contenido del artículo.
El segundo bloque de código utiliza el hook wp_enqueue_scripts, para agregar los scripts y estilos necesarios para el formulario de suscripción.
¿Cómo encontrar los hook adecuados?
Un tema aparte; pero, donde surgen muchas dudas es donde se puede encontrar los hooks adecuados para un caso particular, aunque puede ser algo complejo existen diferentes formas de hacerlo:
- Revisar la documentación de WordPress: WordPress tiene una extensa documentación que explica todos los hooks disponibles.
- Buscar en el código fuente de WordPress: Si no hay información en la documentación, puedes buscar en el código fuente de WordPress que se encuentra en el repositorio en GitHub.
- Usar un plugin de debug: Hay muchos plugins disponibles que te permiten depurar el código de WordPress y ver qué hooks se están ejecutando en cada momento.
- Usar el código de otros plugins: Si hay plugins que hacen algo similar a lo que quieres hacer, solo tienes que revisar su código para encontrar los hooks adecuados.
4. Prueba el plugin
Es indispensable probar el plugin antes de publicarlo, esto se puede hacer en un entorno de desarrollo local o en un servidor de pruebas. También, se debe conocer si el plugin funciona en diferentes escenarios, navegadores y dispositivos.
Existen herramientas de prueba que ayudan a probar el plugin de forma más eficiente. Existen herramientas de automatización de pruebas como PHPUnit o herramientas de pruebas manuales como Selenium.
También, se debe probar el plugin en diferentes versiones de WordPress, tanto las actuales como las versiones antiguas. Ten en cuenta si quieres probar el plugin en tu mismo sitio, crea una copia de seguridad para que no tengas ningún contratiempo.
5. Distribuye el nuevo Plugin
Ya creado y probado el nuevo plugin, puedes comenzar a pensar en su distribución. Una de las maneras más sencillas es publicarlo en el directorio de plugins de WordPress, esto permite tener mayor exposición y conseguir posibles clientes. Aunque, previamente necesita ser revisado y aceptado.
La otra forma es compartirlo en tu propio sitio web, donde además podrás incluir tutoriales e información más detallada.
Consejos para crear un plugin en WordPress
Hay criterios necesarios para crear un plugin para WordPress desde cero, algunos de estos consejos son:
▶️ Tener un plan: No puedes empezar a escribir código sin antes decidir que funciones quieres que tenga tu plugin y cómo lo vas a implementar.
▶️ Usar buenas prácticas de codificación: Es necesario para que tengas la seguridad de que tu plugin sea eficiente, escalable y fácil de mantener. Entre estas prácticas están incluidas el uso de clases y funciones, la minimización de la cantidad de código y el uso de los hooks de WordPress.
▶️ Mantener el código limpio: Esto sirve para que el código sea fácil de leer y entender, puedes usar nombres de variables y funciones descriptivas.
▶️ Haz uso de los hooks de WordPress: Los hooks son una parte fundamental de su arquitectura y permiten extender y modificar el comportamiento del núcleo de WordPress. Se debe usar para integrar el plugin con el núcleo de WordPress y su modificación según tus necesidades.
▶️ Realiza pruebas exhaustivas: Antes de lanzar tu plugin al público, debes asegurarte de realizar pruebas para que no hay errores o problemas de compatibilidad. Prueba tu plugin en diferentes navegadores, dispositivos y en diferentes versiones de WordPress.
▶️ Documenta el código: Es importante documentar el código para que otros desarrolladores puedan entender lo que estás haciendo. Puedes usar comentarios para explicar cómo funciona cada sección de código.
Conclusión
Crear un plugin para WordPress desde cero parece algo difícil, ya que es una tarea compleja y requiere de conocimientos en programación y conocer ecosistema de WordPress. Además, se necesita estar preparado para solucionar problemas técnicos y saber enfrentar errores en el proceso del desarrollo.
Pero, es algo que vale la pena hacer porque puedes agregar funcionalidades específicas que no se encuentran en otros plugins. Así, podrás personalizar tu sitio web de acuerdo a tus necesidades específicas y estarás aprendiendo nuevas habilidades y tendrás mayor control sobre tu propia web.