En las últimas semanas, hemos explicado cómo crear temas propios para WordPress. Para seguir profundizando en nuestros conocimientos avanzados sobre este gestor de contenidos a la hora de crear una web, ahora abordamos un tema un poco más complejo, la creación de plugins, para el que necesitaremos también varios artículos, pero al que nos enfrentaremos paso a paso y de manera sencilla y práctica.
Aunque ya este primer artículo vamos a comenzar creando un primer plugin muy sencillo, nunca está de más empezar estos tutoriales explicando qué es un plugin y por qué nos puede interesar aprender a desarrollarlos.
¿Qué es un plugin de WordPress?
Para modificar un sitio basado en WordPress, podemos hacerlo básicamente a través de dos formas distintas: crear un tema y crear un plugin. Con el tema gráfico, las modificaciones serán principalmente estéticas. Sin embargo, algunas modificaciones no están tan dirigidas a cambiar el aspecto, sino a añadir funcionalidades, de modo que WordPress sea capaz de alterar su manera de funcionamiento, creando secciones totalmente diferentes de las existentes, o implementando funcionalidades que extiendan las que el CMS ya ofrece. Para eso son los plugins, paquetes de código que extienden la funcionalidad del core de WordPress. Como siempre en WordPress, están creados mediante código PHP y, en ocasiones, algo de HTML y CSS. Lo que nunca, bajo ningún concepto, deberíamos hacer es modificar el core de WordPress, puesto que en ese caso, cuando se actualice el CMS, perderíamos los cambios.
Es posible crear plugins de todo tipo, como uno que te muestre un post aleatorio de tu sitio. También a partir de plugins podemos crear lo que se llaman Custom Post Type, que permite a WordPress gestionar unidades de contenido totalmente personalizadas. De ellos ya hablamos en artículos como Los Custom Post Type o entradas personalizadas de WordPress o Cómo mostrar los Custom Post Type de WordPress y sus campos personalizados
Los plugins están compuestos de uno o varios archivos de código. El principal archivo debe contener una pieza de código como cabecera, que indique datos sobre ese plugin en concreto.
Cómo empezar a desarrollar un plugin
Desarrollar para WordPress es sencillo. Es uno de los motivos por los que el CMS ha tenido tanta aceptación. Comencemos desarrollando un clásico «Hola mundo» para entender cómo sería el plugin más básico posible.
El primer paso será crear un nuevo directorio en la carpeta de los plugins wp-content/plugins. Por ejemplo, hola-mundo. Allí crearemos el archivo principal del plugin, que debe tener el mismo nombre del plugin con extensión .php. El árbol de carpetas sería parecido a esto:
En el archivo hola-mundo.php tenemos que colocar la cabecera del plugin, con información acerca del plugin, sus autores, etc. Esta cabecera se coloca por medio de un comentario, en el archivo principal del tema. A continuación, tienes el código que podrías usar:
<?php /* Plugin Name: Hola Mundo Arsys Description: Un plugin simple desarrollado con fines didácticos Author: Arsys Internet Author URI: https://www.arsys.es/ Version: 0.0.0 */
Ahora, si te diriges a la sección de administración de WordPress > Plugins > Plugins instalados, verás que, automáticamente, ya dispones de tu primer plugin en el listado.
Agregar funcionalidades a un plugin
Nuestro plugin hasta el momento no ha hecho nada todavía, sólo lo hemos bautizado. Así que vamos a agregar una pequeña funcionalidad como test. En este punto, entran en juego los denominados hooks (ganchos en inglés), enganches a ciertos puntos del flujo de ejecución de WordPress y en los que podemos introducir la ejecución de nuestras propias funciones. En próximos artículos, hablaremos con mayor detalle de los hooks. Por ahora, solo vamos a usarlos de una manera resumida. Para ello, vamos a usar una función llamada add_action(), que nos permite lanzar funciones que serán ejecutadas en el instante que nosotros indiquemos.
function hola_mundo() { echo 'Hola Mundo!!'; } add_action('admin_notices', 'hola_mundo');
En el código anterior hemos creado una función y a continuación la hemos enganchado a admin_notices, por lo que se ejecutará en el momento de colocar notificaciones en el admin de WordPress.
Una vez grabado el archivo hola-mundo.php, vamos a activar el plugin y ver lo que pasa.
Se activa el plugin en el listado de plugins.
Ya activado, podrás ver en la parte de notificaciones del admin el mensaje Hola Mundo!! que habíamos generado mediante el plugin. Esta funcionalidad es muy sencilla pero, sin duda, es una buena base para empezar a desarrollar plugins tan complejos como necesitemos.
¡Con esto hemos creado nuestro primer plugin! En nuestro próximo artículo sobre creación de plugins profundizaremos en el uso de los hooks.