¿Cómo solucionar un problema de tablero vacío en WordPress?

42

Un sitio de mi empresa utiliza un blog en WordPress 3.3.1 con un tema basado en Twenty Ten. La semana pasada actualicé Apache y PHP en nuestro servidor de producción. Luego el tablero se negó a funcionar. Cuando un usuario inicia sesión, aparece un panel en blanco. Todavía hay un menú con enlaces, pero ninguno de los enlaces funciona, por lo que no se pueden crear nuevas publicaciones, etc. En la fuente de la página veo el siguiente mensaje:

Error fatal : acceso a la propiedad estática no declarada: WP_Screen :: $ this en blog / wp-admin / includes / screen.php en la línea 706

No se realizaron cambios en la configuración de WordPress ni se instalaron complementos nuevos. ¿Cómo solucionar el problema?

Dmitry Lebedev
fuente
3
¿Por qué no va a actualizar a la versión estable actual de WordPress con soporte para las nuevas versiones de php?
bueltge

Respuestas:

83

Hay un error en WordPress 3.3.1 que causa el problema. Puede afectar también a otras versiones.

Para resolver el problema, puede actualizar WordPress a la versión estable actual y realizar pruebas de integración después. O puede hacer una corrección rápida de errores.

Para arreglar el error:

  1. Abra el archivo blog / wp-admin / includes / screen.php en su editor de texto favorito.
  2. En la línea 706 encuentre la siguiente instrucción PHP:<?php echo self::$this->_help_sidebar; ?>
  3. Reemplácelo con la declaración: <?php echo $this->_help_sidebar; ?>
  4. Guarda tus cambios.

Espero que te ayude.

Dmitry Lebedev
fuente
Gracias, solo tengo el mismo problema y lo solucioné. ¿Qué es el error en la línea de arriba? Porque inicialmente mi sitio funciona perfecto hasta que veo el error anterior.
Imran
1
@Imran El error es una referencia sintácticamente incorrecta a la propiedad '_help_sidebar' de una instancia de la clase WP_Screen. Parece que los intérpretes de PHP antes de alguna versión son indulgentes con esta declaración, pero después de actualizar a alguna versión más nueva, simplemente informe el error.
Dmitry Lebedev
Sé que se desaconsejan los comentarios de 'gracias', pero esto tardó segundos en implementarse y literalmente salvó mi blog. Este extraño problema ni siquiera aparece en mis registros de errores.
1owk3y
1

La respuesta de Dmitry de reemplazar la declaración PHP incorrecta me parece mejor:

Reemplazar <?php echo self::$this->_help_sidebar; ?>

Con <?php echo $this->_help_sidebar; ?>

wagiboy
fuente
Nunca es aconsejable realizar cambios en los archivos principales, ya que perderá el cambio en las actualizaciones y también se limitará a comentar en el hilo de respuestas, entiendo que todavía no tiene el privilegio de agregar comentarios, pero conservemos los hilos de respuesta para respuestas exclusivamente
Maruti Mohanty
2
Es cierto, pero si esta pantalla blanca de la muerte simplemente le impide actualizar a la versión donde se solucionó este error (es decir, la última :)), entonces esta es la solución más rápida. Sus cambios se sobrescribirán inmediatamente, por lo que el efecto secundario no deseado desaparece.
Attila Fulop
0

tienes tres opciones

  • Reduce el php - probablemente no te va a gustar
  • Actualiza wordpres: ¿estás ejecutando 3.3.1? es tiempo de actualización en cualquier caso
  • Solucione el error en el núcleo: no es tan malo como parece, ya que el código de "pantalla" controla la pantalla de ayuda y es posible que ya no necesite ayuda para operar wordpress.
Mark Kaplun
fuente
0

A pesar de que no ha realizado ningún cambio de configuración o agregado nuevos complementos a WordPress, actualizar la versión PHP subyacente podría estar causando un conflicto con uno de los complementos que ya ha estado utilizando con éxito.

Como no puede acceder a su panel de administración para deshabilitar los complementos, intente simplemente cambiar el nombre de su carpeta / wp-content / plugins a algo como / wp-content / plugins-OLD y luego intente acceder al administrador nuevamente.

Si puede ingresar con éxito después de deshabilitar sus complementos, puede volver a habilitarlos 1 por 1 para ver cuál es posiblemente el culpable y dejarlo deshabilitado hasta que actualice el núcleo de WordPress y el complemento en sí a las últimas versiones que espero no tenga estos problemas.

JacobN
fuente