Problema al visualizar página web, pantalla en blanco en WordPress

pantalla en blanco wordpress

Pantalla en blanco en WordPress, no se visualiza nada en la web, solo se descarga un archivo cuando intentas acceder a tu sitio, este error inesperado suele pasarle a muchos cuando usas WordPress.

En este post voy a mencionarte las posibles causas de este error y la solución.

Este error no tiene nada que ver con tu computadora o el tipo de navegador o versión que uses.

De hecho si ingresas a cualquier otra web podrás comprobar que no se trata de ningún error del navegador que actualmente usas o tu conexión a Internet.

Este tipo de evento suele mostrar un aviso de Error 500, Internal Server Error o la página en blanco.

Así que toca buscar el motivo ¿Por qué tu web basada en WordPress no carga?

En resumen o hay un problema con tu proveedor de hosting o tienes algún error en tu instalación WordPress.

La primera pregunta que debes hacerte, ¿He hecho algún cambio reciente en WordPress lo cual haya conllevado a ese error?

Si ese es el caso basta con revertir los cambios para que la web vuelva a funcionar correctamente como lo hacía antes.

Este artículo supone que ya está familiarizado con la funcionalidad básica de WordPress y con la edición de ficheros en su proveedor de hosting.

Error luego de actualizar la versión WordPress

Si no has hecho ningún cambio a nivel de código, pero si se actualizo automáticamente WordPress.

Ya deberías saber que WordPress es un CMS muy popular y por ello es un blanco de ataque para los hackers, y siempre está actualizándose para arreglar bug.

A veces estas actualizaciones no pueden sobrescribir algunos ficheros del directorio de tu instalación porque los permisos de ficheros y directorios no son los adecuados.

Lo que conlleva a que tu web caiga y te muestre un error PHP o la Pantalla en blanco (Pantalla de la muerte) donde si intentas acceder por lo general se descarga un archivo el cual si lo abres en el bloc de notas de Windows o cualquier editor de texto.

Te encontraras con el siguiente código.

<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */

/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define('WP_USE_THEMES', true);

/** Loads the WordPress Environment and Template */
require( dirname( __FILE__ ) . '/wp-blog-header.php' );
<?

Si tu web posee el archivo robots.txt o el sitemap.xml comprueba ingresando a la dirección correspondiente al robots y al sitemap de tu dominio. Si logra mostrar correctamente el archivo robots y el sitemap y no la pantalla en blanco. Significa que no hay un error en la base de datos por ahora y el motivo es otro.

Es muy probable que el archivo .htaccess este corrupto para comprobar esta teoría simplemente debes crear otro fichero limpio .htaccess.

Antes de realizar eso debes renombrar el antiguo .htaccess a .htaccess_web (puedes editarlo con cualquier nombre lo importante es distinguir el nuevo que crearas del viejo).

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Ya creado el nuevo .htaccess ingresa nuevamente a la dirección de tu web y si la web vuelve a funcionar normalmente entonces el problema radicaba en el .htaccess ahora solo te queda averiguar en qué línea del código .htaccess que renombraste está el error y corregirlo.

Falta de Memoria en WordPress

Si lo anterior no soluciono el error y tu web sigue mostrando pantalla en blanco en todas las páginas, puede ser debido a un problema de falta de memoria en tu instalación de WordPress y es uno de los errores más habituales.

Solucionar este error es sumamente sencillo solo basta con aumentar la memoria y ya, pero este error es causado por la instalación de ciertos Plugins que exigen alto consumo de memoria y de CPU en tu instalación de WordPress por lo que siempre debes tener cuidado con los Plugins que instalas.

Accediendo a cPanel o utilizando un cliente de FTP o cualquier medio que uses para ver los ficheros de instalación de WordPress, buscamos el fichero llamado default-constants.php que se encuentra en la carpeta wp-includes.

¿Y por qué este archivo y no el típico wp-config.php?

Existe mucha documentación en donde te indican que para aumentar la memoria límite de WordPress debes editar el fichero wp-config.php o el php.ini pero esto realmente no soluciona el problema.

Por lo que el fichero que realmente necesitamos modificar es default-constants.php

Haz clic en el para editarlo y podrás notar que es default-constants.php quien limita nuestra memoria a solo 40 MB.

$current_limit     = @ini_get( 'memory_limit' );
	$current_limit_int = wp_convert_hr_to_bytes( $current_limit );

	// Define memory limits.
	if ( ! defined( 'WP_MEMORY_LIMIT' ) ) {
		if ( false === wp_is_ini_value_changeable( 'memory_limit' ) ) {
			define( 'WP_MEMORY_LIMIT', $current_limit );
		} elseif ( is_multisite() ) {
			define( 'WP_MEMORY_LIMIT', '64M' );
		} else {
			define( 'WP_MEMORY_LIMIT', '40M' );
		}
	}

