Solucionar “Trying to get property of non-object» en Prestashop

error prestashop

Hola, es muy probable que estes recibiendo el error “Trying to get property of non-object» en tu página Prestashop.

Si tienes un ecommerce con actualización automática de los productos desde la web del  proveedor, este error puede surgir en cualquier momento.

Veamos este error esta diciendo que estas tratando de «tomar una propiedad desde algo que no es un objeto» y eso debe ser revisado.

Recibes este error porque tienes activado el modo debug.

Si tu página se ve y funciona bien, es muy probable que puedas obviar este warning y otros de su tipo.

Por eso, si no quieres sumirte en el código, basta con desactivar el modo DEBUG, de tu pagina para no recibir más el error.

MODO DEBUG ¿que es PRESTASHOP?

El Modo DEBUG en PrestaShop,  es una  variable con la cual se puede activar o desactivar el modo de depuración.

Mediante ella, podemos visualizar todos los  mensajes de depuración y avisos PHP, que están diseñados para que  el desarrollador pueda detectar  errores, que de otro modo no veria.

En este link puedes escribirme si necesitas algún tipo de colaboración Contacto

Desactivar el modo DEBUG

Para desactivar el modo DEBUG, debemos acceder por FTP a nuestra tienda y modificar el archivo “defines.inc.php”.

Su ubicación es “directorio/config/defines.inc.php”.

En este caso directorio es el directorio raíz donde hemos instalado PrestaShop.

La variable “_PS_MODE_DEV_,  es la que que activa el modo DEBUG,  y posee dos valores “TRUE= activado” y “FALSE= desactivado”

Una vez dentro  solo deberemos cambiar la linea:

define(‘_PS_MODE_DEV_’, true);

y cambiar el valor de True a False:

define(‘_PS_MODE_DEV_’, false);

El modo DEBUG, dejara de estar activo y los errores dejaran de llegar.

Sabiendo esto ya puedes activar o desactivar el modo DEBUG a tu voluntad para evaluar errores.

Fue tu amor, más difícil y más fallo, que un contrabando de gallos, pasando al amanecer.

W. Chirino

Error «Premature end of data in tag badges line 1 in country_module_list.xml file» en Prestashop 1.6

error prestashop

El error «Premature end of data in tag badges line 1 in country_module_list.xml file», puede aparecer en Prestashop 1.6, de manera imprevista y sin aparente causa.

Este suele venir acompañado de otros errores, en un listado que es más o menos como el que vemos a continuación:

  1. Error found : StartTag: invalid element name in country_module_list.xml file.
  2. Error found : Premature end of data in tag badges line 1 in country_module_list.xml file.
  3. Error found : Premature end of data in tag module line 1 in country_module_list.xml file.
  4. Error found : Premature end of data in tag modules line 1 in country_module_list.xml file.
  5. Error found : CData section not finished Allow the purchase of combinations of products wit in must_have_module_list.xml file.
  6. Error found : Premature end of data in tag additional_description line 1 in must_have_module_list.xml file.
  7. Error found : Premature end of data in tag module line 1 in must_have_module_list.xml file.
  8. Error found : Premature end of data in tag modules line 1 in must_have_module_list.xml file.

La solución a este error es una acción combinada que incluye estos tres pasos:

Eliminar estos archivos en /config/xml 

Limpiar la cache de nuestra tienda

Acceder a al archivo classes siguiendo la ruta public_html/classes y modificar estas líneas.

protected static $is_addons_up = true;
    public static function addonsRequest($request, $params = array())
    {
        return false;
        if (!self::$is_addons_up) {
            return false;

La causa de este error en PS 1.6 parece ser que el servidor de addons(complementos), crea archivos xml, no válidos o no reconocibles como válidos.

Espero que este post ayude a alguien.

Gracias

También yo tengo esos momentos en los que soy asesino, juez y victima.

Y.