X

Generador de plugins base para WordPress

¿Quieres empezar a construir tus propios plugins de manera profesional?, ¿No sabes qué estructura usar?, en este artículo aprenderás cómo usar un servicio de generación de plugins y entenderás la estructura base que genera.

 

Generalidades

Existen diferentes alternativas que puedes usar para tener una estructura base para construir un plugin, una de las que te recomiendo es WordPress Plugin Boilerplate Generator (wppb), la ventaja de este servicio es que te renombrará todos los archivos generados con el nombre que definas al crear el plugin.

La mayoría de plugins starter o plugins de inicio siguen la misma estructura que generaremos con el servicio de wppb
Actualmente la url ha cambiado, sin embargo el proyecto de generación de plugins sigue disponible en el repositorio de Github del desarrollador con indicaciones de cómo usarlo.

 

Generación del plugin

Vamos a generar nuestro plugin con el servicio wppb, al ingresar veremos un formulario en el cual podemos llenar la metadata que tendrá el Plugin.

 
Al clickear build plugin, ya tendremos nuestro instalador, será un archivo .zip con el slug como nombre de archivo.

 
Tras instalar este archivo y ver la lista de plugins, aparecerá algo similar a lo siguiente

 

Estructura del plugin generado

El plugin generado tiene una estructura de archivos y carpetas, tal como se ve en la siguiente imagen.

 

1- Archivos en la raíz del plugin

  • En el archivo plugin-ejemplo.php podemos cambiar la metadata adicional del plugin como: descripción, versión, text-domain, etc.
  • También tenemos un archivo llamado uninstall.php para colocar código que se ejecutará al desinstalar el plugin.
Los archivos index.php en todas las carpetas son un mecanismo básico de seguridad, para no permitir el listado de archivos cuando se ve en un navegador, estos archivos index.php no tienen código.

 

2- Carpeta Includes

En esta carpeta están las clases que se usarán en el plugin, podemos agregar archivos de clases adicionales que serán reutilizados por la parte pública (public) y por la administración (admin)

  • En el archivo class-plugin-ejemplo.php puedes agregar tus hooks, acciones y filtros tanto para la parte pública como para la administración
  • El archivo class-plugin-ejemplo-loader.php permite la ejecución de los hooks, no deberías tocar este archivo
  • En el archivo class-plugin-ejemplo-i18n.php este el código para cargar el text domain del plugin, necesario para la traducción
  • class-plugin-ejemplo-activator.php y class-plugin-ejemplo-desactivator.php tienen funciones para ejecutar código en la activación o desactivación del plugin respectivamente
Verás que el archivo class-plugin-ejemplo.php ya tiene algunos hooks cargados por defecto para la parte pública como para la parte de administración, por ejemplo el registro de archivos javascript y CSS.

 

3- Carpeta Languages

Aquí irán los archivos .pot, .po y/o .mo que se usarán para las cadenas de traducción.

 

4- Carpeta Public

Esta carpeta servirá para ejecutar código que será mostrado en el front-end del sitio, unido con los hooks públicos que has definido en el archivo /includes/class-plugin-ejemplo.php

  • El archivo class-plugin-ejemplo-public.php es el archivo más importante, es el punto de entrada para la parte pública en donde definirás funciones generales
  • La carpeta partials contendrá archivos .php que serán usados usualmente como vistas para mostrar las pantallas de tu plugin
  • La carpeta css y js contendrán archivos css y javascript respectivamente que serán usado para la parte pública del plugin
La carpeta de css y js ya tiene archivos creados y registrados, la carpeta partials igualmente tiene un archivo de ejemplo creado, aunque no es utilizado.

 

5- Carpeta Admin

Esta carpeta servirá para ejecutar código que será mostrado en el back-end del sitio, unido con los hooks de administración que has definido en el archivo /includes/class-plugin-ejemplo.php

  • El archivo class-plugin-ejemplo-admin es el archivo más importante, es el punto de entrada para la parte de administración en donde definirás funciones generales
  • La carpeta partials contendrá archivos .php que serán usados usualmente como vistas para mostrar las pantallas de tu plugin en la administración
  • La carpeta css y js contendrán archivos css y javascript respectivamente que serán usado para la parte de administración del plugin
La carpeta de css y js ya tiene archivos creados y registrados, la carpeta partials igualmente tiene un archivo de ejemplo creado, aunque no es utilizado.

 

Conclusión

Partir de un plugin base es una buena práctica, ahorrarás tiempo al no partir de cero, además tendrás una estructura base que seguir y tener más organizado tu código.

 

Categorías: Recursos
Etiquetas: herramientas

Ver comentarios (4)