Solución a spam por registros fraudulentos en prestashop

Enrique FactoriaDigital

Experto en Prestashop de FactoriaDigital
Miembro del equipo
Hola

Si estáis recibiendo muchos emails de clientes registrados que son claramente spam, es cierto que modificando validate.php y customer.php o añadiendo overrides , se puede corregir para minimizar que lleguen este tipo de registros en el futuro.

Para facilitar esta tarea, desde www.factoriadigital.com hemos creado un módulo que realiza estas correcciones desde el backoffice.

Novedad: hemos sacado la versión 2.0 del modulo y ahora funciona desde Prestashop 1.5.4.1 en adelante, probado también en Prestashop 1.6 y 1.7

DESCARGALO AQUÍ

O si prefieres puedes verlo en Github.

También te puede interesar este video:
COMO BORRAR MASIVAMENTE LOS REGISTROS DE CLIENTES SPAM EN PRESTASHOP

INSTRUCCIONES DE INSTALACIÓN


IMPORTANTE: El módulo funciona desde la versión de Prestashop 1.5.4.1 hasta la última 1.7

Para instalar el módulo, solo tiene que ir a Módulos, añadir nuevo módulo, subir el zip proporcionado, e instalar.

Una vez instalado, vaya a configurar el módulo y clique sobre;

"Crear archivos override"

A continuación debe aparecer el siguiente texto:

El archivo validate.php con su clase ha sido creado de forma correcta en la carpeta override
El archivo customer.php con su modificación ha sido creado de forma correcta en la carpeta override

Si sale este mensaje, los archivos se han creado de forma correcta. Y se estarán aplicando las modificaciones para solucionar el problema.

Si por el contrario, le aparece el siguiente mensaje:

El proceso de creación de archivos en la carpeta override ha fallado, porque ya existían dichos archivos

Es porque ya existen dichos archivos y hay que realizar modificaciones de forma manual, este mismo texto puedes copiarlo y pegarlo en el comentario que pongas debajo.

Agradecimientos a Doekia por su solución y script. Este módulo está basado en su trabajo

Si quereis borrar masivamente los registros de clientes de spam ya creados en PrestaShop (el modulo solo sirve para evitar futuros registros) aqui teneis un video-tutorial para hacerlo con PHPMyAdmin:

.
Saludos a todos.

================================================================

ENGLISH VERSION

If you receive spam via client registration, you can fix it manually modifying validate.php and customer.php, or adding overrides.

To make it easier tho, we at www.factoriadigital.com have created a free module that will fix this for you in Prestashop 1.6 and 1.7

New: we have released a new version of the module that will work from Prestashop 1.5.4.1 onwards, also tested in Prestashop 1.6 and 1.7

DOWNLOAD HERE

Or take a look in GitHub

MODULE INSTALLATION

IMPORTANT: This module works from Prestashop version 1.5.4.1 to 1.7

In order to install the module, you have to go to Modules > Add New Module and upload the ZIP file you downloaded.

Once installed, go to the configuration section of the module and click on:

"Create override files"

After that, you should see the following:

El archivo validate.php con su clase ha sido creado de forma correcta en la carpeta override
El archivo customer.php con su modificación ha sido creado de forma correcta en la carpeta override

That message means that the files are been created correctly.

However, if you see the following message:


El proceso de creación de archivos en la carpeta override ha fallado, porque ya existían dichos archivos

It means that these files already exist and you have to make changes manually.

Credits to Doekia for his fix & script. This module is based on his work.
Regards,
 
Última edición por un moderador:

JuanjoSC

Aprendiz de Prestashop
Fantástico, muchas gracias.

Una cosa, al descargarlo el directorio dentro del zip parece que no está bien nombrado y no se instala, editando el nombre solucionado.
 

factoriadigital

Expertos en Hosting para Prestashop
Miembro del equipo
Fantástico, muchas gracias.

Una cosa, al descargarlo el directorio dentro del zip parece que no está bien nombrado y no se instala, editando el nombre solucionado.

Gracias, lo vimos ayer también si, ahora debería funcionarte correctamente con la revisión que hemos hecho: https://github.com/factoriadigital/...eases/download/v2.0.0/factocreateoverride.zip (esta es la ultima versión aunque recomendamos usar el link del post inicial o revisar en github, ahí siempre veréis la ultima revisión).

Corrección: si os bajais las releases (lo del link de descarga que ponemos arriba) funciona correctamente, si lo bajais con el boton "clone or download" en github, entonces es cuando da el error que se corrige renombrando el directorio como comenta @JuanjoSC
 
Última edición:

