Also das Problem. Es sollen Bilder mit dem Newslettermodul verschickt werden. Standardmäßig werden die Links mit verschickt. Viele Benutzer haben das Nachladen von Bilder sinnvollerweise ausgeschaltet. Daher kann es notwendig sein, die Bilder inline mitzusenden. Auch wenn es Patchwork ist, so funktioniert es bei meiner Installation doch tadellos und daher hier eine Lösung:
In der Datei addons/newsletter/pages/newsletter.inc.php kommt etwa bei Zeile 114 (hinter den Ersetzungen für html_body) der Funktionsaufruf für die Ersetzung:
Code: Alles auswählen
$html_body = preg_replace_callback("/img src=.\.\.(.*)\.jpg/", "bild_einfuegen", $html_body);
Ruft jeweils die Funktion bild_einfuegen() auf und übergibt den Suchstring.
Die Funktion bild_einfuegen kommt an den Anfang der Datei (bei mir steht sie an Zeile 8-18):
Code: Alles auswählen
$n_bild = 0;
/* Funktion wird aus preg_replace_callback aufgerufen
Hier wird die Bilddatei in die Mail eingehängt.
*/
function bild_einfuegen($bildtreffer) {
global $mail, $n_bild;
$n_bild++;
$mail->AddEmbeddedImage("../files/cache_resize___".preg_replace("/img src=.\.\.\/index\.php\?rex_resize=/","",$bildtreffer[0]), "bild$n_bild.jpg", "bild$n_bild.jpg", "base64","image/jpeg"); // wb
return "img src=\"cid:bild$n_bild.jpg";
}
Sicher kann man das alles noch ein bisschen edler machen ... für meine Zwecke tut es, wobei es sich hier ausschließlich um cache_resize ...jpg-Bilder handeln darf.
Gruß Wolfgang