Tan solo tienes que cambiar el valor 40M en la linea define( 'WP_MEMORY_LIMIT', '40M' ); por los 64M recomendados y listo problema resuelto.

Pero ten en cuenta que de nada servirá aumentar la memoria a 64M si en el servidor no se ha subido por eso revisa o consulta con tu proveedor cuál es la memoria PHP asignada a tu cuenta de hosting o instala un plugins que te mostrara la memoria PHP asignada.

El plugins Server IP & Memory Usage Display te informa de la memoria del hosting, la que tiene asignada WordPress, la IP y la versión PHP instalada.

Aunque existen otros plugins para monitorear estos valores, este es el más simple y es tan fácil que solo tienes que instalarlo, activarlo y mirar la parte inferior de tu panel de administración WordPress para que veas la RAM consumida en ese momento.

Los plugins  para detectar estos valores no son muy exactos, si eres de los que instala y activa nuevos plugins, activando Server IP & Memory Usage Display de vez en cuando podrás tener una idea de la memoria que esta consumiendo tu web WordPress.

Error en el Tema o en un Plugins

Si aumentando la memoria de WordPress, o creando un nuevo fichero htaccess no logras deshacerte de la pantalla en blanco entonces es muy probable que lo que este fallando sea tu tema actual o algún Plugins.

Para descartar que sea algún Plugins accede al directorio wp-content y renombra la carpeta Plugins a Plugins-web, después de cambiar el nombre accede nuevamente a tu sitio para verificar si deja de mostrar la pantalla en blanco.

Si tu web no depende excesivamente de algún Plugins entonces mostrara tu web correctamente, y sabras que es un plugins el que esta causando el problema ya sea porque se ha actualizado y dicha actualización contiene algún error o un plugins que has instalado recientemente.

Cambiar el nombre de la carpeta Plugins obviamente dejaran de funcionar todos los plugins.

Toca crear otra carpeta con el nombre plugins e ir moviendo dentro de la misma un plugins a la vez de la carpeta que renombraste plugins-web para detectar cual es el plugins que esta fallando.

De haber alguno que este causando el error, las posibles causas son como describí anteriormente hubo un error en una actualización o el plugins no esta configurado de manera correcta.

Por lo que si es un error de actualización la solución es borrar el plugins e instalarlo nuevamente, pero si es una mala configuración tienes que buscar la documentación que proporciona el desarrollador para arreglar el problema.

Si pasaste todos los plugins a la carpeta y no es ningún plugins y persiste el problema toca revisar si es el tema actual que usas, si es un tema que posee actualizaciones es posible que tu web ha dejado de funcionar porque la actualización del tema contiene un error fatal.

Para detectar si el problema es el tema realizamos el mismo procedimiento hecho con los plugins ir al directorio wp-content/themes y renombrar la carpeta correspondiente al nombre de tu tema, ejemplo MyTheme a MyTheme-web.

Luego ingresas nuevamente a la dirección de tu web. Para verificar si se muestra correctamente, obviamente cargara con un tema por defecto por ejemplo el (Twenty Sixteen) esto sucede porque WordPress se ve obligado a usar algún tema instalado por haber renombrado el nombre del tema principal y cree que lo has desinstalado.

Si detectaste que el problema es el tema reinstala el tema que usas nuevamente o cámbialo por otro, si lo compraste a un desarrollador y este posee garantías comunícate con él para que te resuelva el problema del tema lo más pronto posible.

Siempre es recomendable no eliminar todos los temas por defecto que trae WordPress cuando lo instalas, dejar al menos uno por si el tema que usa tu web falla por algún error de código y necesites activar un tema mientras solucionas el problema.

Desactiva el archivo wp-cron.php

El wp-cron.php de WordPress es un administrador de tareas virtual, que se ejecuta cada vez que se cargan las páginas, básicamente se encarga de:

  • Buscar automáticamente actualizaciones de WordPress, Plugins y Plantillas instaladas.
  • Enviar pingbacks.
  • Publicar artículos que hayas programado en una fecha especifica.
  • Realizar copias de seguridad, entre otros.

Pero esta ejecución tiene un pequeño inconveniente y esta relacionado con el rendimiento de recursos del CPU del servidor. Si tu sitio web tiene elevado trafico, el cron de WordPress se ejecutara exorbitantemente agotando los recursos del CPU, lo que conlleva a generarse los errores “500, servicio no disponible”, o en el peor de los casos que te suspendan la cuenta de hosting.

