LucusHost, el mejor hosting

LucusHost, el mejor hosting

Agregar funcionalidades a través de un plugin de funciones en WordPress

Publicado el 19 de julio de 2020
Actualizado el 21 de marzo de 2023

Hay varias maneras de personalizar tu WordPress con funcionalidades propias. Sin embargo, la forma correcta de hacerlo es a través de un plugin de funciones que no dependa del tema de WordPress que estés usando en tu instalación.

Todas las funciones que añadas al archivo functions.php del tema usado en tu instalación de WordPress se perderán en el momento en que éste se actualice.

Así que, lo mejor es separar las funcionalidades añadidas que necesites del propio código de la plantilla. Y la mejor solución para ello es crear un plugin de funciones en WordPress específico para funcionalidades.

¿Qué es un plugin de funciones?

Un plugin de funciones es un plugin que tú mismo puedes crear para incorporar todas las modificaciones o funcionalidades que necesites a través de tus propias funciones de WordPress y que se ejecuta independientemente del tema que tengas instalado.

Esto tiene dos ventajas:

  1. Evita recargar en exceso el fichero functions.php.
  2. El código se ejecuta aunque cambies de tema de WordPress.

En este plugin de funciones personalizado deberías incorporar todas las funcionalidades que no dependan de la plantilla WordPress que tengas activada.

Cómo crear un plugin de funciones en WordPress

Ya hemos visto que un plugin de funciones de WordPress no es más que un plugin WordPress pero solo con las funciones y fragmentos de código que aporten funcionalidades que te interese incluir en tu sitio web.

Sin embargo, dependiendo del tipo de funcionalidades que incluya, dicho plugin se puede incluir en WordPress de dos maneras:

  1. Como un plugin normal, instalado en la carpeta plugins de tu WordPress.
  2. Como un plugin de uso obligatorio, que se instala en la carpeta mu-plugins y tiene ciertas particularidades.
Plugins de uso obligatorio en WordPress

Plugin de funciones en WordPress como plugin normal

Si quieres que tu plugin de funciones se comporte como el resto de plugins que tienes instalados, debes crearlo dentro de la carpeta de Plugins de tu instalación de WordPress.

Para ello, sigue los siguientes pasos:

  • Crea el archivo PHP del plugin con tu editor de texto o de código preferido en una carpeta. Tanto el nombre de la carpeta como el del archivo pueden ser los que tu quieras, pero ten en cuenta que no deben contener espacios ni caracteres especiales.
  • Comprime la carpeta en formato .zip
  • Sube tu plugins de funciones a tu instalación de WordPress a través de la opción del menú de administración Plugins > Añadir nuevo y actívalo.

También puedes subir tu plugin de funciones a tu instalación de WordPress mediante FTP, a través de la correspondiente sección del panel de control de tu servicio de alojamiento web o usando un plugin de gestión de archivos desde el panel de administración de WordPress.

Plugin de funciones de uso obligatorio (mu-plugin)

Este tipo de plugin se diferencia de los plugins normales en que se ejecuta obligatoriamente y antes que cualquier otro plugin, no se puede desactivar y consta de un archivo PHP único que se instala en la carpeta wp-content/mu-plugins de tu instalación de WordPress.

En él deberías incluir las funciones que sean imprescindibles para el buen funcionamiento de tu sitio web o aquellas que no quieres que puedan ser desactivadas.

Este tipo de plugin no se puede instalar a través de la opción de añadir nuevo plugin de WordPress, por lo que tendrás que subirlo a través de FTP o del gestor de archivos de tu alojamiento web.

Para ello, navega por el explorador de archivos hasta la carpeta wp-content/mu-plugins de tu instalación de WordPress. Si no existe dicha carpeta, créala. Una vez allí, sube el archivo PHP de tu plugin de funciones directamente en la misma carpeta.

Puedes tener varios mu-plugins en dicha carpeta, pero no pueden estar en subcarpetas como los plugins normales.

Una vez que tengas instalado tu plugin de funciones de uso obligatorio, éste aparecerá en la sección imprescindibles del área de plugins del administrador de WordPress.

Plugin de funciones en WordPress de uso obligatorio

Cómo editar tu plugin de funciones en WordPress

Cada vez que necesites añadir una función o snippet de código a tu plugin de funciones personalizado, debes editarlo y volverlo a subir a tu instalación de WordPress.

Aunque podrías hacerlo mediante un control de versiones, como un plugin comercial o del repositorio, de momento no nos vamos a complicar tanto la vida.

