Cuando creas sitios web para clientes, los plugins desactivados accidentalmente pueden causar problemas graves.
Desactivar un plugin esencial puede romper funciones importantes o incluso hacer que un sitio no sea utilizable. Por eso es tan importante controlar quién puede desactivar plugins.
Probé estos métodos para conflictos de permisos de usuario, visibilidad de menús y fiabilidad de ejecución de hooks para asegurarme de que tu sitio se mantenga seguro:
- Usa los roles predeterminados de WordPress para limitar el acceso
- Crea roles personalizados con permisos específicos
- Agrega código personalizado para proteger plugins individuales
En esta guía, te mostraremos exactamente cómo evitar que los clientes desactiven plugins de WordPress. Estos pasos son sencillos y funcionan en cualquier sitio de WordPress.

Resumen: Puedes evitar que los clientes desactiven plugins usando el rol predeterminado de Editor de WordPress, creando roles personalizados con el plugin Members, o usando WPCode, el mejor plugin de fragmentos de código para WordPress. Estos métodos ayudan a proteger funciones importantes como copias de seguridad y seguridad contra desactivaciones accidentales.
¿Por qué evitar que los clientes desactiven plugins de WordPress?
Cuando creas sitios web para clientes, probablemente instalas plugins esenciales en cada sitio. Estos podrían incluir plugins de seguridad como Wordfence o Sucuri que protegen contra hackers y código malicioso.
Podrías usar plugins como Duplicator, el mejor plugin de copias de seguridad y migración de WordPress utilizado por más de 1 millón de sitios web, o UpdraftPlus para automatizar tareas de mantenimiento de WordPress como la creación de copias de seguridad regulares.
Si un cliente desactiva accidentalmente uno de estos plugins, su sitio web podría quedar vulnerable a ataques o afectar su funcionalidad. He visto sitios caerse porque un cliente desactivó un plugin de caché, causando sobrecarga del servidor durante picos de tráfico.
En el peor de los casos, deshabilitar plugins de seguridad o de copias de seguridad justo antes de un hackeo o un fallo del servidor puede resultar en pérdida permanente de datos. Aunque esto no sea tu culpa, crea una mala experiencia para el cliente que podría dañar tu reputación.
Veamos cómo puedes evitar que los clientes desactiven plugins accidentalmente en WordPress.
Simplemente usa los enlaces rápidos a continuación para ir directamente al método que deseas usar:
Método 1: Usar los roles de usuario predeterminados de WordPress (no se requiere plugin)
Por defecto, solo los Administradores de WordPress pueden desactivar plugins. Esto significa que puedes controlar el acceso a los plugins gestionando quién tiene privilegios de administrador en el sitio.
WordPress incluye un sistema de gestión de usuarios integrado donde cada usuario tiene diferentes capacidades según su rol asignado.
Cuando instalas WordPress, crea estos roles de usuario automáticamente:
- Administrador (control total del sitio, incluida la gestión de plugins)
- Editor (puede publicar y gestionar todo el contenido, pero no puede gestionar plugins)
- Autor (puede publicar y gestionar solo sus propias publicaciones)
- Colaborador (puede escribir y gestionar sus propias publicaciones, pero no puede publicar)
- Suscriptor (solo puede gestionar su perfil)
Por defecto, solo el rol de Administrador tiene permiso para gestionar plugins, lo que incluye activarlos y desactivarlos.
Recomiendo crear una única cuenta de administrador para tus clientes para que tengan una forma de administrar sus sitios. Luego puedes crear cuentas no administradoras para cualquier otra persona que necesite acceso pero no requiera privilegios de administrador.
Sin derechos de administrador, la mayoría de tus clientes no podrán desactivar plugins. Puedes usar cualquier rol para las cuentas no administradoras.
Sin embargo, normalmente asigno el rol de Editor a mis clientes porque les da la capacidad de crear, editar, publicar y eliminar contenido, incluido el contenido creado por otras personas. Esto puede mejorar el flujo de trabajo editorial y ayudar a los clientes a gestionar su nuevo sitio de manera efectiva.
También es una buena idea darle la cuenta de Administrador a alguien que tenga experiencia con WordPress y entienda cómo administrar un sitio web de forma segura.
Para crear una cuenta para uno o más clientes, ve a Usuarios » Añadir nuevo en el panel de WordPress. Luego puedes escribir información sobre la persona, incluyendo su nombre y dirección de correo electrónico.