Para prevenir o solucionar el error 500 lo que haremos sera desactivar el wp-cron.php de WordPress y activar un cron job desde cPanel.

Para desactivar wp-cron.php tienes que acceder al directorio raíz de tu instalación WordPress y ubicar el fichero wp-config.php para editarlo y agregar la siguiente linea:

/** Desactivar fichero wp-cron.php */

define('DISABLE_WP_CRON', true);

Justo debajo de ***define('DB_COLLATE', ''); como se muestra a continuación.

<?php
/**
 * The base configuration for WordPress
 *
 * The wp-config.php creation script uses this file during the
 * installation. You don't have to use the web site, you can
 * copy this file to "wp-config.php" and fill in the values.
 *
 * This file contains the following configurations:
 *
 * * MySQL settings
 * * Secret keys
 * * Database table prefix
 * * ABSPATH
 *
 * @link https://codex.wordpress.org/Editing_wp-config.php
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'database_name_here');

/** MySQL database username */
define('DB_USER', 'username_here');

/** MySQL database password */
define('DB_PASSWORD', 'password_here');

/** MySQL hostname */
define('DB_HOST', 'localhost');

/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');

/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');

/** Desactivar fichero wp-cron.php */

define('DISABLE_WP_CRON', true);


/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!

Guardamos los cambios y listo el wp-cron.php no se ejecutara repetitivamente sin haber creado un cron-jobs desde cPanel.

Activa el modo Debug

Si todo lo anterior no soluciona el problema, activa el modo debug de WordPress, que básicamente es un modo en el que se mostrarán los errores de la web al intentar acceder a ella.

Para ello, abre el fichero wp-config.php y busca la siguiente línea:

define( 'WP_DEBUG', false );

Una vez localizada, solo debes cambiar la palabra false por true.

define( 'WP_DEBUG', true );

Y guardar los cambios. Recarga tu web y ya no veras la pantalla en blanco sino avisos del tipo warning o notice, pero los que te tienen que preocupar son los avisos que dicen fatal error.

Un ejemplo:

Fatal error: Class ‘nombre_de_funcion_’ not found in /url-de-servidor/httpdocs/wp-content/themes/nombre-de-tema/carpeta/archivo.php on line 102

Este es un error en un tema, donde indica que hay un error en la linea 102, la manera más fácil de solucionar el problema es cambiar el tema por otro, pero como no queremos cambiar el diseño de la web lo ideal es corregir el error que se muestra en la linea 102.

Si ves que no hay ningún error, vuelve a colocar la palabra false a la linea del archivo wp-config.php.

Conclusión

En definitiva estos son los principales problemas causantes del error de pantalla en blanco en WordPress. Espero que esta información te sirva para solucionar el problema, si no sabes cómo hacerlo o tienes alguna duda deja un comentario.

Comparte esto en:

Ayúdame a mejorar, califica este artículo con un voto

(4 votos, promedio: 5,00 de 5)
Cargando…

También te puede interesar

Deja un comentario

Tenga en cuenta que todos los comentarios de este blog se moderan de acuerdo con la política de comentarios, y su dirección de correo electrónico NO se publicará, así que transcurrirá un tiempo entre su escritura y publicación. NO use palabras clave en el campo de Nombre. Y por favor no envíe su comentario dos veces.

Información básica sobre Protección de Datos
Responsable: Samuel Marcano +info
Finalidad: Moderar los comentarios a los artículos publicados en el blog. +info
Legitimación: Consentimiento del interesado +info
Destinatarios: No se comunicarán datos a persona u organización alguna. +info
Derechos: Tiene derecho a Acceder, rectificar, así como otros derechos, como se explica en la información adicional. +info
Plazo de conservación de los datos: Indefinidamente.
Información adicional: Puede consultar la información adicional y detallada sobre Protección de Datos Personales en la Política de Privacidad +info

Centro de preferencias de privacidad

Cookies Imprescindibles

Su usan para el correcto funcionamiento de la web como mostrarte el contenido más rápido y tus preferencias de privacidad.

gdpr, gawdp, __cfduid

Cookies de Terceros

Usamos cookies de terceros que se almacenan externamente para conocer su hábitos de navegación, si ya estás suscrito al boletín, y los elementos compartidos en redes sociales

1P_JAR, APISID, CONSENT, HPSID, NID, SAPISID, SID, SIDCC, SSID
1P_JAR, APISID, CONSENT, HPSID, NID, SAPISID, SID, SIDCC, SSID