Nedir bir HTML e-posta ile görüntüleri PHPMailer gömmek için doğru yolu?

1 Cevap php

Ben PHPMailer ile bir Bülten göndermek istiyorum. Bülten çalışır, ancak bunu yapmak için daha iyi bir seçenek olup olmadığını merak ediyorum.

Ne var olduğunu.

  1. HTML Sayfa
  2. Görüntüler

Aşağıdaki gibi Şimdi benim kod görünüyor

$mail = new PHPMailer();

//Adding the body
$body = file_get_contents('template/index.htm');

$mail->Subject = "PHPMailer Test Subject via mail(), basic";

$mail->AltBody = "To view this message, please use an HTML compatible email viewer!";


$mail->SetFrom('xxxxxxx', 'xxxxxxxxxx');

$address = ".......@gmail.com";
$mail->AddAddress($address, "xxxxxxx");

$mail->AddEmbeddedImage("template/images/bullet_point.gif","1");
$mail->AddEmbeddedImage("template/images/template_1_01.gif","2");
$mail->AddEmbeddedImage("template/images/template_1_03.gif","3");


$mail->MsgHTML($body);

if(!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}

Ben html sayfası almak için file_get_contents kullanın, ve, şimdi PHPMailer sadece HTML sayfası geçmek ve PHP Mailer otomatik olarak bu görüntüleri embed olacak bir yolu görüntüleri embed AddEmbeddedImage var?

1 Cevap

Ben "sıfırdan" ne yapmaya çalışıyorsun (automatically adding required images) PHPMailer ile mümkün olduğunu sanmıyorum.

Belki kendisine bağlanan görüntülerin listesini almak için HTML ayrıştırmak? Bunu yapmanın en az 2 yolu vardır:

Görüntü almak için, sana src nitelikleri ile e-posta <img> etiketleri var sanırım; amaç bu olanlar değerleri bulmak için ;-)

Eğer görüntüler yolun listesi var, onlar üzerinde yineleme, ve bunların her biri $mail->AddEmbeddedImage diyoruz.

Ben sadece iyi (haven't tried though, but I don't see why it wouldn't) çalışmak herhalde.

Bir yan not olarak, başka bir şekilde gün / hafta / ay birkaç sunucu üzerinde görüntüleri tutmak, değil onları posta dahil olacaktır; bu demektir ki, postaları daha küçük olur:

  • daha az bant genişliği (sizin postalar gönderiyor ise, bu bant genişliği oldukça amout temsil edebilir) yanınızda harcanan
  • Daha az bant genişliği müşterilerinizin tarafında her biri için harcanan - ^ ^ onlar için çok güzel olan
  • kendi sabit disklerde kullanılan az yer ;-)

Ve görüntüler hafta / ay bir çift önce sunucuda yerini / sildim alamadım emin olmak için, bu görüntüler bulunuyor içeren, her haber bülteni için yeni bir dizin oluşturabilirsiniz - ve arada bir, daha dizinleri eski silmek X gün.