Hola,
Cuando hacen un pedido, en el mensaje si ponen tildes o caracteres especiales me da error el transportista porque incluyen un &, me dicen que tengo que hacer una validación al formulario para que los datos se registren en UTF-8, ¿Como lo hago?
URL del sitio: Contenido solo visible a usuarios registrados
Hola
Qué versión exacta de PrestaShop usas?
Es probable que el theme que usas no este limpiando estos caracteres
Verifica si tienes este archivo:
themesTUTEMAtemplatescheckout_partialsstepsshipping.tpl
Prueba renombrándolo, de esta forma tomaría el archivo por defecto, la otra opción sería hacer modificaciones en el textarea, tal como se comenta en:
https://www.prestashop.com/forums/topic/611584-customer-message-on-checkout-delivery/
Prueba agregando un nuevo mensaje desde ese formulario ya que sólo servirían para los nuevos mensajes.
Saludos.
Hola,
Si renombro el fichero en mi tema, me da error 500 y no funciona la web.
No me queda claro que es lo que tengo que poner en el fichero porque he probado a incluir {if isset($message)}{$message|escape:'html':'UTF-8'}{/if} y me da error
He probado a poner así {$delivery_message|escape:'html':'UTF-8'} y no hace nada 🙁
Sigue devolviendo el texto así: Prueba, texto mañana con tíldes
Hola Carlos.
Edita el archivo Tools.php que encontraras en al carpeta classes y busca el siguiente código:
public static function htmlentitiesUTF8($string, $type = ENT_QUOTES) { if (is_array($string)) { return array_map(array('Tools', 'htmlentitiesUTF8'), $string); } return htmlentities((string) $string, $type, 'utf-8'); }
Modifica el código por el siguiente:
public static function htmlentitiesUTF8($string, $type = ENT_QUOTES) { if (is_array($string)) { return array_map(array('Tools', 'htmlentitiesUTF8'), $string); } return htmlspecialchars((string)$string, $type, "UTF-8"); //USE htmlspecialchars NOT htmlentities }
Por lo que veo es un bug que se soluciono en la version 7.5.1, comprueba que tengas prestashsop actualizado.
-> https://github.com/PrestaShop/PrestaShop/pull/12103
Antes de realizar la modificación recuerda descargar una copia del archivo original.
Un saludo
Hola,
No me ha funcionado, lo he cambiado pero sigue igual https://prnt.sc/nubye9, dice el cliente que no puede generar lo del transportista por los caracteres especiales.
Hola
Tienes tu PrestaShop actualizado?, qué versión exacta tienes?
De manera general podrías copiar el mismo archivo desde el theme por defecto y verificar.
Busca si tienes este archivo en el theme classic que viene por defecto
themesclassictemplatescheckout_partialsstepsshipping.tpl
Renombra el archivo de tu theme y usa el archivo del theme classic
La otra opción es cambiar temporalmente de theme y verificar si te sucede lo mismo, esto para descartar si es un problema con el theme
Saludos.
Hola!
Tengo la versión 1.7.5.1, he reemplazado el fichero classictemplatescheckout_partialsstepsshipping.tpl en mi tema y el mensaje sigue apareciendo en html, voy a ver si funciona el transporte