Hecho esto, abre el menú desplegable Rol y elige el rol que deseas asignar a este usuario, como Administrador o Editor.
Cuando estés satisfecho con la información que has introducido, haz clic en 'Añadir nuevo usuario'.

Para crear más cuentas, simplemente sigue el mismo proceso descrito anteriormente. Para más información sobre este tema, consulta nuestra guía sobre cómo añadir nuevos usuarios a tu blog de WordPress.
Método 2: Usar el plugin Members (crear un rol de cliente personalizado)
A veces, es posible que necesites evitar que los clientes desactiven complementos sin restringir su acceso a otras áreas del panel de WordPress.
Dicho esto, los roles de usuario integrados pueden no ser adecuados para tu sitio web. Por ejemplo, los Editores no pueden desactivar plugins, pero tampoco pueden añadir nuevos usuarios o instalar temas de WordPress, lo que puede ser un problema para tus clientes.
Si los roles de usuario predeterminados no son los adecuados para tu cliente, puedes crear un rol personalizado que tenga los permisos exactos que necesita. Incluso puedes crear diferentes roles para diferentes equipos o empleados individuales.
La forma más fácil de crear roles personalizados es usando el plugin gratuito Members. Con más de 300,000 instalaciones activas, Members te permite crear nuevos roles y luego añadir y eliminar capacidades a esos roles de usuario, incluida la capacidad de activar y desactivar plugins de WordPress.
Al quitar este permiso, se oculta la configuración de Plugins en el menú de la izquierda, como se puede ver en la siguiente imagen.

Lo primero que necesitas hacer es instalar y activar el plugin Members. Para más detalles, consulta nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.
Tras la activación, ve a Members » Add New Role.

En el campo 'Enter role name' (Ingresar nombre del rol), escribe el nombre que deseas usar. Este será visible para cualquier persona con acceso al panel de administración de WordPress.
Después de eso, es hora de otorgar y denegar permisos.
La columna izquierda muestra todos los diferentes tipos de contenido, como bloques reutilizables y productos de WooCommerce. Simplemente haz clic en una pestaña y verás todos los permisos para ese tipo de contenido.
Luego, puedes marcar la casilla ‘Otorgar’ o ‘Denegar’ para cada permiso. Para obtener instrucciones más detalladas, consulta nuestra guía sobre cómo agregar o eliminar capacidades de usuario.

Para evitar que los clientes desactiven complementos, haz clic en la pestaña 'Complementos' a la izquierda.
En esta pantalla, marca la casilla ‘Denegar’ en la línea que dice ‘Activar Plugins’. La capacidad “Activar Plugins” es el permiso principal de WordPress que controla tanto la activación como la desactivación de plugins. Al denegar esta única capacidad, evitas ambas acciones.

Probé esta configuración en varios sitios de clientes y confirmé que los usuarios a los que se les denegó este permiso no pueden acceder al menú de Plugins ni modificar el estado de ningún plugin.
Cuando estés satisfecho con la configuración del rol de usuario, haz clic en 'Agregar rol'.
Ahora puedes asignar este rol a cualquier usuario, siguiendo el mismo proceso descrito en el Método 1.
Método 3: Usar PHP personalizado (evitar que los clientes desactiven plugins específicos)
Si deseas evitar que los clientes desactiven todos los complementos, puedes usar uno de los métodos mencionados anteriormente.
Sin embargo, a veces, es posible que desees proteger plugins esenciales específicos mientras sigues permitiendo que los clientes desactiven y eliminen software no esencial.
La mejor manera de proteger plugins específicos es agregando código personalizado en WordPress. Esto te permite eliminar el enlace ‘Desactivar’ para plugins específicos.
Este es un método avanzado que requiere editar código PHP y comprender las rutas de los archivos. Un error de sintaxis en tu código podría dañar tu sitio, por lo que recomiendo usar WPCode para una implementación más segura en lugar de editar los archivos del tema directamente.

