What are the best practices for sending HTML emails with images in PHP newsletters?

When sending HTML emails with images in PHP newsletters, it's important to ensure that the images are properly embedded in the email rather than linked externally. This ensures that the images will display correctly for all recipients, even if they have images disabled in their email client. One way to achieve this is by using the PHPMailer library, which allows you to easily embed images in your HTML emails.

<?php

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

// Create a new PHPMailer instance
$mail = new PHPMailer();

// Set the email parameters
$mail->isHTML(true);
$mail->Subject = 'Your Newsletter Subject';
$mail->Body = '<p>Your HTML content with embedded images here</p>';

// Embed images in the email
$mail->AddEmbeddedImage('path/to/image.jpg', 'image1', 'image.jpg');

// Add recipient email address
$mail->addAddress('recipient@example.com');

// Send the email
if (!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}