Soporte » Guías – Resolución de problemas » Fatal error tras actualizar PHP 8.0

  • ¡Hola! Desde mi hosting llevan semanas avisándome de que mi actual versión de PHP (7.4) expira el viernes 25 de noviembre y que debo actualizarla a la 8.0

    El problema es que, cuando hago esto, a los pocos minutos mi web deja de funcionar y solo aparece este mensaje:

    Fatal error: Uncaught ArgumentCountError: Too few arguments to function WP_Widget::_construct(), 0 passed in /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-widget-factory.php on line 62 and at least 2 expected in /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-widget.php:163 Stack trace: #0 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-widget-factory.php(62): WP_Widget->_construct() #1 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/widgets.php(115): WP_Widget_Factory->register(‘social_enamored…’) #2 /customers/8/6/5/lapizdeele.com/httpd.www/wp-content/themes/enamoredfree/inc/widgets.php(280): register_widget(‘social_enamored…’) #3 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-hook.php(308): register_social_enamoredfree(») #4 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array) #5 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #6 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/widgets.php(1854): do_action(‘widgets_init’) #7 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-hook.php(308): wp_widgets_init(») #8 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array) #9 /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #10 /customers/8/6/5/lapizdeele.com/httpd.www/wp-settings.php(617): do_action(‘init’) #11 /customers/8/6/5/lapizdeele.com/httpd.www/wp-config.php(118): require_once(‘/customers/8/6/…’) #12 /customers/8/6/5/lapizdeele.com/httpd.www/wp-load.php(50): require_once(‘/customers/8/6/…’) #13 /customers/8/6/5/lapizdeele.com/httpd.www/wp-admin/admin.php(34): require_once(‘/customers/8/6/…’) #14 /customers/8/6/5/lapizdeele.com/httpd.www/wp-admin/about.php(10): require_once(‘/customers/8/6/…’) #15 {main} thrown in /customers/8/6/5/lapizdeele.com/httpd.www/wp-includes/class-wp-widget.php on line 163

    Tengo todos los plugins y temas actualizados. ¿Alguien sabe de qué se trata a través de este mensaje? Estoy muy preocupada porque quedan 4 días y no encuentro la solución 🙁

    Muchisimas gracia de antemano.
    Ana.

    • Este debate fue modificado hace 4 días, 23 horas por lapizdeele.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 4 respuestas - de la 1 a la 4 (de un total de 4)
  • Moderador Jose Luis

    (@jose64)

    Hola.

    Bienvenida al foro de soporte. Las versiones de PHP no expiran, seguramente se trate de una recomendación o que tu proveedor no lo permita, no creo que tu proveedor de hosting no permita usar la versión 7.4 de PHP simplemente por razones comerciales. En todo caso deberías aclararlo con tu proveedor de hosting.

    El tema que tienes instalado no lo encuentro en el repositorio, por lo que no puedo hacer pruebas. WordPress es totalmente complatible con PHP 8.0, así que te recomiendo pruebes cambiándo el tema por uno de los temas por defecto y veas el resultado, es posible que el problema venga de ahí.

    Comenta si tienes alguna duda y, por favor, recuerda marcar el debate como resuelto cuando así lo consideres, de esta forma nos ayudas a mantener el foro al día.

    Iniciador del debate lapizdeele

    (@lapizdeele)

    Muchas gracias, Jose Luis, por tu respuesta. Te lo agradezco mucho.

    El tema se llama Enamored free, aquí hay algo de info (https://themesinfo.com/wordpress-theme-enamoredfree-bdd-b9jys).

    En cuanto a mi proveedor (one.com), recibí este mensaje de ellos: ¡Atención! El 28 noviembre de 2022, PHP 7.4 será permanentemente eliminado de nuestros servidores. Después de esa fecha ya no podrá cambiar de nuevo a la versión 7.4. Por ello debe asegurarse de solucionar cualquier problema antes de esa fecha.

    Confundí el día 25 con el 28 pero igualmente me parece bastante apurado que no den con el error y mi web pueda fastidiarse en cuestión de días si no damos con el problema.
    Si finalmente lo soluciono, compartiré por aquí cuál era el error.

    Muchísimas gracias por tu comentario de nuevo.

    Moderador Jose Luis

    (@jose64)

    Hola.

    Tienes que cambiar el tema, el enlace que compartes ya lo había revisado y no tiene ninguna información específica sobre el tema, ni los enlaces internos llevan a información referente a la descarga o actualizaciones, por lo que yo al menos asumo que el tema está discontinuado y es muy posible que no soporte la versión 8 de PHP.

    Haz una copia de seguridad de tu web y descárgala a tu ordenador, eso te servirá para poder trabajar en un entorno local con ella usando, por ejemplo, LocalWP, así puedes hacer pruebas con algún otro tema. Yo te diría que empezases por uno de los temas que WordPress instala por defecto, uno de los que empiezan por twenty, o por Storefront que es un tema diseñando específicamente para tiendas con WooCommerce.

    Una vez encuentres un tema que se adapte a tus necesidades cámbialo y haz los ajustes en la web.

    Iniciador del debate lapizdeele

    (@lapizdeele)

    Muchísimas gracias por el consejo. Así haré y contaré qué ha pasado finalmente.

    Por arrojar un poco más de luz al tema del proveedor de hosting con la versión vieja de PHP, acabo de recibir un email diciendo esto de nuevo:

    Queremos recordarle que a partir del 28 noviembre de 2022 la versión 7.4 de PHP –que usa actualmente para lapizdeele.com- ya no será compatible. Todos los sitios web que usen la versión 7.4 en esa fecha se actualizarán automáticamente a la versión 8.0 de PHP.
    
    Le instamos a actualizar PHP para lapizdeele.com antes del 28 noviembre de 2022.
    
    La razón por la que PHP 7.4 ya no será compatible se debe a que ha alcanzado el final de su vida útil, por lo que su uso ya no será seguro. Consulte nuestra guía para más información sobre por qué necesita actualizar PHP.

    En fin, espero dar con la clave antes del día de marras y que el problema sea, efectivamente, el tema.

    Muchísimas gracias de nuevo por tomarte tu tiempo para ayudar.

Viendo 4 respuestas - de la 1 a la 4 (de un total de 4)
  • Debes estar registrado para responder a este debate.