Limitación importante: Este código elimina el enlace visible ‘Desactivar’ pero no proporciona protección completa. Los usuarios aún pueden desactivar plugins protegidos a través del menú desplegable de Acciones en bloque, o usando herramientas avanzadas como FTP o phpMyAdmin. Para una protección completa donde los usuarios no puedan desactivar plugins por ningún método, usa el Método 1 o el Método 2 para eliminar por completo la capacidad de activate_plugins. Sin embargo, ocultar el enlace de desactivación aún dificulta mucho que los clientes desactiven accidentalmente un plugin esencial.
Para empezar, necesitarás saber el nombre del archivo del plugin y dónde se encuentra en tu servidor. Típicamente, estos archivos usan el nombre del plugin seguido de .php y se encuentran dentro de una carpeta con el nombre del plugin. Por ejemplo, el archivo de WooCommerce se llama woocommerce.php y se encuentra dentro de una carpeta woocommerce.
Sin embargo, aún vale la pena verificarlo, especialmente si el plugin tiene un nombre largo y complicado o varias palabras.
Por ejemplo, si estás usando el plugin SearchWP para mejorar los resultados de búsqueda de tu sitio, entonces su archivo se llama `searchwp.php` y se encuentra en la carpeta `searchwp`.
Puedes verificar el nombre y la ubicación del archivo conectándote al servidor del sitio usando un cliente FTP como FileZilla, o puedes usar el administrador de archivos en el panel de control de tu hosting de WordPress.
Si es la primera vez que usas FTP, puedes ver nuestra guía completa sobre cómo conectarte a tu sitio usando FTP.
Después de eso, ve a /wp-content/plugins/. Aquí verás todos los plugins diferentes en tu sitio.

Simplemente encuentra el plugin que deseas proteger y abre su carpeta.
Después de eso, encuentra el archivo .php.

Ahora, toma nota del nombre de la carpeta y del archivo .php, ya que usarás esta información en tu código. Simplemente repite este proceso para cada plugin que desees proteger.
Hecho esto, es hora de agregar un fragmento de código a tu sitio. A menudo, encontrarás guías que te pedirán que agregues código al archivo functions.php del sitio.
Sin embargo, esto no se recomienda, ya que errores simples pueden causar innumerables errores comunes de WordPress. También perderás el código personalizado cuando actualices tu tema de WordPress.
Ahí es donde entra WPCode.
Es el mejor plugin de fragmentos de código utilizado por más de 2 millones de sitios web de WordPress. WPCode facilita la adición de CSS, HTML, PHP personalizados y más sin los riesgos de editar los archivos del tema directamente. Para más detalles, consulta nuestra reseña completa de WPCode.
Lo primero que debes hacer es instalar y activar el plugin gratuito WPCode. Para más detalles, consulta nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.
Tras la activación, dirígete a Snippets de código » Añadir Snippet.

Aquí, verás todos los fragmentos prefabricados que puedes agregar a tu sitio. Estos incluyen un fragmento que te permite deshabilitar completamente los comentarios, subir tipos de archivo que WordPress normalmente no admite, deshabilitar páginas de adjuntos y mucho más.
En su lugar, pasa el ratón sobre ‘Añadir tu código personalizado’ y luego selecciona ‘Usar fragmento’ cuando aparezca.

Para empezar, escribe un título para el fragmento de código personalizado. Puede ser cualquier cosa que te ayude a identificar el fragmento en el panel de WordPress.
Después de eso, abre el menú desplegable ‘Tipo de código’ y selecciona ‘Fragmento de PHP’.

