Cómo crear plugins para WordPress: amplía tu CMS

El hecho de que WordPress sea tan popular no solo depende de que este sistema de gestión de contenidos sea de código libre, tenga una sencilla instalación y sea fácil de manejar. El enorme éxito de este CMS se atribuye también a su escalabilidad. Ya desde la versión 1.2, que apareció 4 meses después de que la primera versión estable saliera a la luz, WordPress fomentó el desarrollo de plugins propios. De esta manera, los programadores han tenido la posibilidad de adaptar el CMS a las necesidades individuales sin necesidad de modificar el propio texto fuente. Desde entonces, se han programado y publicado más de diez mil plugins para WordPress, por lo que, el entonces software para blogs permite hoy adecuarse de manera flexible a la concepción y gestión de páginas web.

Las ventajas de programar plugins para WordPress

Debido a las numerosas extensiones, en su mayoría gratuitas, que WordPress pone a disposición de los usuarios en su directorio de plugins, no parece que exista la necesidad de desarrollar plugins nuevos para WordPress. Si buscas las extensiones adecuadas para tu proyecto web, te darás cuenta rápidamente de que hay muchos WordPress plugins que satisfacen tus criterios de búsqueda, aunque hay otros que:

  • ya no se desarrollan,
  • ya no funcionan como se espera,
  • o ya no cuentan con las funciones necesarias.

Es por este motivo que ocuparse de la programación en WordPress y crear plugins propios o modificar otros ya existentes para adaptarlos a las propias necesidades puede ser la opción más adecuada. Además, las extensiones propias son una alternativa excelente para la ampliación de las funciones de la instalación de WordPress con ayuda de los cambios realizados en el archivo functions.php de los temas que se usen. Si copiar los fragmentos de código para integrar Google Analytics, por ejemplo, es el camino más rápido y sencillo para ampliar WordPress, en los proyectos complejos, en cambio, esto puede ocasionar que el archivo functions.php se complique excesivamente y cause errores en todo el proyecto. Asimismo, si cambias el tema, has de aplicar todos los cambios otra vez, lo que trae consigo mucho trabajo. Por el contrario, los plugins propios que permiten administrar cómodamente todos los ajustes realizados, pueden adoptarse sin muchos problemas cuando se cambia el tema. Estos pueden desarrollarse aun cuando no se tengan conocimientos avanzados sobre programación. 

Paso 1: crear el plugin para WordPress

WordPress se basa en el lenguaje de programación PHP, por lo que los plugins para el CMS no son más que meros scripts de PHP. Una extensión sencilla puede constar de un único archivo PHP con unas pocas líneas de código, y solo habrá que tener en cuenta las limitaciones propias de la concesión de licencias en programación. Puesto que WordPress está sujeto a la GNU General Public License (GPL), hay que escoger una licencia compatible con esta, como por ejemplo GPLv2. Para estandarizar el código de los plugins, además, se han formulado las siguientes normas de codificación, cuyo cumplimiento no es estrictamente obligatorio, aunque sí conveniente cuando se quieren publicar plugins. A continuación te mostramos cómo proceder si quieres crear tu propio plugin para WordPress:

1. Lo primero es crear un archivo PHP. Para ello puedes utilizar cualquier programa de texto como el editor estándar (más adelante y en lo relativo al trabajo con las líneas de código, se recomienda un programa más específico como Notepad++). A la hora de guardar el trabajo, haz clic en “Todos los archivos” y añade la terminación .php, como por ejemplo mi-plugin.php. Copia el archivo en el directorio de plugins de la instalación de WordPress  (normalmente /wp-content/plugins/). Para obtener una mejor estructuración, especialmente en el caso de los scripts que tienen más de un archivo, se recomienda crear una subcarpeta para tu plugin: /wp-content/plugins/mi-plugin.

2. En el archivo puedes insertar las primeras líneas con los datos generales de tu plugin:

<?php
/*
Plugin Name: NOMBRE DEL PLUGIN
Plugin URI: ENLACE AL PLUGIN
Description: DESCRIPCIÓN DEL PLUGIN
Versión: 1.0
Author: TU NOMBRE
Author URI: ENLACE A TU PÁGINA WEB 
License: GPLv2
*/
?>

3. En principio, el primer paso ya se ha completado, con lo que ya has creado tu primer plugin para WordPress. Para encontrarlo, ve a tu página de administración de WordPress y busca en la lista de plugins, donde también aparecerán la descripción y los dos enlaces generados de manera automática para tu página web y para la página de plugins. Además, también podrás ver ahí el botón para activarlo o desactivarlo, aunque dichas funciones no tienen relevancia alguna en este punto, ya que todavía no se ha definido ninguna función para tu plugin.

Paso 2: cómo darle vida a los propios plugins

Una vez creado el encabezamiento del script de PHP, ya se pueden empezar a programar las funciones del plugin para WordPress. Para ello se puede utilizar, por ejemplo, el script de código ya mencionado y que quizá has insertado en el archivo functions.php. A modo de ejemplo, te mostramos una abreviación del archivo PHP con el que se ha integrado un fragmento de Google Maps:

<?php
/*
Plugin Name: NOMBRE DEL PLUGIN
Plugin URI: ENLACE AL PLUGIN
Description: DESCRIPCIÓN DEL PLUGIN
Version: 1.0
Author: TU NOMBRE
Author URI: ENLACE A TU PÁGINA WB
License: GPLv2
*/
/* Shortcode – Google Maps Integration */
function fn_googleMaps($atts, $content = null) {
   extract(shortcode_atts(array(
      "width" => 640,
      "height" => 480,
      "src" => ''
   ), $atts));
   return '<iframe width="' . $width . '" height="' . $height . '" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="' . $src . '&amp;output=embed"></iframe>';
}
add_shortcode("googlemap", "fn_googleMaps");
?>

En el atributo src introduce, entonces, el código (embed code) facilitado por Google Maps (“compartir o integrar mapa”) y, tras ello, ya habrás creado tu propio plugin de WordPress. Puedes buscarlo en el menú de navegación haciendo clic en la pestaña “Maps” y activarlo en tu proyecto web por medio del código correspondiente.

Programación en WordPress: la práctica hace al maestro

En este artículo se ha puesto de relieve que no es necesario tener conocimientos avanzados sobre PHP para programar extensiones de WordPress, aunque el ejemplo expuesto es una implementación muy sencilla. En el caso de plugins complejos que constan de más de un script se requiere algo más de trabajo. Si se trata con plugins de esta naturaleza, es conveniente proceder de una manera estructurada a fin de evitar errores o para que estos puedan encontrarse y solucionarse con rapidez. Para ello, se recomienda redactar un código limpio desde el principio e incorporar comentarios informativos que expliquen cada función de la mejor manera posible. Asimismo, el nombre del plugin también debe ser claro e intuitivo y nunca idéntico a otro que ya se haya usado previamente. 

Para obtener más información sobre la programación de plugins en WordPress, es recomendable visitar el foro de desarrolladores del software web, en lengua inglesa. El manual de WordPress Plugin Developer ofrece asistencia detallada abarcando, desde consejos de programación hasta recomendaciones sobre herramientas de desarrollo que pueden ser de gran utilidad.