{"id":42668,"date":"2016-03-19T08:41:59","date_gmt":"2016-03-19T08:41:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/wp-mail-ses\/"},"modified":"2018-01-03T20:59:45","modified_gmt":"2018-01-03T20:59:45","slug":"wp-mail-ses","status":"publish","type":"plugin","link":"https:\/\/lmo.wordpress.org\/plugins\/wp-mail-ses\/","author":14873440,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"0.0.4","stable_tag":"trunk","tested":"4.9.29","requires":"3.0.1","requires_php":"","requires_plugins":"","header_name":"WP Mail SES","header_author":"Bashkim Isai","header_description":"","assets_banners_color":"","last_updated":"2018-01-03 20:59:45","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/bashaus\/wp-mail-ses","header_author_uri":"https:\/\/www.bashkim.com\/","rating":5,"author_block_rating":0,"active_installs":10,"downloads":2800,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"":"<p>No notices<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"1"},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[450,6929,6695],"plugin_category":[41],"plugin_contributors":[96019],"plugin_business_model":[],"class_list":["post-42668","plugin","type-plugin","status-publish","hentry","plugin_tags-mail","plugin_tags-ses","plugin_tags-wp_mail","plugin_category-communication","plugin_contributors-bashaus","plugin_committers-bashaus"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/wp-mail-ses.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Uses Amazon Web Services (AWS) Simple Email Service (SES) to send emails.\nBased on the original WP SES project by Sylvain Deaure. Main differences:<\/p>\n\n<ul>\n<li>Does not store credentials in the database<\/li>\n<li>Convention over configuration<\/li>\n<li>Removed any functionality which can be done via AWS Console<\/li>\n<li>Open Source and <a href=\"https:\/\/github.com\/bashaus\/wp-mail-ses\/\">version controlled via GitHub<\/a><\/li>\n<\/ul>\n\n<h3>Usage<\/h3>\n\n<h4>View statistics<\/h4>\n\n<p>Go to: <code>Admin<\/code> &raquo; <code>Dashboard<\/code> &raquo; <code>SES Statistics<\/code><\/p>\n\n<h4>Send test message<\/h4>\n\n<p>Go to: <code>Admin<\/code> &raquo; <code>Settings<\/code> &raquo; <code>WP Mail SES<\/code><\/p>\n\n<h4>Hooks\/Filters<\/h4>\n\n<pre><code>wp_mail_ses_sent_email - This function is called once an email has been sent\n<\/code><\/pre>\n\n<p>to SES and provides two parameters:<\/p>\n\n<ul>\n<li><code>$message_id<\/code> (<code>string<\/code> or <code>null<\/code>) -\nThe <code>MessageId<\/code> as provided by SES if the request was successful,\notherwise null.<\/li>\n<li><code>$mail_data<\/code> (<code>array<\/code>) -\nA hash map containing the information used to send the email. Keys include:\n  to, <code>subject<\/code>, <code>message<\/code>, <code>headers<\/code>, <code>attachments<\/code><\/li>\n<\/ul>\n\n<p>Example:<\/p>\n\n<pre><code>add_filter( 'wp_mail_ses_sent_email', function ( $message_id, $mail_data ) {\n    if ( is_null( $message_id ) ) {\n        echo \"Sending failed\";\n    } else {\n        echo \"Sending successful\";\n    }\n\n    print_r( $mail_data );\n} );\n<\/code><\/pre>\n\n<!--section=installation-->\n<p>Follow these instructions:<\/p>\n\n<h4>1. Amazon confirmation and approval<\/h4>\n\n<p>You will need to setup Simple Email Service (SES) on your Amazon Web Services\naccount before you can use this plugin.<\/p>\n\n<p>For more information, <a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/DeveloperGuide\/setting-up-email.html\">read Amazon's documentation on how to setup\nSES<\/a><\/p>\n\n<h4>2. Update configuration<\/h4>\n\n<p>Update your <code>wp-config.php<\/code> file to include the required constants:<\/p>\n\n<pre><code>\/**\n * Include your AWS keys.\n *\n * A safe approach is to store your key and secret in environment\n * variables. This way, your credentials are not hard coded in version\n * control.\n *\/\n\ndefine( 'WP_MAIL_SES_ACCESS_KEY_ID', getenv( 'WP_MAIL_SES_ACCESS_KEY_ID' ) );\ndefine( 'WP_MAIL_SES_SECRET_ACCESS_KEY', getenv( 'WP_MAIL_SES_SECRET_ACCESS_KEY' ) );\n\n\/**\n * Define the endpoint for your emails to be sent. Endpoints include:\n *\n * email.us-east-1.amazonaws.com\n * email.us-west-2.amazonaws.com\n * email.eu-west-1.amazonaws.com\n *\/\n\ndefine( 'WP_MAIL_SES_ENDPOINT', 'email.eu-west-1.amazonaws.com' );\n<\/code><\/pre>\n\n<p>Optional extra configuration:<\/p>\n\n<pre><code>\/**\n * Define the composer information for your email (who the email is\n * sent from). The email address must be approved in your AWS console\n * in the specified region.\n *\n * This email address is used if a composer is not already defined by\n * the email.\n *\/\n\ndefine( 'WP_MAIL_SES_COMPOSER_NAME', 'Company Name' );\ndefine( 'WP_MAIL_SES_COMPOSER_EMAIL', 'confirmed@example.com' );\n\n\/**\n * Disable accessing of statistics from the Dashboard.\n * This can help if you're hitting the API too frequently.\n *\/\n\ndefine( 'WP_MAIL_SES_HIDE_STATISTICS', true );\n<\/code><\/pre>\n\n<h4>3. Install plugin<\/h4>\n\n<p>Copy this folder <code>wp-mail-ses<\/code> to your <code>\/wp-content\/plugins\/<\/code> directory.<\/p>\n\n<h4>4. Activate plugin<\/h4>\n\n<p>Go to your WordPress Administration and activate the <code>WP Mail SES<\/code> plugin.<\/p>\n\n<h4>5. Send a test message<\/h4>\n\n<p>Go to: <code>Admin<\/code> &raquo; <code>Settings<\/code> &raquo; <code>WP Mail SES<\/code><\/p>\n\n<!--section=faq-->\n<dl>\n<dt>Installation Instructions<\/dt>\n<dd><p>Follow these instructions:<\/p>\n\n<h4>1. Amazon confirmation and approval<\/h4>\n\n<p>You will need to setup Simple Email Service (SES) on your Amazon Web Services\naccount before you can use this plugin.<\/p>\n\n<p>For more information, <a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/DeveloperGuide\/setting-up-email.html\">read Amazon's documentation on how to setup\nSES<\/a><\/p>\n\n<h4>2. Update configuration<\/h4>\n\n<p>Update your <code>wp-config.php<\/code> file to include the required constants:<\/p>\n\n<pre><code>\/**\n * Include your AWS keys.\n *\n * A safe approach is to store your key and secret in environment\n * variables. This way, your credentials are not hard coded in version\n * control.\n *\/\n\ndefine( 'WP_MAIL_SES_ACCESS_KEY_ID', getenv( 'WP_MAIL_SES_ACCESS_KEY_ID' ) );\ndefine( 'WP_MAIL_SES_SECRET_ACCESS_KEY', getenv( 'WP_MAIL_SES_SECRET_ACCESS_KEY' ) );\n\n\/**\n * Define the endpoint for your emails to be sent. Endpoints include:\n *\n * email.us-east-1.amazonaws.com\n * email.us-west-2.amazonaws.com\n * email.eu-west-1.amazonaws.com\n *\/\n\ndefine( 'WP_MAIL_SES_ENDPOINT', 'email.eu-west-1.amazonaws.com' );\n<\/code><\/pre>\n\n<p>Optional extra configuration:<\/p>\n\n<pre><code>\/**\n * Define the composer information for your email (who the email is\n * sent from). The email address must be approved in your AWS console\n * in the specified region.\n *\n * This email address is used if a composer is not already defined by\n * the email.\n *\/\n\ndefine( 'WP_MAIL_SES_COMPOSER_NAME', 'Company Name' );\ndefine( 'WP_MAIL_SES_COMPOSER_EMAIL', 'confirmed@example.com' );\n\n\/**\n * Disable accessing of statistics from the Dashboard.\n * This can help if you're hitting the API too frequently.\n *\/\n\ndefine( 'WP_MAIL_SES_HIDE_STATISTICS', true );\n<\/code><\/pre>\n\n<h4>3. Install plugin<\/h4>\n\n<p>Copy this folder <code>wp-mail-ses<\/code> to your <code>\/wp-content\/plugins\/<\/code> directory.<\/p>\n\n<h4>4. Activate plugin<\/h4>\n\n<p>Go to your WordPress Administration and activate the <code>WP Mail SES<\/code> plugin.<\/p>\n\n<h4>5. Send a test message<\/h4>\n\n<p>Go to: <code>Admin<\/code> &raquo; <code>Settings<\/code> &raquo; <code>WP Mail SES<\/code><\/p><\/dd>\n<dt>Why isn't my email sending?<\/dt>\n<dd><p>There are a number of reasons that an email might not be sent via SES, here is\na quick checklist to ensure that the plugin has been setup properly:<\/p>\n\n<p>Have you:<\/p>\n\n<ul>\n<li>Defined <code>WP_MAIL_SES_ACCESS_KEY_ID<\/code>, <code>WP_MAIL_SES_SECRET_ACCESS_KEY<\/code> and\n  WP_MAIL_SES_ENDPOINT in <code>wp-config.php<\/code>?<\/li>\n<li>Confirmed that you own a domain name in the Amazon SES console?<\/li>\n<li>Confirmed an email address in the Amazon SES console?<\/li>\n<li>Requested your <a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/DeveloperGuide\/request-production-access.html\">service limit to be increased<\/a> ?<\/li>\n<li>Tried defining <code>WP_MAIL_SES_COMPOSER_EMAIL<\/code> in <code>wp-config.php<\/code> with your\nverified email address?<\/li>\n<\/ul><\/dd>\n<dt>I can send emails to myself, but not to others<\/dt>\n<dd><p>In order to send emails to the public, you need to move out of the Amazon SES\nSandbox and into the production account. <a href=\"https:\/\/docs.aws.amazon.com\/ses\/latest\/DeveloperGuide\/request-production-access.html\">Read the documentation on\nAmazon<\/a>.<\/p><\/dd>\n<dt>Got another question?<\/dt>\n<dd><p>You can <a href=\"https:\/\/github.com\/bashaus\/wp-mail-ses\">post your question on GitHub<\/a>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.0.4<\/h4>\n\n<ul>\n<li>Integrated with Travis CI<\/li>\n<li>Added PHPCS and linked to WordPress-Extra standards<\/li>\n<li>Cleaned up code with phpcs\/phpcbf<\/li>\n<li>Added .editorconfig<\/li>\n<li>Updated SimpleEmailService to 0.9.0<\/li>\n<\/ul>\n\n<h4>0.0.3<\/h4>\n\n<ul>\n<li>Bug fix for $recipients variable [#3]<\/li>\n<\/ul>\n\n<h4>0.0.2<\/h4>\n\n<ul>\n<li>Added filter to notify of email sent status [#2]<\/li>\n<\/ul>\n\n<h4>0.0.1<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Uses Amazon Web Services (AWS) Simple Email Service (SES) to send emails in WordPress.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/42668","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=42668"}],"author":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bashaus"}],"wp:attachment":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=42668"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=42668"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=42668"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=42668"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=42668"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=42668"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}