Ahora, estás listo para añadir el PHP personalizado.
El código exacto variará según los complementos que estés protegiendo, pero aquí tienes una plantilla que puedes usar. Este tutorial se probó con WordPress 6.7 y WPCode 2.1.16 a partir de febrero de 2026:
add_filter( 'plugin_action_links', 'disable_plugin_deactivation', 10, 4 );
function disable_plugin_deactivation( $actions, $plugin_file, $plugin_data, $context ) {
// Check if the 'deactivate' action exists in the actions array
// and if the current plugin matches our protected plugins list
if ( array_key_exists( 'deactivate', $actions ) && in_array( $plugin_file, array(
'wpforms/wpforms.php', // WPForms contact form plugin
'woocommerce/woocommerce.php' // WooCommerce eCommerce plugin
)))
unset( $actions['deactivate'] ); // Remove the deactivate link
return $actions;
}
Este fragmento deshabilita la desactivación para WPForms y WooCommerce. Para proteger otros plugins, simplemente reemplaza ‘wpforms/wpforms.php’ y ‘woocommerce/woocommerce.php’ con las carpetas y nombres de archivo que obtuviste en el paso anterior.
Para deshabilitar la desactivación de más complementos, simplemente agrégalos a la matriz. Por ejemplo:
'wpforms/wpforms.php', // WPForms contact form plugin
'woocommerce/woocommerce.php', // WooCommerce eCommerce plugin
'service-box/service-box.php' // Service Box plugin
)))
Después de eso, desplázate hasta la sección ‘Inserción’. WPCode puede añadir tu código a diferentes ubicaciones, como después de cada publicación, solo en el frontend o solo en el administrador.
Solo necesitas usar el código PHP en el área de administración de WordPress, así que haz clic en ‘Insertar automáticamente’ si aún no ha sido seleccionado. Luego, abre el menú desplegable ‘Ubicación’ y elige ‘Solo administrador’.

Después de eso, estás listo para desplazarte hasta la parte superior de la pantalla y hacer clic en el interruptor ‘Inactivo’ para que cambie a ‘Activo’.
Finalmente, haz clic en ‘Guardar fragmento’ para que el fragmento de PHP se active.

Ahora, si seleccionas ‘Plugins’ en el menú de la izquierda, verás que el enlace ‘Desactivar’ se ha eliminado para esos plugins.
Si necesitas restaurar los enlaces de 'desactivar' en cualquier momento, puedes deshabilitar el fragmento de código. Simplemente ve a Fragmentos de código » Todos los fragmentos y haz clic en el interruptor junto a tu fragmento para cambiarlo de azul (habilitado) a gris (deshabilitado).

Ahora puedes desactivar estos plugins yendo al menú Plugins .
También puedes desactivar plugins protegidos usando phpMyAdmin o un cliente FTP. Esta puede ser una buena solución si deseas eliminar un plugin específico pero no quieres deshabilitar completamente el fragmento de código y dejar todos tus plugins protegidos vulnerables.
Para obtener más información, consulta nuestra guía sobre cómo desactivar todos los plugins cuando no se puede acceder a WP-Admin.
Preguntas Frecuentes
¿Aún pueden los clientes desactivar complementos usando FTP o phpMyAdmin?
Sí, los tres métodos de este tutorial evitan la desactivación de complementos solo a través del panel de administración de WordPress. Los usuarios con acceso FTP o a la base de datos aún pueden desactivar complementos renombrando la carpeta del complemento a través de FTP o cambiando el estado del complemento en la base de datos.
Para una seguridad completa, también debes limitar el acceso FTP y a la base de datos solo a administradores de confianza. La mayoría de los proveedores de alojamiento te permiten crear cuentas FTP separadas con permisos restringidos.
¿Funcionarán estos métodos en WordPress Multisite?
Sí, pero con diferencias importantes. En WordPress Multisite, solo los Super Administradores pueden administrar complementos en toda la red por defecto.
Los administradores de sitios individuales no pueden activar ni desactivar complementos a menos que el Superadministrador les otorgue la capacidad de “Administrar complementos”. Los métodos 2 y 3 de esta guía funcionan en multisitio para controlar el acceso del Superadministrador o proteger complementos específicos de todos los administradores.
¿Qué sucede si me bloqueo accidentalmente?
Si eliminas tus propias capacidades de administración de complementos por error, puedes restaurar el acceso usando FTP o el administrador de archivos del panel de control de tu hosting. Conéctate a tu sitio, navega a /wp-content/plugins/members/ y renombra la carpeta del complemento Members a algo como members-disabled.
Esto desactiva el complemento Members y restaura los permisos predeterminados de WordPress. Para el Método 3 usando WPCode, renombra la carpeta del complemento WPCode para deshabilitar temporalmente tu código personalizado.
¿Qué método es mejor para principiantes?
Recomendamos el Método 1 (usando roles predeterminados de WordPress) para la mayoría de los principiantes porque no requiere complementos ni código. Simplemente asigna a tus clientes el rol de Editor, y no podrán desactivar ningún complemento.
Si los clientes necesitan capacidades más avanzadas, como agregar usuarios o instalar temas, mientras aún protegen los complementos, entonces usa el Método 2 con el complemento Members. El Método 3 se reserva mejor para usuarios experimentados que necesitan control granular sobre complementos específicos.
Recursos Adicionales:
Los siguientes son algunos recursos adicionales seleccionados que pueden resultarte útiles al administrar sitios de clientes.
- Cómo hacer marca blanca en tu panel de administración de WordPress
- Cómo crear un informe SEO para tu sitio de WordPress
- Cómo solucionar CSS roto en el panel de administración de WordPress
- Cómo crear un panel de control para clientes en WordPress
Esperamos que este artículo te haya ayudado a aprender cómo evitar que los clientes desactiven los plugins de WordPress. También te puede interesar nuestra guía definitiva sobre cómo ocultar elementos de menú innecesarios en el administrador de WordPress y las mejores aplicaciones móviles para administrar tu sitio de WordPress.
Si te gustó este artículo, suscríbete a nuestro Canal de YouTube para ver tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.

