SES for WordPress
This plugin provides support for AWS’s Simple Email Service for your WP site. It supports arbitrary custom headers and handles image embedding for you. It sends HTML messages with an automatically-generated plain-text counterpart.
By default, it overrides the native wp_mail function, so all you need to do is configure your AWS Keys and sender in Settings > SES4WP Options.
- PEAR Mime_mail to create the message
- Jevon Wright’s html2text for the plain-text part
- AWS SDK v1.5
Before your call to wp_mail(), call
ses4wp_embed_image with an image handle and the path to your image. It will return a content_id for you to use in your src attribute.
Paths should be given relative to your webserver root. So for instance, to embed
wp-content/themes/twentyeleven/images/wordpress.png, you would omit the slash at the beginning.
$content_id = ses4wp_embed_image( 'my_image', 'wp-content/path/to/image.jpg' ); $mail_body = "This is an image. <img src='cid:$content_id' />"; wp_mail( 'firstname.lastname@example.org', 'My Subject', $mail_body );
The image will be attached to the email and delivered inline.
- Do I need to change any settings to send emails using SES?
As long as the ‘override wp_mail’ option is checked, everything should ‘just work’.
- What’s all this about image embedding? Can’t I just link to an image in my HTML email?
You can, but it won’t work everywhere. For delivery to many clients, including Android GMail and iPhone Mail, you need to attach a copy of the image to the email.
There’s some details on how it works here at StackOverflow. This plugin basically handles all that header creation palaver for you.
- Is it on GitHub?
- Initial release