Explorá

Plugins y Herramientas / 5 min de lectura

¿Cuáles son los plugins “must-use” para WordPress?

PHP code

Los plugins de uso obligatorio o mu-plugins de WordPress son un tipo especial de plugin que siempre está activado y que no podés desactivar por los medios convencionales. Exploremos qué son, cómo crear uno y cómo pueden ayudarte a desarrollar y gestionar tu sitio.

¿Qué son los plugins de uso obligatorio de WordPress?

Los mu-plugins son plugins de WordPress que se activan por defecto. Se ubican en un subdirectorio de wp-content llamado mu-plugins (wp-content/mu-plugins). Si estás gestionando una red multisite, los mu-plugins se activan para todos los sitios de la red.

Los mu-plugins no aparecen si vas a Plugins > Plugins Instalados desde tu panel de administración, pero aparecen en una pestaña especial de Must-Use una vez que hayas instalado al menos un mu-plugin. Sin embargo, no podés desactivar un mu-plugin desde el panel porque cualquier plugin en wp-content/mu-plugins está activado por defecto.

La única forma de desactivar un mu-plugin es eliminándolo manualmente de su directorio.

Características y desventajas de los plugins de uso obligatorio de WordPress

La principal característica de un mu-plugin es que se activa por defecto una vez instalado (subido a la carpeta mu-plugins). Tampoco podés desinstalar mu-plugins desde la sección de Plugins Instalados en el administrador. Esto previene la eliminación accidental de funciones necesarias. Los administradores solo pueden desinstalarlos eliminando sus archivos.

Los mu-plugins se cargan antes que los plugins regulares en orden alfabético. Cualquier recurso, hook de API, etc., añadido en un mu-plugin estará disponible para los plugins regulares posteriormente.

Finalmente, los mu-plugins tienen tres desventajas significativas que vale la pena considerar:

  • Los mu-plugins no se actualizan automáticamente, no aparecen en las notificaciones de actualización y no muestran su estado de actualización en la página de Plugins Instalados. Depende completamente de vos actualizarlos.
  • Como no se activan como los plugins regulares, los hooks de activación no se ejecutan en los mu-plugins. Los hooks de activación ejecutan código de instalación para configurar reglas de reescritura, tablas de base de datos personalizadas o establecer valores de opciones por defecto. Los plugins que requieren hooks de activación pueden no funcionar correctamente si se suben a la carpeta mu-plugins. Probá tus mu-plugins a fondo antes de implementarlos en un sitio en vivo.
  • WordPress no ejecuta archivos PHP en los subdirectorios dentro del directorio mu-plugins, solo en la raíz. Como resultado, WordPress.org recomienda usar un archivo cargador proxy PHP dentro de la raíz de mu-plugins:
<?php

// mu-plugins/load.php
require WPMU_PLUGIN_DIR.'/my-plugin/my-plugin.php';

?>

¿Cómo acceder a los plugins de uso obligatorio de WordPress?

La forma más sencilla de acceder y ver los mu-plugins instalados es yendo a Plugins > Plugins Instalados > Must-Use (pestaña)

captura de pantalla mostrando la pestaña Must-Use en la sección de Plugins

En la pestaña Must-Use, vas a ver los mu-plugins instalados.

captura de pantalla mostrando un plugin Must-Use

Como podés ver, no podés activar, desactivar o eliminar mu-plugins desde el panel. La única forma de desactivar un mu-plugin es eliminándolo del directorio mu-plugins.

Recordá que esta pestaña no aparece a menos que haya al menos un mu-plugin instalado. No verás esta pestaña si no has instalado ningún mu-plugin.

¿Cómo crear e instalar un plugin de uso obligatorio de WordPress?

Crear un mu-plugin es similar a crear cualquier otro plugin, pero el proceso difiere un poco. Vamos a trabajar en los pasos para crear un mu-plugin.

Nota: ¡Recordá respaldar tu sitio antes de hacer cambios significativos!

Paso 1: Crea el subdirectorio mu-plugins en wp-content

Utilizando un panel de control provisto por tu hosting, un cliente FTP o tu entorno local, navega a wp-content y crea un nuevo directorio. Nombralo mu-plugins.

Paso 2: Crea el archivo PHP en la raíz de mu-plugins

Los mu-plugins esencialmente consisten en archivos PHP. Para habilitar uno, creá un archivo PHP en la raíz del directorio mu-plugins (recordá que WordPress solo ejecuta mu-plugins desde la raíz de mu-plugins). Podés crear tu archivo PHP en la raíz o configurar un archivo cargador proxy PHP que apunte a la ubicación de tu archivo en un subdirectorio.

En este caso, simplemente crearemos un archivo PHP en la raíz llamado test-mu-plugin.php.

Paso 3: Codifica tu plugin

Ahora es el momento de codificar tu plugin. Vamos a crear un plugin muy básico que muestra una caja de texto.

<?php

/*
Plugin Name: Test Must-Use Plugin
Description: Este es solo un test.
Author: Andy
Author URI: https://wcanvas.com/
Plugin URI: https://wcanvas.com/
Version: 1.0
*/

add_action('wp_footer', 'displayTextBox');

function displayTextBox() {
    echo '<p style="position: absolute;
    font-size: 25px;
    top: 180px;
    right: 200px;
    padding: 10px;
    background-color: #000000;
    color: #FFFFFF;">Este es un test de mu-plugin. ¡No entres en pánico!</p>';
}

?>

Así se ve en el sitio en vivo:

captura de pantalla mostrando una caja de texto insertada por un plugin Must-Use

Este es un ejemplo muy rudimentario, pero muestra lo que podés hacer con los mu-plugins.

Resumiendo

Los mu-plugins son plugins de WordPress activados por defecto, ubicados en wp-content/mu-plugins. Son excelentes para redes multisite, asegurando que el plugin se ejecute en todos los sitios de la red y que los administradores de los sitios no puedan desactivarlos. Los mu-plugins generalmente funcionan bien para añadir código que necesita ejecutarse sí o sí.

Sin embargo, tienen tres desventajas significativas: sos completamente responsable de actualizarlos, no soportan hooks de activación y deben ejecutarse desde la raíz del directorio mu-plugins.

Si sabés cuándo y cómo usarlos, los mu-plugins pueden ser muy útiles. Para más información y guías sobre WordPress, visitá nuestro blog.