No te quejarás, no te he hecho esperar mucho para la segunda parte de la serie de Como crear un Plugin WordPress. Y si ayer veíamos las bases, infraestructura e información necesarias para empezar, hoy toca ponerse manos a la obra y crear nuestro primer plugin WordPress, verás que fácil es, lo vamos a crear en solo 3 pasos.
Doy por hecho que ya tienes las herramientas necesarias así que nos ponemos a ello …
Índice de contenidos
Paso 1 : Crea el archivo para tu plugin e inclúyele la información necesaria
Crea un archivo en donde estará el plugin. Si va a tener varios archivos crea una carpeta con el nombre del plugin (sin espacios ni caracteres raros, acentos, etc). Crea el archivo en el directorio ‘/wp-content/plugins/
‘ y lo llamas «ayudawordpress_plugin.php«.
Ahora añade estas líneas de código a tu plugin. En ellas le dices a WordPress que hace, como se llama, y quien es el autor.
<?php /* Plugin Name: Plugin Ayuda WordPress Plugin URI: https://ayudawp.com Description: Un plugin mas en el universo wordpresero Author: Fernando Tellado Version: 1.0 Author URI: https://ayudawp.com */ ?>
Paso 2: Crea el menú y la página del plugin
Esta parte es muy importante. Mostrará la interfaz visual de la página de configuración de tu plugin en el panel de administración de WordPress. También llevará todos los controles necesarios, como formularios, código HTML, código PHP, etcétera. Todo el proceso de tu plupgin se puede hacer en esta función.
Primero creamos un menú de administración:
function menu_plugin_ayudawordpress(){ add_admin_menu("Plugin Ayuda WordPress", "Título de Plugin Ayuda WordPress", 10, "plugin_ayuda_wordpress", "pagina_plugin_ayuda_wordpress"); }
El primer parámetro ‘add_admin_menu
‘ es el título del menú del plugin, el segundo parámetro es el título de la página del plugin, el tercero es el número que define el permiso de acceso, en este caso solo se permite a los usuarios con permisos de administración acceder al menú. El cuarto parámetro es el nombre de la página de tu plugin (sin espacios) y el último parámetro es la función a la que se llama para mostrar la página HTML del plugin. Se llamará a esta función cada vez que cargues la página del plugin haciendo clic en su enlace dle panel de administración.
Ahora creamos la función de la página del plugin:
function pagina_plugin_ayuda_wordpress(){ ?> <div class="wrap"> <h2>Bienvenido al Plugin Ayuda WordPress></h2> Aquí puedes poner HTML, formularios, lo que quieras. Todos los datos se enviarán y analizarán en la misma página y dentro de la función ayuda_wordpress.</div> }
Para finalizar le diremos a WordPress que añada la página y el menú de nuestro plugin al panel de administración:
add_action("admin_menu","menu_plugin_ayudawordpress");
Paso 3: Añade acciones y filtros
Este paso es opcional, dependiendo de la funcionalidad del plugin, puedes añadir tantas acciones y filtros como quieras. Este sería un ejemplo sencillo.
Puedes escribir cualquier código que quieras que se ejecute. Un ejemplo básico sería mostrar una imagen o banner antes del contenido de cada artículo. Como ya dije en el anterior artículo de la serie, puedes revisar el artículo Referencia de Acciones en Plugins WordPress.
add_action("the_content", "banner_ayuda_wordpress");
Ahora hace que se ejecute tu función:
function banner_ayuda_wordpress($content){ $banner = ''; $content = $banner . $content; return $content; }
Pues ya está, por supuesto, esto es solo la base, puedes desarrollar tu plugin hasta el infinito, de ti depende la funcionalidad y código a emplear.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Yo ya tengo mi propio plugin, aun que esta basado en el de KnxDT…
Se llama "Bookcerbos" y esta en el repositorio de plugins de WordPress.
No pondre link, para no hacer spam, pero les dejo la invitación 😉
Por cierto, muy útil la guía, la usare para cuando cree la próxima versión de Bookcerbos…
Nos podría venir bien ya que ahora queremos crear plugins y widgets con toda la información actualizada.
He probado el ejemplo y me sale el siguiente error:
Fatal error: Call to undefined function add_admin_menu() in D:AppServwwwwordpresswp-contentpluginsayudawordpress_plugin.php on line 12
¿Alguien sabe a que puede ser debido?
Muchas gracias
Bien, me contesto yo mismo después de varios días. Investigando y googleando un poco la solución llegó cambiando la función add_admin_menu() por add_menu_page().
Me fue util la información como siempre, gracias por compartir. Saludos desde Argentina y sigan asi.