Así que simplemente edita el archivo PHP de tu plugin en tu ordenador y súbelo a tu instalación de WordPress mediante cualquiera de los métodos indicados anteriormente.

Ten en cuenta que, si usas la opción de subir plugin del panel de administración de WordPress, tendrás que desactivar y borrar la versión anterior del plugin antes de hacerlo o instalar el plugin Update Theme and Plugins from Zip File que permite subir plugins sin que WordPress dé error de carpeta ya existente.

[ACTUALIZACIÓN] Desde la versión 5.5, WordPress permite subir plugins desde un archivo .zip sin tener que borrar la versión anterior. Así que ya no es necesario instalar ningún plugin para ello.

También puedes editar directamente el plugin desde el administrador de archivos de tu servicio de alojamiento web o mediante un plugin de gestión de archivos en tu instalación de WordPress.

Yo uso Advanced File Manager, que permite editar, borrar, subir, descargar, comprimir (zip), copiar, etc. y otras operaciones con archivos. No se necesita cPanel ni FTP y puedes acceder a los archivos dentro y fuera del directorio raíz de WordPress.

Advanced File Manager de WordPress

Contenido mínimo de un plugin de WordPress

Tanto si es un plugin de WordPress normal como de uso obligatorio (mu-plugin), para que sea reconocido como tal por el CMS debe incluir una cabecera en la que se indique el nombre del mismo.

Sin embargo, en dicha cabecera se suele incluir también información sobre el nombre del autor, página web del mismo, tipo de licencia, etc.

Esto se hace mediante un comentario inicial que suele tener la siguiente forma:

<?php
/*
Plugin Name: Funciones
Description: [NO DESACTIVAR]  Funciones imprescindibles para el funcionamiento del sitio.
Version: 1.0
Author: Tu nombre
Author URI: https://tuweb.ext
License: GPLv2 o posterior
*/

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Salir si se accede directamente (medida de seguridad)
}Lenguaje del código: PHP (php)

A partir de ahí ya puedes añadir las funciones o snippets de código PHP que doten a tu instalación de WordPress de las funcionalidades que necesites.

En el código anterior, por ejemplo, he incluido una función de seguridad que evita que se pueda acceder directamente al archivo PHP.

En el caso de un plugin de WordPress normal, podrías registrar el CSS o Javascript necesario para tus funcionalidades, pero eso lo veremos en otro tutorial.

Plugin de funcionalidades personalizadas para descargar

Si quieres partir de la base que suelo usar, puedes descargar mi plugin de funciones para WordPress.

Incluye la base mínima para que WordPress lo reconozca como un plugin y algunas opciones para poder cargar tu propio CSS y Javascript.

  • Descarga el archivo desde el enlace anterior
  • Descomprímelo y modifícalo según tus necesidades
  • Vuelve a comprimirlo en formato .zip
  • Instálalo en tu WordPress a través de la opción del menú Plugins > Añadir nuevo

Resumiendo

Crear un plugin de WordPress para añadir funciones personalizadas es muy fácil y con ello evitas que se rompa tu instalación cuando se actualice la plantilla que estés usando o quieras cambiar de tema.

Recuerda que, si es un plugin de uso obligatorio, debes subirlo directamente a la carpeta wp-content/mu-plugins de tu instalación y que sólo puede ser un archivo PHP.

Si se trata de un plugin de WordPress normal, lo mejor es crear una carpeta con el nombre del plugin y, dentro de la misma, situar un archivo PHP (que puede tener el mismo nombre o no) y el resto de elementos necesarios, como imágenes, CSS o JavaScript.

En este caso, puedes comprimir dicha carpeta en formato .zip y subir el plugin mediante la opción de añadir nuevo del panel de administración de WordPress.

Así pues, ya puedes investigar mis soluciones y tutoriales y copiar y pegar código como un profesional en tu plugin de funciones personalizado.

Eso sí, antes de hacer cualquier modificación, recuerda hacer una copia de seguridad de tu base de datos.

Te recomiendo

Libros que me ayudan

Donde alojo mis sitios web

LucusHost, el mejor hosting

LucusHost, el mejor hosting

Sitio alojado en un servidor verde según The Green Web Foundation

LucusHost, el mejor hosting

LucusHost, el mejor hosting

Aviso legal | Condiciones de contratación | Política de privacidad | Política de cookies
© 2017-2024 · Jose R. Bernabeu ·
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram