Cómo arreglar el error 500 en WordPress

Categoría: WordPress

El error 500 en WordPress suele aparecer como pantalla blanca, mensaje genérico o HTTP ERROR 500 después de actualizar un plugin, cambiar de tema o tocar wp-config.php. La causa real está en el log o en WP_DEBUG; sigue este flujo para encontrarla rápido.

Antes de empezar

  • Acceso a cPanel y a la administración de WordPress (/wp-admin/) — si no entras al admin, usa File Manager o FTP.
  • Sabe qué cambió: actualización de plugin/tema, edición manual de archivos, migración o cambio de PHP.
  • Respaldo reciente desde Backup Wizard o WP Toolkit.

Paso 0 — Activa WP_DEBUG

Sin debug activo, el sitio solo muestra “Internal Server Error”. Edita wp-config.php desde File Manager y agrega antes de /* That's all, stop editing! */:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Recarga el sitio: el log se escribe en wp-content/debug.log. Ahí verás el plugin, archivo y línea exactos.

Importante: apaga WP_DEBUG cuando termines — expone información sensible si queda activo en producción.

Causas comunes en WordPress

1. Conflicto de plugin

Un plugin nuevo (o actualizado) rompe el sitio.

Si no entras al admin, desactívalos por File Manager:

  1. Ve a wp-content/.
  2. Renombra la carpeta plugins a plugins.off.
  3. Recarga el sitio. Si carga, el problema es un plugin.
  4. Vuelve a renombrar a plugins y entra al admin (todos quedan desactivados).
  5. Activa uno por uno hasta reproducir el error.

2. Conflicto de tema

Un tema con código incompatible con tu PHP o con un plugin clave.

Si no entras al admin, fuerza el tema por defecto desde phpMyAdmin:

  1. Abre la base de datos de WordPress.
  2. En la tabla wp_options busca template y stylesheet.
  3. Cambia ambos a twentytwentyfour (o el tema por defecto que tengas en wp-content/themes/).
  4. Recarga el sitio.

Una actualización de plugin de cache o un cambio de hosting deja un .htaccess que mod_rewrite no entiende.

  1. En File Manager ve a la raíz de WordPress.
  2. Renombra .htaccess a .htaccess.old.
  3. Recarga el sitio.
  4. Si carga, entra a Ajustes → Enlaces permanentes y haz clic en Guardar cambios sin tocar nada — WordPress regenera un .htaccess limpio.

4. Memoria PHP agotada

debug.log muestra Allowed memory size of … bytes exhausted.

Edita wp-config.php y agrega:

define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

Si el límite del servidor es menor, también súbelo desde Select PHP Version → Options → memory_limit.

5. Versión de PHP incompatible

WordPress 6.x ya no soporta PHP 7.4 oficialmente.

  1. En cPanel abre Select PHP Version y cambia a PHP 8.2 o 8.3.
  2. Si un plugin viejo rompe en PHP 8, busca actualización o reemplazo; quedarte en 7.4 ya no es opción a futuro.

6. Archivos del core dañados

Migración interrumpida, FTP en modo binario o malware borraron archivos clave.

  1. Descarga la versión actual desde https://wordpress.org/download/.
  2. Sube por FTP todo excepto wp-config.php y la carpeta wp-content/.
  3. Sobrescribe wp-admin/ y wp-includes/ completos.

7. Base de datos inaccesible

debug.log muestra Error establishing a database connection.

  1. Verifica DB_NAME, DB_USER, DB_PASSWORD y DB_HOST en wp-config.php.
  2. En MySQL Databases confirma que el usuario tenga All Privileges.
  3. Si la base superó la cuota o se corrompió, soporte puede repararla.

Diagnóstico rápido (orden recomendado)

  1. Activa WP_DEBUG y revisa wp-content/debug.log.
  2. Renombra plugins/ y prueba.
  3. Renombra .htaccess y resave permalinks.
  4. Sube WP_MEMORY_LIMIT.
  5. Cambia PHP a 8.2/8.3.
  6. Si nada cambia, sube core limpio.
  7. Última opción: restaurar respaldo previo al fallo.

Verificación final

  • El frontend carga 200 en incógnito.
  • /wp-admin/ carga y permite iniciar sesión.
  • wp-content/debug.log no genera errores nuevos.
  • WP_DEBUG está apagado de nuevo.
  • Los plugins críticos están reactivados y funcionan.

Errores comunes al diagnosticar

  • Dejas WP_DEBUG activo en producción: expone rutas y versiones.
  • Reactivas todos los plugins de golpe: hazlo uno por uno o no sabrás cuál era.
  • Editas wp-config.php sin respaldo: siempre descarga una copia primero.
  • Ignoras el cache: purga LiteSpeed Cache, WP Rocket o Cloudflare después de cada prueba.
  • Confías en “está todo bien” sin abrir el log: si no leíste el log, no diagnosticaste.

¿Aún necesitas ayuda?

Si esta guía no resolvió tu caso, nuestro equipo te ayuda por ticket.