Trabajo mucho con Elegant Themes, y casi siempre todos son vantajas.

Ahora bien, me he encontrado con un problemilla, cuando se hace clic en ENVIAR formulario de contacto vacío, aparece este error:

  • Fill Name field
  • Fill Email Address field
  • Invalid email
  • Fill Subject field
  • Fill Captcha field
  • Fill Message field

¿Cómo traducir todo esto para que quede más bonito?

En primer lugar, traducir los campos es fácil con cualquier plugin de idiomas, por ejemplo WPML, o si se quiere hacer a lo bruto, editando la página (page-contact.php), buscaremos lineas tales como estas:

<input type="text" name="et_contact_name" value="<?php if ( isset($_POST&#91;'et_contact_name'&#93;) ) echo esc_attr($_POST&#91;'et_contact_name'&#93;); else esc_attr_e('Name','InStyle'); ?>" id="et_contact_name" class="input" />

y las cambiaremos por:

<input type="text" name="et_contact_name" value="<?php if ( isset($_POST&#91;'et_contact_name'&#93;) ) echo esc_attr($_POST&#91;'et_contact_name'&#93;); else esc_attr_e('NOMBRE TRADUCIDO','InStyle'); ?>" id="et_contact_name" class="input" />

Con ello tendremos parte de la traducción hecha..pero ¿Cómo cambiar el resto del mensaje?

wp-content/themes/NOMBRE-DE-LA-PLATILLA/epanel/page_templates/js/et-ptemplates-frontend.js (aquí encontraremos el código que usa para devolveros el error:

$et_inputs.each(function(index, domEle){
			if ( jQuery(domEle).val() === '' || jQuery(domEle).val() === jQuery(this).siblings('label').text() ) {
				jQuery(domEle).addClass('et_contact_error');
				et_contact_error = true;

				var default_value = jQuery(this).siblings('label').text();
				if ( default_value == '' ) default_value = et_ptemplates_strings.captcha;

				et_message += '<li> Rellena' + default_value + ' correctamente.</li>'; ////TRADUCCIÓN EDITADA
			}
			if ( (jQuery(domEle).attr('id') == 'et_contact_email') && !et_email_reg.test(jQuery(domEle).val()) ) {
				jQuery(domEle).removeClass('et_contact_error').addClass('et_contact_error');
				et_contact_error = true;

				if ( !et_email_reg.test(jQuery(domEle).val()) ) et_message += '<li>Email incorrecto.</li>'; ////TRADUCCIÓN EDITADA
			}
		});

Editando esas 2 lineas de código todo arreglado:

  • Rellena Nombre correctamente.
  • Rellena Email correctamente.
  • Email incorrecto.
  • Rellena Asunto correctamente.
  • Rellena Captcha correctamente.
  • Rellena Mensage correctamente.