Si no eres capaz de acceder a la zona de administración de WordPress pero sí que puedes hacerlo por SSH al servidor, puede que tengas algún problema con algún plugin que esté bloqueando el sitio web.
Para desactivar todos los plugins hago lo siguiente:
Me conecto a la base de datos con un usuario con permisos en esa base de datos
# mysql -u[miusuario] -p Enter password:
A continuación veo qué bases de datos tengo en el servidor para encontrar la base de datos objetivo:
mysql> show databases;
Selecciono la base de datos que quiero usar:
mysql> use mi_base_de_datos;
Lo siguiente es ver las tablas que tiene la base de datos, por si estamos usando un prefijo para el nombre de las tablas de la base de datos distinto a “wp_”. La tabla que busco es la de opciones, cuyo nombre tiene que finalizar con “_options”:
mysql> show tables;
Supongamos que la tabla se llama “wp_options”. Para ver el listado de plugins activados ejecuto:
mysql> SELECT * FROM wp_options WHERE option_name='active_plugins' \G;
El parámetro “\G” de la consulta SQL es para que MySQL formatee de una forma más inteligible al humano la salida de la consulta.
En el campo “option_value” aparecen todos los plugins activados.
Para desactivar todos los plugins simplemente ejecuto la sentencia SQL:
mysql> UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';
A partir de este momento tengo todos los plugins de ese WordPress desactivados. Si el problema era de algún plugin de WordPress el sitio ahora funcionará, por lo que me queda por hacer para detectar cuál es el plugin problemático:
- Acceder al backend de WordPress con un usuario administrador.
- Ir habilitando los plugins de uno en uno hasta descubrir cuál es el que tira el sitio web.
- Volver a ejecutar estos pasos, pero sin volver a activar el plugin problemático.