Enrique FactoriaDigital

Experto en Prestashop de FactoriaDigital
Miembro del equipo
Hola Jorge,

Si ha dejado de funcionar el carrito. Tiene que ir, accediendo por FTP, a la carpeta /override/classes/ y eliminar los archivos
Customer.php
y
Validate.php

Después acceder a la carpeta /cache/

Y renombrar el archivo class_index.php por old-class_index.php

Y después comprobar que le funcione de nuevo.

Un saludo.
 

Enrique FactoriaDigital

Experto en Prestashop de FactoriaDigital
Miembro del equipo
Hola Jorge,

Tendríamos que ver que ocurre, depende imagino de la versión de prestashop que tengas, hay varias cosas que pueden influir.
Puedes ponerme un privado con los datos de acceso al admin de tu prestashop, y necesitaríamos datos de acceso al FTp, para poder darte una valoración.

Un cordial saludo.
 

EGT

Aprendiz de Prestashop
Saludos!
Cuando hago click sobre "Crear archivos override" me lleva a una página de error 404 (y no me aparecen los textos "El archivo validate.php con su clase ha sido creado..." ni tampoco "El proceso de creación de archivos en la carpeta override ha fallado...")

¿Cómo puedo solucionarlo? Muchas gracias!

WP + PS (1.6.1.6)
 

silvia_16

Aprendiz de Prestashop
Hola!
He subido el módulo que habéis puesto y he seguido todos los pasos pero cuando accedo a la página web y navego por las categorias del menú al acceder a estas me da error 404 ¿Que debo hacer? Si me podéis ayudar...no tengo ni idea de programación
 

Enrique FactoriaDigital

Experto en Prestashop de FactoriaDigital
Miembro del equipo
Hola Silvia,

En prinicipio el módulo no tiene que ver con el fallo que nos comenta.

En cualquier caso para quitar el módulo: Tiene que ir, accediendo por FTP, a la carpeta /override/classes/ y eliminar los archivos
Customer.php
y
Validate.php

Después acceder a la carpeta /cache/

Y renombrar el archivo class_index.php por old-class_index.php

Y después comprobar que le funcione de nuevo.

Un saludo.
 

juan79

Aprendiz de Prestashop
Hola, muchas gracias por la aportación....
He instalado el modulo correctamente en version 1.6.0.9 .
Pincho en configurar el modulo, y de que pincho en el enlace crear archivos override, se me abre una ventana nueva....modules/factocreateoverride/script/override.php No Found archivo no se encuentra en el servidor...
No me crea ningún archivo. override.php si lo tengo instalado en el servidor.
Como puedo solucionarlo?
Gracias.
 

Enrique FactoriaDigital

Experto en Prestashop de FactoriaDigital
Miembro del equipo
Hola EGT,
Creo que es mi mismo caso. Creo que me tocará modificar los archivos Validate.php y Customer.php a mano. ¿Algún consejo?

Muchas gracias de todas maneras!

Te explico. En los archivos del módulo, modifica el siguiente:"configure.tpl

/modules/factocreatoeverride/views/templates/admin/configure.tpl

En la linea 39:

cambia: /modules/factocreateoverride/script/override.php

por


{$base_dir}/modules/factocreateoverride/script/override.php

Un cordial saludo.
 

EGT

Aprendiz de Prestashop
Hola de nuevo (y gracias de nuevo).
Acabo de probarlo y no me funciona. Modifiqué la línea 39 del archivo y ahora está asi:

<li>{l s='Para crear los archivos en la carpeta override necesarios pinche en el siguiente enlace: ' mod='factocreateoverride'}<a href="{$base_dir}/modules/factocreateoverride/script/override.php" target="_blank">{l s='Crear archivos override' mod='factocreateoverride'}</a></li>
Pero el link lleva a la página "https://www.miweb.com/modules/factocreateoverride/script/override.php" y la tienda está en una subcarpeta (en este caso "/tienda/"). ¿Lo puedo añadir a mano antes de "/modules/"? ¿Funcionaría?
 

EGT

Aprendiz de Prestashop
Actualización:
Cuando me ha saltado el error 404 he tecleado en la barra de direcciones del navegador el "/tienda" (antes de "/modules") y me ha saltado el mensaje "El archivo validate.ph con su clase ha sido creado de forma correcta en la carpeta override El archivo customer.ph con su modificación ha sido creado de forma correcta en la carpeta override END". He comprobado la carpeta "override/classes/" y allí están los archivos Validate y Customer.

Bueno, creo que solo queda esperar a que pare el spam. Muchas gracias por la paciencia!!
 
Arriba