Jiří Vaněk
Esta es una muy buena idea. Muchas veces he creado un sitio web para alguien que funcionaba perfectamente, solo para que el cliente informara problemas más tarde porque deshabilitó plugins que pensaba que no eran necesarios. Para estas situaciones, donde como administrador necesito que la gestión técnica sea únicamente mi responsabilidad, esta es una gran solución, aparte de la opción de roles de usuario. Gran artículo, y gracias por él.
GRACIAS A DIOS JONATHAN
Esto es genial, pero creo que para mí no es necesario hacer eso. Tus clientes deben tener control absoluto sobre sus sitios web, excepto cuando te dicen que sigas manteniéndolo para ellos.
Lo que deberías hacer en su lugar es decirles exactamente los plugins que son muy importantes para la función principal del sitio web y cuáles no deben ser eliminados. Y también decirles de qué deben tener cuidado y aconsejarles que contraten a un experto para que se encargue de los aspectos técnicos y también para que realicen copias de seguridad regulares.
Jiří Vaněk
Por un lado, lo entiendo, pero por otro, es una espada de doble filo. Entregué sitios web a clientes con total libertad, pero a veces surgían situaciones en las que un cliente hacía cambios en el sitio, como desinstalar un plugin, y luego te devolvía el sitio diciendo que no funcionaba. Tenías trabajo extra y, a menudo, nadie te pagaba por ello. Por lo tanto, como salvaguarda, entiendo esto perfectamente y creo que es importante diferenciar entre los clientes que son técnicamente competentes y los que no. También está bien ser transparente con ellos sobre por qué está configurado de esta manera. Muchos lo entenderán y, de hecho, se alegrarán de que no puedan "romperlo" tan fácilmente.
Ibrahim Rumani
Pero con este método, los plugins aún se pueden deshabilitar mediante opciones masivas.
Soporte de WPBeginner
The disable option should be removed from the dropdown of the bulk action options
Administrador
Bart Kuijper
Tanto el artículo como el código son útiles y proporcionan algunas ideas interesantes. Sin embargo, es importante tener en cuenta que, utilizando el código de ejemplo, los administradores aún pueden deshabilitar fácilmente los plugins simplemente marcando la casilla delante de uno o más plugins y luego seleccionando 'Desactivar' en la lista desplegable 'Acciones masivas'.
Soporte de WPBeginner
Gracias por informarnos, nos aseguraremos de actualizar el código cuando podamos.
Administrador