Inicio Informática Fecha de nacimiento, añade un selector de fecha en Prestashop

Fecha de nacimiento, añade un selector de fecha en Prestashop

Publicado por entreunosyceros
Publicado el: Última actualización:

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

Una vez más aquí. En esta ocasión vamos a ver algo sobre lo que me han preguntado esta misma semana. Según parece, en las últimas versiones de Prestashop 1.7.X los usuarios se encuentran con que a la hora de registrarse en este CMS, necesitan escribir la fecha de nacimiento. Esto en versiones anteriores no era un problema, ya que Prestashop nos ofrecía unos desplegables para seleccionar la fecha de cumpleaños. Pero esto en las últimas versiones lo han cambiado por un campo de texto, y a algunos administradores no les hace gracia (por el motivo que sea).

Fecha de nacimiento en Prestashop 1.7.7.3

Esto lo vamos a poder sustituir por otras opciones un poco más vistosas. Podremos cambiar este campo por unos desplegables (para año, mes y día) o un calendario en el que podemos indicar la fecha de nacimiento.

¿Dónde se puede cambiar el formato de fecha de nacimiento para el registro de usuarios en Prestashop?

Bueno, esto lo podemos cambiar con de forma sencilla en el archivo ../classes/form/CustomerFormatter.php. Dentro de este archivo solo necesitamos buscar la siguiente función. y cambiar la línea indicada:

function for_birthdate
if ($this->ask_for_birthdate) {
    $format['birthday'] = (new FormField())
        ->setName('birthday')
        ->setType('text')   //el campo text se debe cambiar por date o por birthday
        ->setLabel(
            $this->translator->trans(
                'Birthdate',
                [],
                'Shop.Forms.Labels'
            )
        )

Tengo que decir que esto yo lo he probado en Prestashop 1.7.7.3, y esta función se puede encontrar en la línea 201 del archivo, pero me imagino que en otras versiones la línea cambiará. Lo más rápido es buscar dentro del archivo «ask_for_birthdate».

El caso es que si cambiamos el campo ‘text‘ por «date«, guardamos el archivo y lo volvemos a subir al hosting, veremos lo siguiente en el campo «Fecha de nacimiento«:

formato date

En cambio, si en lugar de ‘text‘ escribes ‘birthday, guardas el archivo y lo subes a tu hosting, el resultado que veremos será el siguiente:

formato de fecha birthday

Personalmente a mi me gusta más la opción date, pero supongo que esto ya depende del gusto de cada cual. Tengo que reconocer que solo he probado la versión del calendatio en Prestashop 1.7.7.3, los desplegables no he tenido tiempo todavía de probarlo.

Este TIP sobre Prestashop he de decir que me lo encontré por casualidad en los foros de Prestashop.

También te puede interesar ...

Deja un comentario

* Al utilizar este formulario, aceptas que este sitio web almacene y maneje tus datos.

2 Comentarios

Lily 19 junio, 2023 - 10:37 AM

como puedo traducir los meses o en su defecto que aparezcan como numero?

Respuesta
entreunosyceros 2 julio, 2023 - 2:17 AM

Prueba a buscar en acceder a la administración de PrestaShop –> Localización –> Traducción de mensajes ?

Respuesta

Adblock Detectado!!

Ayúdanos deshabilitando la extensión AdBlocker de tu navegador para visitar esta web.
Si no sabes hacerlo en Chrome, consulta el siguiente enlace. Si utilizas Firefox, puedes consultar este otro enlace.
Esto mejorará tu experiencia en este sitio web.