Esto deberรญa ser fรกcil, deberรญas poder entrar en la configuraciรณn de Prestashop y marcarlo. Pero no… Estar estรก ahรญ, pero parece que lo han escondido a conciencia. Os decimos cรณmo seleccionar los campos que querรฉis que sean obligatorios en el registro de Prestashop.
Campos obligatorios en el registro de Prestashop DNI, telรฉfono cรณdigo postal.
Mรฉtodo 1.
Para seleccionar que campos, dentro de los que deja Prestashop, son obligatorios en el registro de Prestashop tienes que ir al backend a Clientes > Direcciones.
Ahรญ aparece todas las listas de direcciones de clientes registrados y, al final (casi para pasar desapercibido, tienes un campo recogido con un +, llamadoย Establecer los campos requeridos para esta secciรณn.
Pincha en el mรกs y verรกs una serie de campos que puedes seleccionar.
Siempre es mejor hacerlo de esta manera porque no retocas ni el sistema ni la plantilla.
Nota: esto deberรญa funcionar en teorรญa. A nosotros en la 1.7.42 se nos marca la casilla (telรฉfono) pero al refrescar se desmarca. No hay manera. Usamos el modo 2.
Mรฉtodo 2.
Si esto no te vale, o necesitas algรบn otro campo puedes hacerlo de esta manera.
Primero tienes que ver si es un campo de cliente o de direcciรณn. Por ejemplo telรฉfono es de direcciรณn. Los campos de direcciรณn estรกn en Address.php y el de cliente en Customer.php, ambos en el directorio clases. Te ponemos el ejemplo con el de cliente (es lo mismo en Address).
- Copia el ficheroย classes/Customer.phpย en la carpeta override/classes/Customer.php
- Edita el fichero.
- Donde pone
/**
ย ย ย ย
* @see ObjectModel::$definition
ย ย ย ย
*/
ย ย ย
public
static
$definition
=
array
(
ย ย ย ย ย ย ย
'table'
=>
'customer'
,
ย ย ย ย ย ย ย
'primary'
=>
'id_customer'
,
Vienen todos los campos. Sรณlo tienes que ponerย ‘required’ => trueย al final del campo que quieras que sea obligatorio. Por ejemplo si quieres la empresa obligatorio cambias:
'company'
=>
array
(
'type'
=> self::TYPE_STRING,
'validate'
=>
'isGenericName'
),
por
'company'
=>
array
(
'type'
=> self::TYPE_STRING,
'validate'
=>
'isGenericName','required' => true
),
Algรบn campo puede requerir mรกs modificaciones porque impliquen algรบn otro campo mรกs (por ejemplo el cumpleaรฑos incluye aรฑo, mes y dรญa).
Una vez hecho este cambio, da un error 500 si intentas dejar vacรญo el campo. En Address.php hay que modificar el fichero AddressFormat.php (copialo antes a override/classes) y meter el valor en el array required. Por ejemplo aquรญ meto al final el phone:
/** @var array Default required form fields list */
public static $requireFormFieldsList = array(
‘firstname’,
‘lastname’,
‘address1’,
‘city’,
‘Country:name’,
‘phone’,
);
En Customer.php hay que buscar la clase que valida y hacer lo mismo.
Os recomendamos los siguientes productos relacionados con la informรกtica:
Por fin!, hasta que encuentro lo que necesito, ya tenรญa algunos dรญas buscando una
informaciรณn completa. Estoy infinitamente agradecida porque
nos pudieron compartir sus conocimientos!