trk / processwire-php-mailer
This module extends WireMail base class, integrating the PHPMailer mailing library into ProcessWire.
Package info
github.com/trk/WireMailPHPMailer
Type:pw-module
pkg:composer/trk/processwire-php-mailer
Fund package maintenance!
v1.4.3
2025-11-17 22:48 UTC
Requires
- php: >=7.0
- hari/pw-module: ~1.0
- phpmailer/phpmailer: ^7.0
This package is auto-updated.
Last update: 2026-03-18 10:44:10 UTC
README
This module extends WireMail base class, integrating the PHPMailer mailing library into ProcessWire.The module using PHPMailer. You can see an example usage below.
You can set your configs from module settings or you can directly call $mail = wire("modules")->get("WireMailPHPMailer"); $mail = $mail->mailer(); function for new PHPMailer() instance.
Using Directly PHPMailer library
/** @var WireMailPHPMailer $mail */ $mail = wire("modules")->get("WireMailPHPMailer"); // load module without module configs /** @var PHPMailer $mail */ $mail = $mail->getInstance(false);
$mail = wire("modules")->get("WireMailPHPMailer"); $mail = $mail->getInstance(); $mail->addAddress("email@domain.ltd", "Someone"); $mail->isHTML(true); $mail->Subject = "WireMailPHPMailer"; $html = "<h1>WireMailPHPMailer</h1>"; $text = "WireMailPHPMailer"; $mail->Body = $html; $mail->AltBody = $text; $mail->send();
Using Like classic WireMail method
$mail = wire("modules")->get("WireMailPHPMailer"); $mail->from("from@domain.ltd") ->fromName("A From Name") ->to('email@domain.ltd') ->subject('A Message Subject') ->body('A Message Body') ->bodyHtml("<h1>A HTML Message Body</h1>") ->send();