Si tenim problemes amb l’enviament de mails en codestashop hem de comprovar:
07
El mail està correctament a:
codeferències-> Contacte
Empleats-> Contacte
Mòduls-> Alertes per correu
Comprovar que existeixen les carpetes amb els fitxers dels mails dels idiomes utilitzats en el codestaShop dins de la carpeta / mails.
Tenim configurades correctament les imatges dels logos en la configuració de la plantilla.
Potser alguns servidors tingui desactivada la funció mail de PHP, si és així codestashop ens permet configurar l’enviament de correus mitjançant SMTP en Paràmetres Avançats-> Correu electrònic.
Si es fa servir la funció mail () del PHP i no arriben els correus de prova pot ser perquè no estigui habilitada la funció al servidor que podem comprovar pujant un fitxer en la partició arrel del nostre directori com aquest:
< ? php
// El mensaje
$mensaje = "Línea 1\nLínea 2\nLínea 3";
// En caso de que cualquiera de las líneas sea más larga de 70 caracteres,
// debe usarse wordwrap()
$mensaje = wordwrap($mensaje, 70);
// Send
mail('correo@dominio.com', 'Mi título', $mensaje);?>
Substituint correu i domini pels nostres dades. Si aquest correu ens arriba hem de fer unes petites modificacions en els nostres fitxers de codestashop:
El fitxer tools \ swift \ Swift \ Plugin \ MailSend.php fa una comprovació de manera segur que no funciona pel que el millor és treure-:
public function doMail($to, $subject, $message, $headers, $params='')
{
$original_from = @ini_get("sendmail_from");
@ini_set("sendmail_from", $this->returnPath);
$headers = $headers->build();
//if (!ini_get("safe_mode")) $success = mail($to, $subject, $message, $headers, $params);
// else
$success = mail($to, $subject, $message,$headers);
if (!$success)
{
@ini_set("sendmail_from", $original_from);
throw new Swift_ConnectionException("Sending failed using mail() as PHP's default mail() function returned boolean FALSE.");
}
@ini_set("sendmail_from", $original_from);
}
Si amb això encara no funciona ens anem al fitxer tools \ swift \ Swift \ Message.php i en la línia setFrom posem el nostre domini:
$this->setFrom("Dominio");
if (!($has_reply_to = $message->getReplyTo())) $message->setReplyTo($from);
if (!$has_reply_to[0])$message->setReplyTo($from->getAddress());