Hola @alba_auto, el enfoque para eliminar esos campos es una combinación de Back Office y una pequeña modificación en la plantilla, como bien han apuntado @nataliabici29 y @jaimeiberia.
Primero, asegúrate de haber configurado el Back Office de PrestaShop 1.7.7.2 correctamente:
- Fecha de Nacimiento y Ofertas de Socios: Ve a Parámetros de la tienda > Clientes > Clientes y desactiva las opciones "Mostrar campo de fecha de nacimiento" y "Requerir aceptación de ofertas de socios".
- Título Social (Sr./Sra.): Ve a Parámetros de la tienda > Clientes > Títulos y asegúrate de que no haya títulos activados, o elimínalos si es posible.
Una vez hecho esto, PrestaShop ya no los considerará obligatorios.
Luego, para asegurarte de que no se rendericen en el frontend, debes crear una anulación en tu tema hijo (si lo tienes, que es lo recomendable) de themes/classic/templates/customer/_partials/customer-form.tpl. Si no usas tema hijo, modifica directamente el archivo, pero ten en cuenta que las actualizaciones del tema pueden sobrescribirlo. Busca los bloques específicos para id_gender, birthday, newsletter y optin (ofertas de socios) y envuélvelos en una condición if $field.required. De esta forma, si el campo no es requerido por la configuración del BO, no se mostrará en el formulario.
Aquí tienes un ejemplo de cómo podrías modificar el customer-form.tpl para estos campos. Este código iría dentro del block name='form_field' principal, reemplazando tus intentos de comentar:
{block name='form_field'}
{if $field.name == 'id_gender'}
{* Solo muestra el título social si es requerido (o si hay títulos activos) *}
{if $field.required}
<div class="form-group row">
<label class="col-md-3 form-control-label">{l s='Social title' d='Shop.Forms.Labels'}</label>
<div class="col-md-6 form-control-valign">
{foreach from=$field.available_values item='label_gender' key='id_gender'}
<label class="radio-inline">
<span class="custom-radio">
Con esta modificación, el campo solo se renderizará si PrestaShop lo considera required (es decir, si lo tienes activado en el Back Office). Al desactivar las opciones en el BO, $field.required será false para esos campos y no se mostrarán.