v2.1.5
This commit is contained in:
parent
e574896277
commit
6269b77f13
11 changed files with 741 additions and 469 deletions
171
changelog.txt
171
changelog.txt
|
|
@ -1,49 +1,170 @@
|
||||||
|
== Changelog ==
|
||||||
|
|
||||||
|
= 2.1.5 =
|
||||||
|
|
||||||
|
_Release date: 2026-06-09_
|
||||||
|
|
||||||
|
**Added**
|
||||||
|
|
||||||
|
* Runtime check at initialization: if the parent SMTP (by ROBOTSTXT) plugin is missing or inactive, the plugin skips initialization and displays an admin notice instead of producing a fatal error.
|
||||||
|
|
||||||
|
**Fixed**
|
||||||
|
|
||||||
|
* Credentials never saving on first entry: credential validation now only blocks saving for definitive authentication failures (InvalidClientTokenId, SignatureDoesNotMatch, InvalidAccessKeyId). All other AWS errors — wrong region, missing IAM permission, SES not enabled in region, network timeouts — allow saving so the user is not locked out.
|
||||||
|
* Reply-to email field cannot be cleared: submitting an empty value now explicitly removes the stored address. The parent plugin preserves the existing value when empty is submitted; this filter corrects that behavior.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
|
**Tests**
|
||||||
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
= 2.1.4 =
|
= 2.1.4 =
|
||||||
|
|
||||||
* Updated minimum WordPress version to 5.7 (the actual code minimum, verified by static analysis).
|
_Release date: 2026-06-09_
|
||||||
|
|
||||||
|
**Changed**
|
||||||
|
|
||||||
|
* Minimum WordPress version lowered from 6.5 to 5.7. The plugin code only uses APIs available since WordPress 5.7 (the `pre_wp_mail` filter), verified by static analysis with wp-compat. Note: on WordPress 5.7–6.4, the `Requires Plugins` dependency header is not enforced by the platform.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
|
**Tests**
|
||||||
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
= 2.1.3 =
|
= 2.1.3 =
|
||||||
|
|
||||||
* Fixed nonce handling in manual quota refresh to correctly handle false values returned by filter_input().
|
_Release date: 2026-06-09_
|
||||||
* Fixed admin notices display to skip non-array notice entries.
|
|
||||||
* Fixed input normalization for recipients, attachments, and headers to properly skip non-string values instead of attempting unsafe casts.
|
**Fixed**
|
||||||
* Removed unused internal method (dead code cleanup).
|
|
||||||
* Updated compatibility: tested up to WordPress 7.1.
|
* Nonce handling in manual quota refresh now correctly handles `false` values returned by `filter_input()`.
|
||||||
|
* Admin notices display now skips non-array notice entries.
|
||||||
|
* Input normalization for recipients, attachments, and headers now properly skips non-string values instead of attempting unsafe casts.
|
||||||
|
|
||||||
|
**Changed**
|
||||||
|
|
||||||
|
* Removed unused internal rate limit application method.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
|
**Tests**
|
||||||
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
= 2.1.2 =
|
= 2.1.2 =
|
||||||
|
|
||||||
* Fixed charset encoding issue that caused "expected parameter value, got null" error when sending emails through Amazon SES.
|
_Release date: 2026-02-12_
|
||||||
* Added robust charset validation in header parsing to prevent empty or invalid charset values.
|
|
||||||
* Enhanced charset handling with fallback to UTF-8 when no valid charset is provided.
|
**Fixed**
|
||||||
|
|
||||||
|
* Charset encoding issue that caused "expected parameter value, got null" error when sending emails through Amazon SES.
|
||||||
|
* Charset validation in header parsing now prevents empty or invalid charset values.
|
||||||
|
* Charset handling falls back to UTF-8 when no valid charset is provided.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.9
|
||||||
|
* PHP: 8.2 - 8.4
|
||||||
|
|
||||||
= 2.1.1 =
|
= 2.1.1 =
|
||||||
|
|
||||||
* Added comprehensive Amazon SES debug context to test email error reports.
|
_Release date: 2026-02-09_
|
||||||
* Debug information now includes: AWS region, masked access key, SDK version, endpoint URL, and UTC timestamp.
|
|
||||||
|
**Added**
|
||||||
|
|
||||||
|
* Comprehensive Amazon SES debug context to test email error reports: AWS region, masked access key, SDK version, endpoint URL, and UTC timestamp.
|
||||||
* Enhanced AWS error reporting with request IDs, HTTP status codes, and error codes for easier troubleshooting.
|
* Enhanced AWS error reporting with request IDs, HTTP status codes, and error codes for easier troubleshooting.
|
||||||
* Improved security by masking access keys in error output (shows only first 4 and last 4 characters).
|
|
||||||
|
**Security**
|
||||||
|
|
||||||
|
* Access keys are now masked in error output, showing only the first and last 4 characters.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.9
|
||||||
|
* PHP: 8.2 - 8.4
|
||||||
|
|
||||||
= 2.1.0 =
|
= 2.1.0 =
|
||||||
|
|
||||||
* Changed uninstall behavior: plugin no longer performs cleanup on uninstall, all data cleanup is now handled by the core SMTP plugin.
|
_Release date: 2026-02-09_
|
||||||
* This ensures Amazon SES credentials are preserved when only the add-on is removed, and properly cleaned when the core plugin is uninstalled.
|
|
||||||
* Simplified uninstall.php to delegate all cleanup responsibility to core SMTP plugin.
|
**Changed**
|
||||||
|
|
||||||
|
* Uninstall behavior: the add-on no longer performs cleanup on its own uninstall. All data cleanup — including Amazon SES credentials — is now handled by the core SMTP plugin when it is uninstalled. This ensures credentials are preserved if only the add-on is removed.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.9
|
||||||
|
* PHP: 8.2 - 8.4
|
||||||
|
|
||||||
= 2.0.1 =
|
= 2.0.1 =
|
||||||
|
|
||||||
* Version bump for maintenance release.
|
_Release date: 2026-01-30_
|
||||||
|
|
||||||
|
**Changed**
|
||||||
|
|
||||||
|
* Maintenance release with minor internal fixes.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.9
|
||||||
|
* PHP: 8.2 - 8.4
|
||||||
|
|
||||||
= 2.0.0 =
|
= 2.0.0 =
|
||||||
|
|
||||||
* Added Reply-To header support for emails sent via Amazon SES.
|
_Release date: 2026-01-29_
|
||||||
* Improved error handling and validation.
|
|
||||||
* Enhanced compatibility with core SMTP plugin 2.0.0.
|
**Added**
|
||||||
* Improved credential handling and encryption.
|
|
||||||
* Code quality improvements and documentation.
|
* Reply-To header support for emails sent through Amazon SES.
|
||||||
* **BREAKING CHANGE**: Minimum PHP version increased to 8.2 (required by AWS SDK for PHP).
|
|
||||||
* Updated AWS SDK for PHP to latest version with security updates.
|
**Changed**
|
||||||
|
|
||||||
|
* Minimum PHP version increased to 8.2. Required by the AWS SDK for PHP.
|
||||||
|
* Updated AWS SDK for PHP to version 3.369.20 with security patches.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.9
|
||||||
|
* PHP: 8.2 - 8.4
|
||||||
|
|
||||||
= 1.0.0 =
|
= 1.0.0 =
|
||||||
|
|
||||||
* Initial release with Amazon SES credential management, region selection, and live validation inside the SMTP plugin settings.
|
_Release date: 2026-01-27_
|
||||||
* Routes WordPress and SMTP test emails through Amazon SES whenever credentials are configured and verified.
|
|
||||||
|
**Highlights**
|
||||||
|
|
||||||
|
* Initial release.
|
||||||
|
|
||||||
|
**Added**
|
||||||
|
|
||||||
|
* Amazon SES credential management (IAM access key, secret key, region) inside the SMTP plugin settings.
|
||||||
|
* Live credential validation on save via the `GetAccount` API call.
|
||||||
|
* Region selector with automatic discovery of all SES-enabled AWS endpoints.
|
||||||
|
* Routes WordPress mail and SMTP test emails through Amazon SES whenever credentials are configured.
|
||||||
|
* AWS SDK for PHP v3 bundled as a Composer dependency.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 6.5 - 6.8
|
||||||
|
* PHP: 8.2 - 8.3
|
||||||
|
|
|
||||||
|
|
@ -1210,6 +1210,15 @@ class Plugin {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// The parent plugin only updates reply_to_email when a valid address is submitted — it never
|
||||||
|
// clears the field. Explicitly clear it here when the user submits an empty value.
|
||||||
|
if ( array_key_exists( 'reply_to_email', $options ) ) {
|
||||||
|
$submitted_reply_to = is_string( $options['reply_to_email'] ) ? \sanitize_email( \trim( $options['reply_to_email'] ) ) : '';
|
||||||
|
if ( '' === $submitted_reply_to ) {
|
||||||
|
$clean['reply_to_email'] = '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $clean;
|
return $clean;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1491,17 +1500,7 @@ class Plugin {
|
||||||
|
|
||||||
$message = \esc_html( (string) $message );
|
$message = \esc_html( (string) $message );
|
||||||
|
|
||||||
// Allow saving if the error is due to missing IAM permissions (not authorization to use SES itself).
|
// Block only when credentials are definitively wrong (wrong access key or signature).
|
||||||
// The credentials may still work for sending emails which requires different permissions.
|
|
||||||
if ( 'AccessDeniedException' === $aws_error_code || 'UnauthorizedException' === $aws_error_code ) {
|
|
||||||
if ( \strpos( $message, 'not authorized to perform: ses:GetAccount' ) !== false ) {
|
|
||||||
// Permission error for GetAccount API - credentials might still work for sending.
|
|
||||||
// Return null (success) but we could add a notice here if needed.
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// For authentication errors (invalid credentials), prevent saving.
|
|
||||||
if ( in_array( $aws_error_code, array( 'InvalidClientTokenId', 'SignatureDoesNotMatch', 'InvalidAccessKeyId' ), true ) ) {
|
if ( in_array( $aws_error_code, array( 'InvalidClientTokenId', 'SignatureDoesNotMatch', 'InvalidAccessKeyId' ), true ) ) {
|
||||||
return new WP_Error(
|
return new WP_Error(
|
||||||
'robotstxt_smtp_amazon_ses_invalid_credentials',
|
'robotstxt_smtp_amazon_ses_invalid_credentials',
|
||||||
|
|
@ -1513,26 +1512,10 @@ class Plugin {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// For other AWS errors, show warning but allow saving.
|
// Any other AWS error (missing permission, wrong region, SES not enabled in region, etc.) —
|
||||||
return new WP_Error(
|
// the credentials may still be valid for sending. Allow saving.
|
||||||
'robotstxt_smtp_amazon_ses_invalid_credentials',
|
|
||||||
\sprintf(
|
|
||||||
/* translators: %s: Error message from Amazon SES. */
|
|
||||||
\esc_html__( 'Could not verify Amazon SES credentials: %s', 'robotstxt-smtp-amazonses' ),
|
|
||||||
$message
|
|
||||||
)
|
|
||||||
);
|
|
||||||
} catch ( Throwable $exception ) {
|
} catch ( Throwable $exception ) {
|
||||||
$message = \esc_html( $exception->getMessage() );
|
unset( $exception ); // Network error or timeout — cannot validate, allow saving.
|
||||||
|
|
||||||
return new WP_Error(
|
|
||||||
'robotstxt_smtp_amazon_ses_unexpected_error',
|
|
||||||
\sprintf(
|
|
||||||
/* translators: %s: Error message describing the unexpected failure. */
|
|
||||||
\esc_html__( 'An unexpected error occurred while validating Amazon SES credentials: %s', 'robotstxt-smtp-amazonses' ),
|
|
||||||
$message
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -1,7 +1,9 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES\n"
|
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES\n"
|
||||||
"POT-Creation-Date: 2026-01-29 10:03+0100\n"
|
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/robotstxt-smtp-"
|
||||||
|
"amazonses\n"
|
||||||
|
"POT-Creation-Date: 2026-06-09T10:41:00+00:00\n"
|
||||||
"PO-Revision-Date: 2026-01-29 09:30+0100\n"
|
"PO-Revision-Date: 2026-01-29 09:30+0100\n"
|
||||||
"Last-Translator: ROBOTSTXT <robotstxt@robotstxt.es>\n"
|
"Last-Translator: ROBOTSTXT <robotstxt@robotstxt.es>\n"
|
||||||
"Language-Team: Catalan\n"
|
"Language-Team: Catalan\n"
|
||||||
|
|
@ -12,304 +14,358 @@ msgstr ""
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Generator: Manual\n"
|
"X-Generator: Manual\n"
|
||||||
|
|
||||||
#: includes/class-plugin.php:151
|
#. Plugin Name of the plugin
|
||||||
msgid "Amazon SES could not send the email because no recipient was provided."
|
#: robotstxt-smtp-amazonses.php
|
||||||
msgstr "Amazon SES no ha pogut enviar l'email perquè no s'ha proporcionat cap destinatari."
|
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
||||||
|
msgstr "SMTP (by ROBOTSTXT) Amazon SES"
|
||||||
|
|
||||||
#: includes/class-plugin.php:224
|
#. Plugin URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Description of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
||||||
|
msgstr "Afegeix suport de configuració d'Amazon SES al plugin ROBOTSTXT SMTP."
|
||||||
|
|
||||||
|
#. Author of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "ROBOTSTXT"
|
||||||
|
msgstr "ROBOTSTXT"
|
||||||
|
|
||||||
|
#. Author URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://www.robotstxt.es/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:379
|
||||||
|
msgid "Security check failed"
|
||||||
|
msgstr "Ha fallat la comprovació de seguretat"
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:384 includes/class-plugin.php:918
|
||||||
|
msgid "You do not have sufficient permissions to access this page."
|
||||||
|
msgstr "No tens permisos suficients per accedir a aquesta pàgina."
|
||||||
|
|
||||||
|
#: includes/class-plugin.php:149
|
||||||
|
msgid "Amazon SES could not send the email because no recipient was provided."
|
||||||
|
msgstr ""
|
||||||
|
"Amazon SES no ha pogut enviar l'email perquè no s'ha proporcionat cap "
|
||||||
|
"destinatari."
|
||||||
|
|
||||||
|
#. translators: %s: Error details describing the email preparation failure.
|
||||||
|
#: includes/class-plugin.php:231
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not prepare the email: %s"
|
msgid "Amazon SES could not prepare the email: %s"
|
||||||
msgstr "Amazon SES no ha pogut preparar l'email: %s"
|
msgstr "Amazon SES no ha pogut preparar l'email: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:265
|
#. translators: %s: Error message returned by Amazon SES.
|
||||||
|
#: includes/class-plugin.php:275
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not send the email: %s"
|
msgid "Amazon SES could not send the email: %s"
|
||||||
msgstr "Amazon SES no ha pogut enviar l'email: %s"
|
msgstr "Amazon SES no ha pogut enviar l'email: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:282
|
#. translators: %s: Error message describing the unexpected failure.
|
||||||
|
#: includes/class-plugin.php:295
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
||||||
msgstr "S'ha produït un error inesperat en enviar a través d'Amazon SES: %s"
|
msgstr "S'ha produït un error inesperat en enviar a través d'Amazon SES: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:330
|
#. translators: %s: Error details describing why the From header is invalid.
|
||||||
|
#: includes/class-plugin.php:357
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the \"From\" address: %s"
|
msgid "Amazon SES rejected the \"From\" address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça \"De\": %s"
|
msgstr "Amazon SES ha rebutjat l'adreça \"De\": %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:351
|
#. translators: %s: Invalid recipient email address.
|
||||||
|
#: includes/class-plugin.php:378
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the recipient address: %s"
|
msgid "Amazon SES rejected the recipient address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça del destinatari: %s"
|
msgstr "Amazon SES ha rebutjat l'adreça del destinatari: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:373
|
#. translators: %s: Invalid CC email address.
|
||||||
|
#: includes/class-plugin.php:400
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the CC address: %s"
|
msgid "Amazon SES rejected the CC address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça CC: %s"
|
msgstr "Amazon SES ha rebutjat l'adreça CC: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:395
|
#. translators: %s: Invalid BCC email address.
|
||||||
|
#: includes/class-plugin.php:422
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the BCC address: %s"
|
msgid "Amazon SES rejected the BCC address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça CCO: %s"
|
msgstr "Amazon SES ha rebutjat l'adreça CCO: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:417
|
#. translators: %s: Invalid reply-to email address.
|
||||||
|
#: includes/class-plugin.php:444
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the reply-to address: %s"
|
msgid "Amazon SES rejected the reply-to address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça de resposta: %s"
|
msgstr "Amazon SES ha rebutjat l'adreça de resposta: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:446
|
#. translators: %s: Invalid reply-to email address from settings.
|
||||||
|
#: includes/class-plugin.php:473
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the configured reply-to address: %s"
|
msgid "Amazon SES rejected the configured reply-to address: %s"
|
||||||
msgstr "Amazon SES ha rebutjat l'adreça de resposta configurada: %s"
|
msgstr "Amazon SES ha rebutjat l'adreça de resposta configurada: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:497
|
#. translators: %s: Attachment path that could not be added.
|
||||||
|
#: includes/class-plugin.php:524
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not include the attachment: %s"
|
msgid "Amazon SES could not include the attachment: %s"
|
||||||
msgstr "Amazon SES no ha pogut incloure l'adjunt: %s"
|
msgstr "Amazon SES no ha pogut incloure l'adjunt: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:833
|
#: includes/class-plugin.php:910
|
||||||
msgid "Security check failed."
|
msgid "Security check failed."
|
||||||
msgstr "Ha fallat la comprovació de seguretat."
|
msgstr "Ha fallat la comprovació de seguretat."
|
||||||
|
|
||||||
#: includes/class-plugin.php:841 robotstxt-updater.php:367
|
#: includes/class-plugin.php:931
|
||||||
msgid "You do not have sufficient permissions to access this page."
|
|
||||||
msgstr "No tens permisos suficients per accedir a aquesta pàgina."
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:854
|
|
||||||
msgid "Amazon SES quotas refreshed successfully."
|
msgid "Amazon SES quotas refreshed successfully."
|
||||||
msgstr "Quotes d'Amazon SES actualitzades correctament."
|
msgstr "Quotes d'Amazon SES actualitzades correctament."
|
||||||
|
|
||||||
#: includes/class-plugin.php:861
|
#: includes/class-plugin.php:938
|
||||||
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
||||||
msgstr "No s'han pogut obtenir les quotes d'Amazon SES. Verifica el registre de depuració per a més detalls."
|
msgstr ""
|
||||||
|
"No s'han pogut obtenir les quotes d'Amazon SES. Verifica el registre de "
|
||||||
|
"depuració per a més detalls."
|
||||||
|
|
||||||
#: includes/class-plugin.php:900
|
#: includes/class-plugin.php:977
|
||||||
msgid "Access Key ID"
|
msgid "Access Key ID"
|
||||||
msgstr "ID de clau d'accés"
|
msgstr "ID de clau d'accés"
|
||||||
|
|
||||||
#: includes/class-plugin.php:906
|
#: includes/class-plugin.php:983
|
||||||
msgid "Secret Access Key"
|
msgid "Secret Access Key"
|
||||||
msgstr "Clau d'accés secreta"
|
msgstr "Clau d'accés secreta"
|
||||||
|
|
||||||
#: includes/class-plugin.php:912
|
#: includes/class-plugin.php:989
|
||||||
msgid "Region"
|
msgid "Region"
|
||||||
msgstr "Regió"
|
msgstr "Regió"
|
||||||
|
|
||||||
#: includes/class-plugin.php:918
|
#: includes/class-plugin.php:1028
|
||||||
msgid "From Email"
|
|
||||||
msgstr "Email remitent"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:924
|
|
||||||
msgid "From Name"
|
|
||||||
msgstr "Nom remitent"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:930
|
|
||||||
msgid "Reply-To Email"
|
|
||||||
msgstr "Email de resposta"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:936
|
|
||||||
msgid "Reply-To Name"
|
|
||||||
msgstr "Nom de resposta"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:951
|
|
||||||
msgid "Leave empty to keep the stored access key."
|
msgid "Leave empty to keep the stored access key."
|
||||||
msgstr "Deixar buit per mantenir la clau d'accés emmagatzemada."
|
msgstr "Deixar buit per mantenir la clau d'accés emmagatzemada."
|
||||||
|
|
||||||
#: includes/class-plugin.php:962
|
#: includes/class-plugin.php:1039
|
||||||
msgid "Provide the IAM access key ID with permissions to send email through Amazon SES. Leave the field empty to retain the existing value."
|
msgid ""
|
||||||
msgstr "Proporciona l'ID de clau d'accés IAM amb permisos per enviar email a través d'Amazon SES. Deixa el camp buit per mantenir el valor existent."
|
"Provide the IAM access key ID with permissions to send email through Amazon "
|
||||||
|
"SES. Leave the field empty to retain the existing value."
|
||||||
|
msgstr ""
|
||||||
|
"Proporciona l'ID de clau d'accés IAM amb permisos per enviar email a través "
|
||||||
|
"d'Amazon SES. Deixa el camp buit per mantenir el valor existent."
|
||||||
|
|
||||||
#: includes/class-plugin.php:974
|
#: includes/class-plugin.php:1051
|
||||||
msgid "Leave empty to keep the stored secret access key."
|
msgid "Leave empty to keep the stored secret access key."
|
||||||
msgstr "Deixar buit per mantenir la clau d'accés secreta emmagatzemada."
|
msgstr "Deixar buit per mantenir la clau d'accés secreta emmagatzemada."
|
||||||
|
|
||||||
#: includes/class-plugin.php:985
|
#: includes/class-plugin.php:1062
|
||||||
msgid "Enter the secret access key associated with the IAM user. Leave the field empty to retain the existing value."
|
msgid ""
|
||||||
msgstr "Introdueix la clau d'accés secreta associada amb l'usuari IAM. Deixa el camp buit per mantenir el valor existent."
|
"Enter the secret access key associated with the IAM user. Leave the field "
|
||||||
|
"empty to retain the existing value."
|
||||||
|
msgstr ""
|
||||||
|
"Introdueix la clau d'accés secreta associada amb l'usuari IAM. Deixa el camp "
|
||||||
|
"buit per mantenir el valor existent."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1000
|
#: includes/class-plugin.php:1077
|
||||||
msgid "Select a region"
|
msgid "Select a region"
|
||||||
msgstr "Selecciona una regió"
|
msgstr "Selecciona una regió"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1005
|
#: includes/class-plugin.php:1082
|
||||||
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
||||||
msgstr "Tria la regió d'AWS on està allotjat el teu compte d'Amazon SES."
|
msgstr "Tria la regió d'AWS on està allotjat el teu compte d'Amazon SES."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1082
|
#: includes/class-plugin.php:1160
|
||||||
msgid "The selected Amazon SES region is not available."
|
msgid "The selected Amazon SES region is not available."
|
||||||
msgstr "La regió d'Amazon SES seleccionada no està disponible."
|
msgstr "La regió d'Amazon SES seleccionada no està disponible."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1102
|
#: includes/class-plugin.php:1176
|
||||||
msgid "Amazon SES credentials were not saved. Provide an access key, secret key, and region."
|
msgid ""
|
||||||
msgstr "Les credencials d'Amazon SES no s'han desat. Proporciona una clau d'accés, clau secreta i regió."
|
"Amazon SES credentials were not saved. Provide an access key, secret key, "
|
||||||
|
"and region."
|
||||||
|
msgstr ""
|
||||||
|
"Les credencials d'Amazon SES no s'han desat. Proporciona una clau d'accés, "
|
||||||
|
"clau secreta i regió."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1126
|
#: includes/class-plugin.php:1200
|
||||||
msgid "Amazon SES credentials verified successfully."
|
msgid "Amazon SES credentials verified successfully."
|
||||||
msgstr "Credencials d'Amazon SES verificades correctament."
|
msgstr "Credencials d'Amazon SES verificades correctament."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1281
|
#: includes/class-plugin.php:1411
|
||||||
msgid "US East (Ohio)"
|
msgid "US East (Ohio)"
|
||||||
msgstr "EUA Est (Ohio)"
|
msgstr "EUA Est (Ohio)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1282
|
#: includes/class-plugin.php:1412
|
||||||
msgid "US East (N. Virginia)"
|
msgid "US East (N. Virginia)"
|
||||||
msgstr "EUA Est (N. Virgínia)"
|
msgstr "EUA Est (N. Virgínia)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1283
|
#: includes/class-plugin.php:1413
|
||||||
msgid "US West (N. California)"
|
msgid "US West (N. California)"
|
||||||
msgstr "EUA Oest (N. Califòrnia)"
|
msgstr "EUA Oest (N. Califòrnia)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1284
|
#: includes/class-plugin.php:1414
|
||||||
msgid "US West (Oregon)"
|
msgid "US West (Oregon)"
|
||||||
msgstr "EUA Oest (Oregon)"
|
msgstr "EUA Oest (Oregon)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1285
|
#: includes/class-plugin.php:1415
|
||||||
msgid "Africa (Cape Town)"
|
msgid "Africa (Cape Town)"
|
||||||
msgstr "Àfrica (Ciutat del Cap)"
|
msgstr "Àfrica (Ciutat del Cap)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1286
|
#: includes/class-plugin.php:1416
|
||||||
msgid "Asia Pacific (Hyderabad)"
|
msgid "Asia Pacific (Hyderabad)"
|
||||||
msgstr "Àsia Pacífic (Hyderabad)"
|
msgstr "Àsia Pacífic (Hyderabad)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1287
|
#: includes/class-plugin.php:1417
|
||||||
msgid "Asia Pacific (Jakarta)"
|
msgid "Asia Pacific (Jakarta)"
|
||||||
msgstr "Àsia Pacífic (Jakarta)"
|
msgstr "Àsia Pacífic (Jakarta)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1288
|
#: includes/class-plugin.php:1418
|
||||||
msgid "Asia Pacific (Mumbai)"
|
msgid "Asia Pacific (Mumbai)"
|
||||||
msgstr "Àsia Pacífic (Mumbai)"
|
msgstr "Àsia Pacífic (Mumbai)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1289
|
#: includes/class-plugin.php:1419
|
||||||
msgid "Asia Pacific (Osaka)"
|
msgid "Asia Pacific (Osaka)"
|
||||||
msgstr "Àsia Pacífic (Osaka)"
|
msgstr "Àsia Pacífic (Osaka)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1290
|
#: includes/class-plugin.php:1420
|
||||||
msgid "Asia Pacific (Seoul)"
|
msgid "Asia Pacific (Seoul)"
|
||||||
msgstr "Àsia Pacífic (Seül)"
|
msgstr "Àsia Pacífic (Seül)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1291
|
#: includes/class-plugin.php:1421
|
||||||
msgid "Asia Pacific (Singapore)"
|
msgid "Asia Pacific (Singapore)"
|
||||||
msgstr "Àsia Pacífic (Singapur)"
|
msgstr "Àsia Pacífic (Singapur)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1292
|
#: includes/class-plugin.php:1422
|
||||||
msgid "Asia Pacific (Sydney)"
|
msgid "Asia Pacific (Sydney)"
|
||||||
msgstr "Àsia Pacífic (Sydney)"
|
msgstr "Àsia Pacífic (Sydney)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1293
|
#: includes/class-plugin.php:1423
|
||||||
msgid "Asia Pacific (Tokyo)"
|
msgid "Asia Pacific (Tokyo)"
|
||||||
msgstr "Àsia Pacífic (Tòquio)"
|
msgstr "Àsia Pacífic (Tòquio)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1294
|
#: includes/class-plugin.php:1424
|
||||||
msgid "Canada (Central)"
|
msgid "Canada (Central)"
|
||||||
msgstr "Canadà (Central)"
|
msgstr "Canadà (Central)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1295
|
#: includes/class-plugin.php:1425
|
||||||
msgid "Europe (Frankfurt)"
|
msgid "Europe (Frankfurt)"
|
||||||
msgstr "Europa (Frankfurt)"
|
msgstr "Europa (Frankfurt)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1296
|
#: includes/class-plugin.php:1426
|
||||||
msgid "Europe (Ireland)"
|
msgid "Europe (Ireland)"
|
||||||
msgstr "Europa (Irlanda)"
|
msgstr "Europa (Irlanda)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1297
|
#: includes/class-plugin.php:1427
|
||||||
msgid "Europe (London)"
|
msgid "Europe (London)"
|
||||||
msgstr "Europa (Londres)"
|
msgstr "Europa (Londres)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1298
|
#: includes/class-plugin.php:1428
|
||||||
msgid "Europe (Milan)"
|
msgid "Europe (Milan)"
|
||||||
msgstr "Europa (Milà)"
|
msgstr "Europa (Milà)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1299
|
#: includes/class-plugin.php:1429
|
||||||
msgid "Europe (Paris)"
|
msgid "Europe (Paris)"
|
||||||
msgstr "Europa (París)"
|
msgstr "Europa (París)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1300
|
#: includes/class-plugin.php:1430
|
||||||
msgid "Europe (Stockholm)"
|
msgid "Europe (Stockholm)"
|
||||||
msgstr "Europa (Estocolm)"
|
msgstr "Europa (Estocolm)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1301
|
#: includes/class-plugin.php:1431
|
||||||
msgid "Europe (Zurich)"
|
msgid "Europe (Zurich)"
|
||||||
msgstr "Europa (Zuric)"
|
msgstr "Europa (Zuric)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1302
|
#: includes/class-plugin.php:1432
|
||||||
msgid "Israel (Tel Aviv)"
|
msgid "Israel (Tel Aviv)"
|
||||||
msgstr "Israel (Tel Aviv)"
|
msgstr "Israel (Tel Aviv)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1303
|
#: includes/class-plugin.php:1433
|
||||||
msgid "Middle East (Bahrain)"
|
msgid "Middle East (Bahrain)"
|
||||||
msgstr "Orient Mitjà (Bahrain)"
|
msgstr "Orient Mitjà (Bahrain)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1304
|
#: includes/class-plugin.php:1434
|
||||||
msgid "Middle East (UAE)"
|
msgid "Middle East (UAE)"
|
||||||
msgstr "Orient Mitjà (EAU)"
|
msgstr "Orient Mitjà (EAU)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1305
|
#: includes/class-plugin.php:1435
|
||||||
msgid "South America (São Paulo)"
|
msgid "South America (São Paulo)"
|
||||||
msgstr "Sud-amèrica (São Paulo)"
|
msgstr "Sud-amèrica (São Paulo)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1306
|
#: includes/class-plugin.php:1436
|
||||||
msgid "AWS GovCloud (US-East)"
|
msgid "AWS GovCloud (US-East)"
|
||||||
msgstr "AWS GovCloud (EUA-Est)"
|
msgstr "AWS GovCloud (EUA-Est)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1307
|
#: includes/class-plugin.php:1437
|
||||||
msgid "AWS GovCloud (US-West)"
|
msgid "AWS GovCloud (US-West)"
|
||||||
msgstr "AWS GovCloud (EUA-Oest)"
|
msgstr "AWS GovCloud (EUA-Oest)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1322
|
#. translators: 1: AWS region display name. 2: AWS region code.
|
||||||
|
#: includes/class-plugin.php:1452
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%1$s (%2$s)"
|
msgid "%1$s (%2$s)"
|
||||||
msgstr "%1$s (%2$s)"
|
msgstr "%1$s (%2$s)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1338
|
#. translators: %s: AWS region code.
|
||||||
|
#: includes/class-plugin.php:1468
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Region %s"
|
msgid "Region %s"
|
||||||
msgstr "Regió %s"
|
msgstr "Regió %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1389
|
#. translators: %s: Error message from Amazon SES.
|
||||||
|
#: includes/class-plugin.php:1509
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Invalid Amazon SES credentials: %s"
|
msgid "Invalid Amazon SES credentials: %s"
|
||||||
msgstr "Credencials d'Amazon SES invàlides: %s"
|
msgstr "Credencials d'Amazon SES invàlides: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1400
|
#: includes/class-plugin.php:1574 includes/class-plugin.php:1596
|
||||||
#, php-format
|
|
||||||
msgid "Could not verify Amazon SES credentials: %s"
|
|
||||||
msgstr "No s'han pogut verificar les credencials d'Amazon SES: %s"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:1411
|
|
||||||
#, php-format
|
|
||||||
msgid "An unexpected error occurred while validating Amazon SES credentials: %s"
|
|
||||||
msgstr "S'ha produït un error inesperat en validar les credencials d'Amazon SES: %s"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:1470 includes/class-plugin.php:1492
|
|
||||||
msgid "Amazon SES credentials are not configured."
|
msgid "Amazon SES credentials are not configured."
|
||||||
msgstr "Les credencials d'Amazon SES no estan configurades."
|
msgstr "Les credencials d'Amazon SES no estan configurades."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1506
|
#: includes/class-plugin.php:1610
|
||||||
msgid "Amazon SES did not return quota data."
|
msgid "Amazon SES did not return quota data."
|
||||||
msgstr "Amazon SES no ha retornat dades de quota."
|
msgstr "Amazon SES no ha retornat dades de quota."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1524
|
#: includes/class-plugin.php:1632
|
||||||
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
||||||
msgstr "No es poden obtenir les quotes de SES: l'usuari IAM no té el permís ses:GetAccount."
|
msgstr ""
|
||||||
|
"No es poden obtenir les quotes de SES: l'usuari IAM no té el permís ses:"
|
||||||
|
"GetAccount."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1532
|
#. translators: %s: AWS error message
|
||||||
|
#: includes/class-plugin.php:1640
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES API error: %s"
|
msgid "Amazon SES API error: %s"
|
||||||
msgstr "Error d'API d'Amazon SES: %s"
|
msgstr "Error d'API d'Amazon SES: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1541
|
#. translators: %s: Error message
|
||||||
|
#: includes/class-plugin.php:1649
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Failed to fetch SES quota: %s"
|
msgid "Failed to fetch SES quota: %s"
|
||||||
msgstr "Ha fallat en obtenir la quota de SES: %s"
|
msgstr "Ha fallat en obtenir la quota de SES: %s"
|
||||||
|
|
||||||
#: robotstxt-updater.php:362
|
#: robotstxt-smtp-amazonses.php:68
|
||||||
msgid "Security check failed"
|
msgid ""
|
||||||
msgstr "Ha fallat la comprovació de seguretat"
|
"SMTP (by ROBOTSTXT) Amazon SES requires the SMTP (by ROBOTSTXT) plugin to be "
|
||||||
|
"installed and active."
|
||||||
|
msgstr ""
|
||||||
|
"SMTP (by ROBOTSTXT) Amazon SES requereix que el connector SMTP (by ROBOTSTXT) "
|
||||||
|
"estigui instal·lat i actiu."
|
||||||
|
|
||||||
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
#~ msgid "From Email"
|
||||||
msgstr "SMTP (by ROBOTSTXT) Amazon SES"
|
#~ msgstr "Email remitent"
|
||||||
|
|
||||||
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
#~ msgid "From Name"
|
||||||
msgstr "Afegeix suport de configuració d'Amazon SES al plugin ROBOTSTXT SMTP."
|
#~ msgstr "Nom remitent"
|
||||||
|
|
||||||
msgid "ROBOTSTXT"
|
#~ msgid "Reply-To Email"
|
||||||
msgstr "ROBOTSTXT"
|
#~ msgstr "Email de resposta"
|
||||||
|
|
||||||
|
#~ msgid "Reply-To Name"
|
||||||
|
#~ msgstr "Nom de resposta"
|
||||||
|
|
||||||
|
#, php-format
|
||||||
|
#~ msgid "Could not verify Amazon SES credentials: %s"
|
||||||
|
#~ msgstr "No s'han pogut verificar les credencials d'Amazon SES: %s"
|
||||||
|
|
||||||
|
#, php-format
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "An unexpected error occurred while validating Amazon SES credentials: %s"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "S'ha produït un error inesperat en validar les credencials d'Amazon SES: "
|
||||||
|
#~ "%s"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -1,7 +1,9 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES\n"
|
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES\n"
|
||||||
"POT-Creation-Date: 2026-01-29 10:03+0100\n"
|
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/robotstxt-smtp-"
|
||||||
|
"amazonses\n"
|
||||||
|
"POT-Creation-Date: 2026-06-09T10:41:00+00:00\n"
|
||||||
"PO-Revision-Date: 2026-01-29 09:30+0100\n"
|
"PO-Revision-Date: 2026-01-29 09:30+0100\n"
|
||||||
"Last-Translator: ROBOTSTXT <robotstxt@robotstxt.es>\n"
|
"Last-Translator: ROBOTSTXT <robotstxt@robotstxt.es>\n"
|
||||||
"Language-Team: Spanish\n"
|
"Language-Team: Spanish\n"
|
||||||
|
|
@ -12,304 +14,357 @@ msgstr ""
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Generator: Manual\n"
|
"X-Generator: Manual\n"
|
||||||
|
|
||||||
#: includes/class-plugin.php:151
|
#. Plugin Name of the plugin
|
||||||
msgid "Amazon SES could not send the email because no recipient was provided."
|
#: robotstxt-smtp-amazonses.php
|
||||||
msgstr "Amazon SES no pudo enviar el email porque no se proporcionó ningún destinatario."
|
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
||||||
|
msgstr "SMTP (by ROBOTSTXT) Amazon SES"
|
||||||
|
|
||||||
#: includes/class-plugin.php:224
|
#. Plugin URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Description of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
||||||
|
msgstr "Añade soporte de configuración de Amazon SES al plugin ROBOTSTXT SMTP."
|
||||||
|
|
||||||
|
#. Author of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "ROBOTSTXT"
|
||||||
|
msgstr "ROBOTSTXT"
|
||||||
|
|
||||||
|
#. Author URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://www.robotstxt.es/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:379
|
||||||
|
msgid "Security check failed"
|
||||||
|
msgstr "Falló la comprobación de seguridad"
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:384 includes/class-plugin.php:918
|
||||||
|
msgid "You do not have sufficient permissions to access this page."
|
||||||
|
msgstr "No tienes permisos suficientes para acceder a esta página."
|
||||||
|
|
||||||
|
#: includes/class-plugin.php:149
|
||||||
|
msgid "Amazon SES could not send the email because no recipient was provided."
|
||||||
|
msgstr ""
|
||||||
|
"Amazon SES no pudo enviar el email porque no se proporcionó ningún "
|
||||||
|
"destinatario."
|
||||||
|
|
||||||
|
#. translators: %s: Error details describing the email preparation failure.
|
||||||
|
#: includes/class-plugin.php:231
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not prepare the email: %s"
|
msgid "Amazon SES could not prepare the email: %s"
|
||||||
msgstr "Amazon SES no pudo preparar el email: %s"
|
msgstr "Amazon SES no pudo preparar el email: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:265
|
#. translators: %s: Error message returned by Amazon SES.
|
||||||
|
#: includes/class-plugin.php:275
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not send the email: %s"
|
msgid "Amazon SES could not send the email: %s"
|
||||||
msgstr "Amazon SES no pudo enviar el email: %s"
|
msgstr "Amazon SES no pudo enviar el email: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:282
|
#. translators: %s: Error message describing the unexpected failure.
|
||||||
|
#: includes/class-plugin.php:295
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
||||||
msgstr "Ocurrió un error inesperado al enviar a través de Amazon SES: %s"
|
msgstr "Ocurrió un error inesperado al enviar a través de Amazon SES: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:330
|
#. translators: %s: Error details describing why the From header is invalid.
|
||||||
|
#: includes/class-plugin.php:357
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the \"From\" address: %s"
|
msgid "Amazon SES rejected the \"From\" address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección \"De\": %s"
|
msgstr "Amazon SES rechazó la dirección \"De\": %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:351
|
#. translators: %s: Invalid recipient email address.
|
||||||
|
#: includes/class-plugin.php:378
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the recipient address: %s"
|
msgid "Amazon SES rejected the recipient address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección del destinatario: %s"
|
msgstr "Amazon SES rechazó la dirección del destinatario: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:373
|
#. translators: %s: Invalid CC email address.
|
||||||
|
#: includes/class-plugin.php:400
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the CC address: %s"
|
msgid "Amazon SES rejected the CC address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección CC: %s"
|
msgstr "Amazon SES rechazó la dirección CC: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:395
|
#. translators: %s: Invalid BCC email address.
|
||||||
|
#: includes/class-plugin.php:422
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the BCC address: %s"
|
msgid "Amazon SES rejected the BCC address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección CCO: %s"
|
msgstr "Amazon SES rechazó la dirección CCO: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:417
|
#. translators: %s: Invalid reply-to email address.
|
||||||
|
#: includes/class-plugin.php:444
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the reply-to address: %s"
|
msgid "Amazon SES rejected the reply-to address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección de respuesta: %s"
|
msgstr "Amazon SES rechazó la dirección de respuesta: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:446
|
#. translators: %s: Invalid reply-to email address from settings.
|
||||||
|
#: includes/class-plugin.php:473
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the configured reply-to address: %s"
|
msgid "Amazon SES rejected the configured reply-to address: %s"
|
||||||
msgstr "Amazon SES rechazó la dirección de respuesta configurada: %s"
|
msgstr "Amazon SES rechazó la dirección de respuesta configurada: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:497
|
#. translators: %s: Attachment path that could not be added.
|
||||||
|
#: includes/class-plugin.php:524
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not include the attachment: %s"
|
msgid "Amazon SES could not include the attachment: %s"
|
||||||
msgstr "Amazon SES no pudo incluir el adjunto: %s"
|
msgstr "Amazon SES no pudo incluir el adjunto: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:833
|
#: includes/class-plugin.php:910
|
||||||
msgid "Security check failed."
|
msgid "Security check failed."
|
||||||
msgstr "Falló la comprobación de seguridad."
|
msgstr "Falló la comprobación de seguridad."
|
||||||
|
|
||||||
#: includes/class-plugin.php:841 robotstxt-updater.php:367
|
#: includes/class-plugin.php:931
|
||||||
msgid "You do not have sufficient permissions to access this page."
|
|
||||||
msgstr "No tienes permisos suficientes para acceder a esta página."
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:854
|
|
||||||
msgid "Amazon SES quotas refreshed successfully."
|
msgid "Amazon SES quotas refreshed successfully."
|
||||||
msgstr "Cuotas de Amazon SES actualizadas correctamente."
|
msgstr "Cuotas de Amazon SES actualizadas correctamente."
|
||||||
|
|
||||||
#: includes/class-plugin.php:861
|
#: includes/class-plugin.php:938
|
||||||
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
||||||
msgstr "No se pudieron obtener las cuotas de Amazon SES. Verifica el registro de depuración para más detalles."
|
msgstr ""
|
||||||
|
"No se pudieron obtener las cuotas de Amazon SES. Verifica el registro de "
|
||||||
|
"depuración para más detalles."
|
||||||
|
|
||||||
#: includes/class-plugin.php:900
|
#: includes/class-plugin.php:977
|
||||||
msgid "Access Key ID"
|
msgid "Access Key ID"
|
||||||
msgstr "ID de clave de acceso"
|
msgstr "ID de clave de acceso"
|
||||||
|
|
||||||
#: includes/class-plugin.php:906
|
#: includes/class-plugin.php:983
|
||||||
msgid "Secret Access Key"
|
msgid "Secret Access Key"
|
||||||
msgstr "Clave de acceso secreta"
|
msgstr "Clave de acceso secreta"
|
||||||
|
|
||||||
#: includes/class-plugin.php:912
|
#: includes/class-plugin.php:989
|
||||||
msgid "Region"
|
msgid "Region"
|
||||||
msgstr "Región"
|
msgstr "Región"
|
||||||
|
|
||||||
#: includes/class-plugin.php:918
|
#: includes/class-plugin.php:1028
|
||||||
msgid "From Email"
|
|
||||||
msgstr "Email remitente"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:924
|
|
||||||
msgid "From Name"
|
|
||||||
msgstr "Nombre remitente"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:930
|
|
||||||
msgid "Reply-To Email"
|
|
||||||
msgstr "Email de respuesta"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:936
|
|
||||||
msgid "Reply-To Name"
|
|
||||||
msgstr "Nombre de respuesta"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:951
|
|
||||||
msgid "Leave empty to keep the stored access key."
|
msgid "Leave empty to keep the stored access key."
|
||||||
msgstr "Dejar vacío para mantener la clave de acceso almacenada."
|
msgstr "Dejar vacío para mantener la clave de acceso almacenada."
|
||||||
|
|
||||||
#: includes/class-plugin.php:962
|
#: includes/class-plugin.php:1039
|
||||||
msgid "Provide the IAM access key ID with permissions to send email through Amazon SES. Leave the field empty to retain the existing value."
|
msgid ""
|
||||||
msgstr "Proporciona el ID de clave de acceso IAM con permisos para enviar email a través de Amazon SES. Deja el campo vacío para mantener el valor existente."
|
"Provide the IAM access key ID with permissions to send email through Amazon "
|
||||||
|
"SES. Leave the field empty to retain the existing value."
|
||||||
|
msgstr ""
|
||||||
|
"Proporciona el ID de clave de acceso IAM con permisos para enviar email a "
|
||||||
|
"través de Amazon SES. Deja el campo vacío para mantener el valor existente."
|
||||||
|
|
||||||
#: includes/class-plugin.php:974
|
#: includes/class-plugin.php:1051
|
||||||
msgid "Leave empty to keep the stored secret access key."
|
msgid "Leave empty to keep the stored secret access key."
|
||||||
msgstr "Dejar vacío para mantener la clave de acceso secreta almacenada."
|
msgstr "Dejar vacío para mantener la clave de acceso secreta almacenada."
|
||||||
|
|
||||||
#: includes/class-plugin.php:985
|
#: includes/class-plugin.php:1062
|
||||||
msgid "Enter the secret access key associated with the IAM user. Leave the field empty to retain the existing value."
|
msgid ""
|
||||||
msgstr "Introduce la clave de acceso secreta asociada con el usuario IAM. Deja el campo vacío para mantener el valor existente."
|
"Enter the secret access key associated with the IAM user. Leave the field "
|
||||||
|
"empty to retain the existing value."
|
||||||
|
msgstr ""
|
||||||
|
"Introduce la clave de acceso secreta asociada con el usuario IAM. Deja el "
|
||||||
|
"campo vacío para mantener el valor existente."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1000
|
#: includes/class-plugin.php:1077
|
||||||
msgid "Select a region"
|
msgid "Select a region"
|
||||||
msgstr "Selecciona una región"
|
msgstr "Selecciona una región"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1005
|
#: includes/class-plugin.php:1082
|
||||||
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
||||||
msgstr "Elige la región de AWS donde está alojada tu cuenta de Amazon SES."
|
msgstr "Elige la región de AWS donde está alojada tu cuenta de Amazon SES."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1082
|
#: includes/class-plugin.php:1160
|
||||||
msgid "The selected Amazon SES region is not available."
|
msgid "The selected Amazon SES region is not available."
|
||||||
msgstr "La región de Amazon SES seleccionada no está disponible."
|
msgstr "La región de Amazon SES seleccionada no está disponible."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1102
|
#: includes/class-plugin.php:1176
|
||||||
msgid "Amazon SES credentials were not saved. Provide an access key, secret key, and region."
|
msgid ""
|
||||||
msgstr "Las credenciales de Amazon SES no se guardaron. Proporciona una clave de acceso, clave secreta y región."
|
"Amazon SES credentials were not saved. Provide an access key, secret key, "
|
||||||
|
"and region."
|
||||||
|
msgstr ""
|
||||||
|
"Las credenciales de Amazon SES no se guardaron. Proporciona una clave de "
|
||||||
|
"acceso, clave secreta y región."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1126
|
#: includes/class-plugin.php:1200
|
||||||
msgid "Amazon SES credentials verified successfully."
|
msgid "Amazon SES credentials verified successfully."
|
||||||
msgstr "Credenciales de Amazon SES verificadas correctamente."
|
msgstr "Credenciales de Amazon SES verificadas correctamente."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1281
|
#: includes/class-plugin.php:1411
|
||||||
msgid "US East (Ohio)"
|
msgid "US East (Ohio)"
|
||||||
msgstr "EE.UU. Este (Ohio)"
|
msgstr "EE.UU. Este (Ohio)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1282
|
#: includes/class-plugin.php:1412
|
||||||
msgid "US East (N. Virginia)"
|
msgid "US East (N. Virginia)"
|
||||||
msgstr "EE.UU. Este (N. Virginia)"
|
msgstr "EE.UU. Este (N. Virginia)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1283
|
#: includes/class-plugin.php:1413
|
||||||
msgid "US West (N. California)"
|
msgid "US West (N. California)"
|
||||||
msgstr "EE.UU. Oeste (N. California)"
|
msgstr "EE.UU. Oeste (N. California)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1284
|
#: includes/class-plugin.php:1414
|
||||||
msgid "US West (Oregon)"
|
msgid "US West (Oregon)"
|
||||||
msgstr "EE.UU. Oeste (Oregón)"
|
msgstr "EE.UU. Oeste (Oregón)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1285
|
#: includes/class-plugin.php:1415
|
||||||
msgid "Africa (Cape Town)"
|
msgid "Africa (Cape Town)"
|
||||||
msgstr "África (Ciudad del Cabo)"
|
msgstr "África (Ciudad del Cabo)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1286
|
#: includes/class-plugin.php:1416
|
||||||
msgid "Asia Pacific (Hyderabad)"
|
msgid "Asia Pacific (Hyderabad)"
|
||||||
msgstr "Asia Pacífico (Hyderabad)"
|
msgstr "Asia Pacífico (Hyderabad)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1287
|
#: includes/class-plugin.php:1417
|
||||||
msgid "Asia Pacific (Jakarta)"
|
msgid "Asia Pacific (Jakarta)"
|
||||||
msgstr "Asia Pacífico (Yakarta)"
|
msgstr "Asia Pacífico (Yakarta)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1288
|
#: includes/class-plugin.php:1418
|
||||||
msgid "Asia Pacific (Mumbai)"
|
msgid "Asia Pacific (Mumbai)"
|
||||||
msgstr "Asia Pacífico (Mumbai)"
|
msgstr "Asia Pacífico (Mumbai)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1289
|
#: includes/class-plugin.php:1419
|
||||||
msgid "Asia Pacific (Osaka)"
|
msgid "Asia Pacific (Osaka)"
|
||||||
msgstr "Asia Pacífico (Osaka)"
|
msgstr "Asia Pacífico (Osaka)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1290
|
#: includes/class-plugin.php:1420
|
||||||
msgid "Asia Pacific (Seoul)"
|
msgid "Asia Pacific (Seoul)"
|
||||||
msgstr "Asia Pacífico (Seúl)"
|
msgstr "Asia Pacífico (Seúl)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1291
|
#: includes/class-plugin.php:1421
|
||||||
msgid "Asia Pacific (Singapore)"
|
msgid "Asia Pacific (Singapore)"
|
||||||
msgstr "Asia Pacífico (Singapur)"
|
msgstr "Asia Pacífico (Singapur)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1292
|
#: includes/class-plugin.php:1422
|
||||||
msgid "Asia Pacific (Sydney)"
|
msgid "Asia Pacific (Sydney)"
|
||||||
msgstr "Asia Pacífico (Sídney)"
|
msgstr "Asia Pacífico (Sídney)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1293
|
#: includes/class-plugin.php:1423
|
||||||
msgid "Asia Pacific (Tokyo)"
|
msgid "Asia Pacific (Tokyo)"
|
||||||
msgstr "Asia Pacífico (Tokio)"
|
msgstr "Asia Pacífico (Tokio)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1294
|
#: includes/class-plugin.php:1424
|
||||||
msgid "Canada (Central)"
|
msgid "Canada (Central)"
|
||||||
msgstr "Canadá (Central)"
|
msgstr "Canadá (Central)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1295
|
#: includes/class-plugin.php:1425
|
||||||
msgid "Europe (Frankfurt)"
|
msgid "Europe (Frankfurt)"
|
||||||
msgstr "Europa (Fráncfort)"
|
msgstr "Europa (Fráncfort)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1296
|
#: includes/class-plugin.php:1426
|
||||||
msgid "Europe (Ireland)"
|
msgid "Europe (Ireland)"
|
||||||
msgstr "Europa (Irlanda)"
|
msgstr "Europa (Irlanda)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1297
|
#: includes/class-plugin.php:1427
|
||||||
msgid "Europe (London)"
|
msgid "Europe (London)"
|
||||||
msgstr "Europa (Londres)"
|
msgstr "Europa (Londres)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1298
|
#: includes/class-plugin.php:1428
|
||||||
msgid "Europe (Milan)"
|
msgid "Europe (Milan)"
|
||||||
msgstr "Europa (Milán)"
|
msgstr "Europa (Milán)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1299
|
#: includes/class-plugin.php:1429
|
||||||
msgid "Europe (Paris)"
|
msgid "Europe (Paris)"
|
||||||
msgstr "Europa (París)"
|
msgstr "Europa (París)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1300
|
#: includes/class-plugin.php:1430
|
||||||
msgid "Europe (Stockholm)"
|
msgid "Europe (Stockholm)"
|
||||||
msgstr "Europa (Estocolmo)"
|
msgstr "Europa (Estocolmo)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1301
|
#: includes/class-plugin.php:1431
|
||||||
msgid "Europe (Zurich)"
|
msgid "Europe (Zurich)"
|
||||||
msgstr "Europa (Zúrich)"
|
msgstr "Europa (Zúrich)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1302
|
#: includes/class-plugin.php:1432
|
||||||
msgid "Israel (Tel Aviv)"
|
msgid "Israel (Tel Aviv)"
|
||||||
msgstr "Israel (Tel Aviv)"
|
msgstr "Israel (Tel Aviv)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1303
|
#: includes/class-plugin.php:1433
|
||||||
msgid "Middle East (Bahrain)"
|
msgid "Middle East (Bahrain)"
|
||||||
msgstr "Oriente Medio (Baréin)"
|
msgstr "Oriente Medio (Baréin)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1304
|
#: includes/class-plugin.php:1434
|
||||||
msgid "Middle East (UAE)"
|
msgid "Middle East (UAE)"
|
||||||
msgstr "Oriente Medio (EAU)"
|
msgstr "Oriente Medio (EAU)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1305
|
#: includes/class-plugin.php:1435
|
||||||
msgid "South America (São Paulo)"
|
msgid "South America (São Paulo)"
|
||||||
msgstr "Sudamérica (São Paulo)"
|
msgstr "Sudamérica (São Paulo)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1306
|
#: includes/class-plugin.php:1436
|
||||||
msgid "AWS GovCloud (US-East)"
|
msgid "AWS GovCloud (US-East)"
|
||||||
msgstr "AWS GovCloud (EE.UU.-Este)"
|
msgstr "AWS GovCloud (EE.UU.-Este)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1307
|
#: includes/class-plugin.php:1437
|
||||||
msgid "AWS GovCloud (US-West)"
|
msgid "AWS GovCloud (US-West)"
|
||||||
msgstr "AWS GovCloud (EE.UU.-Oeste)"
|
msgstr "AWS GovCloud (EE.UU.-Oeste)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1322
|
#. translators: 1: AWS region display name. 2: AWS region code.
|
||||||
|
#: includes/class-plugin.php:1452
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%1$s (%2$s)"
|
msgid "%1$s (%2$s)"
|
||||||
msgstr "%1$s (%2$s)"
|
msgstr "%1$s (%2$s)"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1338
|
#. translators: %s: AWS region code.
|
||||||
|
#: includes/class-plugin.php:1468
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Region %s"
|
msgid "Region %s"
|
||||||
msgstr "Región %s"
|
msgstr "Región %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1389
|
#. translators: %s: Error message from Amazon SES.
|
||||||
|
#: includes/class-plugin.php:1509
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Invalid Amazon SES credentials: %s"
|
msgid "Invalid Amazon SES credentials: %s"
|
||||||
msgstr "Credenciales de Amazon SES inválidas: %s"
|
msgstr "Credenciales de Amazon SES inválidas: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1400
|
#: includes/class-plugin.php:1574 includes/class-plugin.php:1596
|
||||||
#, php-format
|
|
||||||
msgid "Could not verify Amazon SES credentials: %s"
|
|
||||||
msgstr "No se pudieron verificar las credenciales de Amazon SES: %s"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:1411
|
|
||||||
#, php-format
|
|
||||||
msgid "An unexpected error occurred while validating Amazon SES credentials: %s"
|
|
||||||
msgstr "Ocurrió un error inesperado al validar las credenciales de Amazon SES: %s"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:1470 includes/class-plugin.php:1492
|
|
||||||
msgid "Amazon SES credentials are not configured."
|
msgid "Amazon SES credentials are not configured."
|
||||||
msgstr "Las credenciales de Amazon SES no están configuradas."
|
msgstr "Las credenciales de Amazon SES no están configuradas."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1506
|
#: includes/class-plugin.php:1610
|
||||||
msgid "Amazon SES did not return quota data."
|
msgid "Amazon SES did not return quota data."
|
||||||
msgstr "Amazon SES no devolvió datos de cuota."
|
msgstr "Amazon SES no devolvió datos de cuota."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1524
|
#: includes/class-plugin.php:1632
|
||||||
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
||||||
msgstr "No se pueden obtener las cuotas de SES: el usuario IAM no tiene el permiso ses:GetAccount."
|
msgstr ""
|
||||||
|
"No se pueden obtener las cuotas de SES: el usuario IAM no tiene el permiso "
|
||||||
|
"ses:GetAccount."
|
||||||
|
|
||||||
#: includes/class-plugin.php:1532
|
#. translators: %s: AWS error message
|
||||||
|
#: includes/class-plugin.php:1640
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES API error: %s"
|
msgid "Amazon SES API error: %s"
|
||||||
msgstr "Error de API de Amazon SES: %s"
|
msgstr "Error de API de Amazon SES: %s"
|
||||||
|
|
||||||
#: includes/class-plugin.php:1541
|
#. translators: %s: Error message
|
||||||
|
#: includes/class-plugin.php:1649
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Failed to fetch SES quota: %s"
|
msgid "Failed to fetch SES quota: %s"
|
||||||
msgstr "Falló al obtener la cuota de SES: %s"
|
msgstr "Falló al obtener la cuota de SES: %s"
|
||||||
|
|
||||||
#: robotstxt-updater.php:362
|
#: robotstxt-smtp-amazonses.php:68
|
||||||
msgid "Security check failed"
|
msgid ""
|
||||||
msgstr "Falló la comprobación de seguridad"
|
"SMTP (by ROBOTSTXT) Amazon SES requires the SMTP (by ROBOTSTXT) plugin to be "
|
||||||
|
"installed and active."
|
||||||
|
msgstr ""
|
||||||
|
"SMTP (by ROBOTSTXT) Amazon SES requiere que el plugin SMTP (by ROBOTSTXT) "
|
||||||
|
"esté instalado y activo."
|
||||||
|
|
||||||
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
#~ msgid "From Email"
|
||||||
msgstr "SMTP (by ROBOTSTXT) Amazon SES"
|
#~ msgstr "Email remitente"
|
||||||
|
|
||||||
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
#~ msgid "From Name"
|
||||||
msgstr "Añade soporte de configuración de Amazon SES al plugin ROBOTSTXT SMTP."
|
#~ msgstr "Nombre remitente"
|
||||||
|
|
||||||
msgid "ROBOTSTXT"
|
#~ msgid "Reply-To Email"
|
||||||
msgstr "ROBOTSTXT"
|
#~ msgstr "Email de respuesta"
|
||||||
|
|
||||||
|
#~ msgid "Reply-To Name"
|
||||||
|
#~ msgstr "Nombre de respuesta"
|
||||||
|
|
||||||
|
#, php-format
|
||||||
|
#~ msgid "Could not verify Amazon SES credentials: %s"
|
||||||
|
#~ msgstr "No se pudieron verificar las credenciales de Amazon SES: %s"
|
||||||
|
|
||||||
|
#, php-format
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "An unexpected error occurred while validating Amazon SES credentials: %s"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "Ocurrió un error inesperado al validar las credenciales de Amazon SES: %s"
|
||||||
|
|
|
||||||
|
|
@ -1,359 +1,326 @@
|
||||||
#, fuzzy
|
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES\n"
|
"Project-Id-Version: SMTP (by ROBOTSTXT) Amazon SES 2.1.5\n"
|
||||||
"POT-Creation-Date: 2026-01-29 10:03+0100\n"
|
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/robotstxt-smtp-amazonses\n"
|
||||||
"PO-Revision-Date: 2026-01-29 10:03+0100\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Last-Translator: \n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
"Language-Team: \n"
|
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
"POT-Creation-Date: 2026-06-09T10:41:00+00:00\n"
|
||||||
"X-Generator: Poedit 3.8\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"X-Poedit-Basepath: ..\n"
|
"X-Generator: WP-CLI 2.12.0\n"
|
||||||
"X-Poedit-Flags-xgettext: --add-comments=translators:\n"
|
"X-Domain: robotstxt-smtp-amazonses\n"
|
||||||
"X-Poedit-WPHeader: robotstxt-smtp-amazonses.php\n"
|
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
|
||||||
"X-Poedit-KeywordsList: "
|
|
||||||
"__;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
|
||||||
"X-Poedit-SearchPath-0: .\n"
|
|
||||||
"X-Poedit-SearchPathExcluded-0: *.min.js\n"
|
|
||||||
"X-Poedit-SearchPathExcluded-1: vendor\n"
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:151
|
#. Plugin Name of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Plugin URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Description of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Author of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "ROBOTSTXT"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. Author URI of the plugin
|
||||||
|
#: robotstxt-smtp-amazonses.php
|
||||||
|
msgid "https://www.robotstxt.es/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:379
|
||||||
|
msgid "Security check failed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: class-robotstxt-updater.php:384
|
||||||
|
#: includes/class-plugin.php:918
|
||||||
|
msgid "You do not have sufficient permissions to access this page."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: includes/class-plugin.php:149
|
||||||
msgid "Amazon SES could not send the email because no recipient was provided."
|
msgid "Amazon SES could not send the email because no recipient was provided."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error details describing the email preparation failure.
|
#. translators: %s: Error details describing the email preparation failure.
|
||||||
#: includes/class-plugin.php:224
|
#: includes/class-plugin.php:231
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not prepare the email: %s"
|
msgid "Amazon SES could not prepare the email: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error message returned by Amazon SES.
|
#. translators: %s: Error message returned by Amazon SES.
|
||||||
#: includes/class-plugin.php:265
|
#: includes/class-plugin.php:275
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not send the email: %s"
|
msgid "Amazon SES could not send the email: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error message describing the unexpected failure.
|
#. translators: %s: Error message describing the unexpected failure.
|
||||||
#: includes/class-plugin.php:282
|
#: includes/class-plugin.php:295
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
msgid "An unexpected error occurred while sending through Amazon SES: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error details describing why the From header is invalid.
|
#. translators: %s: Error details describing why the From header is invalid.
|
||||||
#: includes/class-plugin.php:330
|
#: includes/class-plugin.php:357
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the \"From\" address: %s"
|
msgid "Amazon SES rejected the \"From\" address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Invalid recipient email address.
|
#. translators: %s: Invalid recipient email address.
|
||||||
#: includes/class-plugin.php:351
|
#: includes/class-plugin.php:378
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the recipient address: %s"
|
msgid "Amazon SES rejected the recipient address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Invalid CC email address.
|
#. translators: %s: Invalid CC email address.
|
||||||
#: includes/class-plugin.php:373
|
#: includes/class-plugin.php:400
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the CC address: %s"
|
msgid "Amazon SES rejected the CC address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Invalid BCC email address.
|
#. translators: %s: Invalid BCC email address.
|
||||||
#: includes/class-plugin.php:395
|
#: includes/class-plugin.php:422
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the BCC address: %s"
|
msgid "Amazon SES rejected the BCC address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Invalid reply-to email address.
|
#. translators: %s: Invalid reply-to email address.
|
||||||
#: includes/class-plugin.php:417
|
#: includes/class-plugin.php:444
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the reply-to address: %s"
|
msgid "Amazon SES rejected the reply-to address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Invalid reply-to email address from settings.
|
#. translators: %s: Invalid reply-to email address from settings.
|
||||||
#: includes/class-plugin.php:446
|
#: includes/class-plugin.php:473
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES rejected the configured reply-to address: %s"
|
msgid "Amazon SES rejected the configured reply-to address: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Attachment path that could not be added.
|
#. translators: %s: Attachment path that could not be added.
|
||||||
#: includes/class-plugin.php:497
|
#: includes/class-plugin.php:524
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES could not include the attachment: %s"
|
msgid "Amazon SES could not include the attachment: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:833
|
#: includes/class-plugin.php:910
|
||||||
msgid "Security check failed."
|
msgid "Security check failed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:841 robotstxt-updater.php:367
|
#: includes/class-plugin.php:931
|
||||||
msgid "You do not have sufficient permissions to access this page."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:854
|
|
||||||
msgid "Amazon SES quotas refreshed successfully."
|
msgid "Amazon SES quotas refreshed successfully."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:861
|
#: includes/class-plugin.php:938
|
||||||
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
msgid "Unable to fetch quotas from Amazon SES. Check debug log for details."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:900
|
#: includes/class-plugin.php:977
|
||||||
msgid "Access Key ID"
|
msgid "Access Key ID"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:906
|
#: includes/class-plugin.php:983
|
||||||
msgid "Secret Access Key"
|
msgid "Secret Access Key"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:912
|
#: includes/class-plugin.php:989
|
||||||
msgid "Region"
|
msgid "Region"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:918
|
#: includes/class-plugin.php:1028
|
||||||
msgid "From Email"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:924
|
|
||||||
msgid "From Name"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:930
|
|
||||||
msgid "Reply-To Email"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:936
|
|
||||||
msgid "Reply-To Name"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:951
|
|
||||||
msgid "Leave empty to keep the stored access key."
|
msgid "Leave empty to keep the stored access key."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:962
|
#: includes/class-plugin.php:1039
|
||||||
msgid ""
|
msgid "Provide the IAM access key ID with permissions to send email through Amazon SES. Leave the field empty to retain the existing value."
|
||||||
"Provide the IAM access key ID with permissions to send email through Amazon "
|
|
||||||
"SES. Leave the field empty to retain the existing value."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:974
|
#: includes/class-plugin.php:1051
|
||||||
msgid "Leave empty to keep the stored secret access key."
|
msgid "Leave empty to keep the stored secret access key."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:985
|
#: includes/class-plugin.php:1062
|
||||||
msgid ""
|
msgid "Enter the secret access key associated with the IAM user. Leave the field empty to retain the existing value."
|
||||||
"Enter the secret access key associated with the IAM user. Leave the field "
|
|
||||||
"empty to retain the existing value."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1000
|
#: includes/class-plugin.php:1077
|
||||||
msgid "Select a region"
|
msgid "Select a region"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1005
|
#: includes/class-plugin.php:1082
|
||||||
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
msgid "Choose the AWS region where your Amazon SES account is hosted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1082
|
#: includes/class-plugin.php:1160
|
||||||
msgid "The selected Amazon SES region is not available."
|
msgid "The selected Amazon SES region is not available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1102
|
#: includes/class-plugin.php:1176
|
||||||
msgid ""
|
msgid "Amazon SES credentials were not saved. Provide an access key, secret key, and region."
|
||||||
"Amazon SES credentials were not saved. Provide an access key, secret key, "
|
|
||||||
"and region."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1126
|
#: includes/class-plugin.php:1200
|
||||||
msgid "Amazon SES credentials verified successfully."
|
msgid "Amazon SES credentials verified successfully."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1281
|
#: includes/class-plugin.php:1411
|
||||||
msgid "US East (Ohio)"
|
msgid "US East (Ohio)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1282
|
#: includes/class-plugin.php:1412
|
||||||
msgid "US East (N. Virginia)"
|
msgid "US East (N. Virginia)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1283
|
#: includes/class-plugin.php:1413
|
||||||
msgid "US West (N. California)"
|
msgid "US West (N. California)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1284
|
#: includes/class-plugin.php:1414
|
||||||
msgid "US West (Oregon)"
|
msgid "US West (Oregon)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1285
|
#: includes/class-plugin.php:1415
|
||||||
msgid "Africa (Cape Town)"
|
msgid "Africa (Cape Town)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1286
|
#: includes/class-plugin.php:1416
|
||||||
msgid "Asia Pacific (Hyderabad)"
|
msgid "Asia Pacific (Hyderabad)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1287
|
#: includes/class-plugin.php:1417
|
||||||
msgid "Asia Pacific (Jakarta)"
|
msgid "Asia Pacific (Jakarta)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1288
|
#: includes/class-plugin.php:1418
|
||||||
msgid "Asia Pacific (Mumbai)"
|
msgid "Asia Pacific (Mumbai)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1289
|
#: includes/class-plugin.php:1419
|
||||||
msgid "Asia Pacific (Osaka)"
|
msgid "Asia Pacific (Osaka)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1290
|
#: includes/class-plugin.php:1420
|
||||||
msgid "Asia Pacific (Seoul)"
|
msgid "Asia Pacific (Seoul)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1291
|
#: includes/class-plugin.php:1421
|
||||||
msgid "Asia Pacific (Singapore)"
|
msgid "Asia Pacific (Singapore)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1292
|
#: includes/class-plugin.php:1422
|
||||||
msgid "Asia Pacific (Sydney)"
|
msgid "Asia Pacific (Sydney)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1293
|
#: includes/class-plugin.php:1423
|
||||||
msgid "Asia Pacific (Tokyo)"
|
msgid "Asia Pacific (Tokyo)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1294
|
#: includes/class-plugin.php:1424
|
||||||
msgid "Canada (Central)"
|
msgid "Canada (Central)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1295
|
#: includes/class-plugin.php:1425
|
||||||
msgid "Europe (Frankfurt)"
|
msgid "Europe (Frankfurt)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1296
|
#: includes/class-plugin.php:1426
|
||||||
msgid "Europe (Ireland)"
|
msgid "Europe (Ireland)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1297
|
#: includes/class-plugin.php:1427
|
||||||
msgid "Europe (London)"
|
msgid "Europe (London)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1298
|
#: includes/class-plugin.php:1428
|
||||||
msgid "Europe (Milan)"
|
msgid "Europe (Milan)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1299
|
#: includes/class-plugin.php:1429
|
||||||
msgid "Europe (Paris)"
|
msgid "Europe (Paris)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1300
|
#: includes/class-plugin.php:1430
|
||||||
msgid "Europe (Stockholm)"
|
msgid "Europe (Stockholm)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1301
|
#: includes/class-plugin.php:1431
|
||||||
msgid "Europe (Zurich)"
|
msgid "Europe (Zurich)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1302
|
#: includes/class-plugin.php:1432
|
||||||
msgid "Israel (Tel Aviv)"
|
msgid "Israel (Tel Aviv)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1303
|
#: includes/class-plugin.php:1433
|
||||||
msgid "Middle East (Bahrain)"
|
msgid "Middle East (Bahrain)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1304
|
#: includes/class-plugin.php:1434
|
||||||
msgid "Middle East (UAE)"
|
msgid "Middle East (UAE)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1305
|
#: includes/class-plugin.php:1435
|
||||||
msgid "South America (São Paulo)"
|
msgid "South America (São Paulo)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1306
|
#: includes/class-plugin.php:1436
|
||||||
msgid "AWS GovCloud (US-East)"
|
msgid "AWS GovCloud (US-East)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1307
|
#: includes/class-plugin.php:1437
|
||||||
msgid "AWS GovCloud (US-West)"
|
msgid "AWS GovCloud (US-West)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: 1: AWS region display name. 2: AWS region code.
|
#. translators: 1: AWS region display name. 2: AWS region code.
|
||||||
#: includes/class-plugin.php:1322
|
#: includes/class-plugin.php:1452
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%1$s (%2$s)"
|
msgid "%1$s (%2$s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: AWS region code.
|
#. translators: %s: AWS region code.
|
||||||
#: includes/class-plugin.php:1338
|
#: includes/class-plugin.php:1468
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Region %s"
|
msgid "Region %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error message from Amazon SES.
|
#. translators: %s: Error message from Amazon SES.
|
||||||
#: includes/class-plugin.php:1389
|
#: includes/class-plugin.php:1509
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Invalid Amazon SES credentials: %s"
|
msgid "Invalid Amazon SES credentials: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error message from Amazon SES.
|
#: includes/class-plugin.php:1574
|
||||||
#: includes/class-plugin.php:1400
|
#: includes/class-plugin.php:1596
|
||||||
#, php-format
|
|
||||||
msgid "Could not verify Amazon SES credentials: %s"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. translators: %s: Error message describing the unexpected failure.
|
|
||||||
#: includes/class-plugin.php:1411
|
|
||||||
#, php-format
|
|
||||||
msgid ""
|
|
||||||
"An unexpected error occurred while validating Amazon SES credentials: %s"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: includes/class-plugin.php:1470 includes/class-plugin.php:1492
|
|
||||||
msgid "Amazon SES credentials are not configured."
|
msgid "Amazon SES credentials are not configured."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1506
|
#: includes/class-plugin.php:1610
|
||||||
msgid "Amazon SES did not return quota data."
|
msgid "Amazon SES did not return quota data."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: includes/class-plugin.php:1524
|
#: includes/class-plugin.php:1632
|
||||||
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
msgid "Cannot fetch SES quotas: IAM user lacks ses:GetAccount permission."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: AWS error message
|
#. translators: %s: AWS error message
|
||||||
#: includes/class-plugin.php:1532
|
#: includes/class-plugin.php:1640
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Amazon SES API error: %s"
|
msgid "Amazon SES API error: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. translators: %s: Error message
|
#. translators: %s: Error message
|
||||||
#: includes/class-plugin.php:1541
|
#: includes/class-plugin.php:1649
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Failed to fetch SES quota: %s"
|
msgid "Failed to fetch SES quota: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: robotstxt-updater.php:362
|
#: robotstxt-smtp-amazonses.php:68
|
||||||
msgid "Security check failed"
|
msgid "SMTP (by ROBOTSTXT) Amazon SES requires the SMTP (by ROBOTSTXT) plugin to be installed and active."
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Plugin Name of the plugin/theme
|
|
||||||
msgid "SMTP (by ROBOTSTXT) Amazon SES"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Plugin URI of the plugin/theme
|
|
||||||
msgid "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Description of the plugin/theme
|
|
||||||
msgid "Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Author of the plugin/theme
|
|
||||||
msgid "ROBOTSTXT"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Author URI of the plugin/theme
|
|
||||||
msgid "https://www.robotstxt.es/"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
||||||
114
readme.txt
114
readme.txt
|
|
@ -3,9 +3,9 @@ Contributors: javiercasares
|
||||||
Tags: amazon-ses, smtp, email, mail
|
Tags: amazon-ses, smtp, email, mail
|
||||||
Requires at least: 5.7
|
Requires at least: 5.7
|
||||||
Tested up to: 7.1
|
Tested up to: 7.1
|
||||||
Stable tag: 2.1.4
|
Stable tag: 2.1.5
|
||||||
Requires PHP: 8.2
|
Requires PHP: 8.2
|
||||||
Version: 2.1.4
|
Version: 2.1.5
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
||||||
|
|
||||||
|
|
@ -34,52 +34,102 @@ SMTP (by ROBOTSTXT) Amazon SES extends the core ROBOTSTXT SMTP plugin with a fir
|
||||||
|
|
||||||
= Do I need the base SMTP plugin? =
|
= Do I need the base SMTP plugin? =
|
||||||
|
|
||||||
Yes. This add-on depends on the core **SMTP (by ROBOTSTXT)** plugin for the settings interface, logging, and overall mail routing logic.
|
Yes. This add-on depends on the core **SMTP (by ROBOTSTXT)** plugin for the settings interface, logging, and overall mail routing logic. If the base plugin is missing or inactive, this add-on will show an admin notice and will not run.
|
||||||
|
|
||||||
= Are my credentials validated? =
|
= Are my credentials validated? =
|
||||||
|
|
||||||
The plugin validates Amazon SES credentials during saving to prevent misconfigurations. Errors appear directly on the SMTP settings page if authentication fails.
|
The plugin validates Amazon SES credentials during saving to prevent misconfigurations. Only definitive authentication errors (invalid access key or secret) will block saving. If the IAM user lacks the `ses:GetAccount` permission or there is a network issue, the credentials are still saved and will be used for sending.
|
||||||
|
|
||||||
= Does the plugin support multisite? =
|
= Does the plugin support multisite? =
|
||||||
|
|
||||||
Yes. Network administrators can manage credentials centrally or allow individual sites to configure their own Amazon SES connection.
|
Yes. Network administrators can manage credentials centrally or allow individual sites to configure their own Amazon SES connection.
|
||||||
|
|
||||||
|
== Compatibility ==
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
== Changelog ==
|
== Changelog ==
|
||||||
|
|
||||||
|
Only the 3 last versions. The full changelog will be at changelog.txt
|
||||||
|
|
||||||
|
= 2.1.5 =
|
||||||
|
|
||||||
|
_Release date: 2026-06-09_
|
||||||
|
|
||||||
|
**Added**
|
||||||
|
|
||||||
|
* Runtime check at initialization: if the parent SMTP (by ROBOTSTXT) plugin is missing or inactive, the plugin skips initialization and displays an admin notice instead of producing a fatal error.
|
||||||
|
|
||||||
|
**Fixed**
|
||||||
|
|
||||||
|
* Credentials never saving on first entry: credential validation now only blocks saving for definitive authentication failures. All other AWS errors allow saving.
|
||||||
|
* Reply-to email field cannot be cleared: submitting an empty value now explicitly removes the stored address.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
|
**Tests**
|
||||||
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
= 2.1.4 =
|
= 2.1.4 =
|
||||||
* Updated minimum WordPress version to 5.7 (the actual code minimum, verified by static analysis).
|
|
||||||
|
_Release date: 2026-06-09_
|
||||||
|
|
||||||
|
**Changed**
|
||||||
|
|
||||||
|
* Minimum WordPress version lowered from 6.5 to 5.7, reflecting the actual code minimum verified by static analysis.
|
||||||
|
|
||||||
|
**Compatibility**
|
||||||
|
|
||||||
|
* WordPress: 5.7 - 7.1
|
||||||
|
* PHP: 8.2 - 8.5
|
||||||
|
|
||||||
|
**Tests**
|
||||||
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
= 2.1.3 =
|
= 2.1.3 =
|
||||||
* Fixed nonce handling in manual quota refresh to correctly handle false values returned by filter_input().
|
|
||||||
* Fixed admin notices display to skip non-array notice entries.
|
|
||||||
* Fixed input normalization for recipients, attachments, and headers to properly skip non-string values instead of attempting unsafe casts.
|
|
||||||
* Removed unused internal method (dead code cleanup).
|
|
||||||
* Updated compatibility: tested up to WordPress 7.1.
|
|
||||||
* Internal: renamed updater file to follow WordPress naming conventions.
|
|
||||||
|
|
||||||
= 2.1.2 =
|
_Release date: 2026-06-09_
|
||||||
* Fixed charset encoding issue that caused "expected parameter value, got null" error when sending emails through Amazon SES.
|
|
||||||
* Added robust charset validation in header parsing to prevent empty or invalid charset values.
|
|
||||||
* Enhanced charset handling with fallback to UTF-8 when no valid charset is provided.
|
|
||||||
|
|
||||||
= 2.1.1 =
|
**Fixed**
|
||||||
* Added comprehensive Amazon SES debug context to test email error reports.
|
|
||||||
* Debug information now includes: AWS region, masked access key, SDK version, endpoint URL, and UTC timestamp.
|
|
||||||
* Enhanced AWS error reporting with request IDs, HTTP status codes, and error codes for easier troubleshooting.
|
|
||||||
* Improved security by masking access keys in error output (shows only first 4 and last 4 characters).
|
|
||||||
|
|
||||||
= 2.1.0 =
|
* Nonce handling in manual quota refresh now correctly handles `false` values from `filter_input()`.
|
||||||
* Changed uninstall behavior: plugin no longer performs cleanup on uninstall, all data cleanup is now handled by the core SMTP plugin.
|
* Admin notices display now skips non-array notice entries.
|
||||||
* This ensures Amazon SES credentials are preserved when only the add-on is removed, and properly cleaned when the core plugin is uninstalled.
|
* Input normalization for recipients, attachments, and headers now properly skips non-string values.
|
||||||
|
|
||||||
= 2.0.1 =
|
**Compatibility**
|
||||||
* Version bump for maintenance release.
|
|
||||||
|
|
||||||
= 2.0.0 =
|
* WordPress: 5.7 - 7.1
|
||||||
* Added Reply-To header support for emails sent via Amazon SES.
|
* PHP: 8.2 - 8.5
|
||||||
* Improved error handling and validation.
|
|
||||||
* Enhanced compatibility with core SMTP plugin 2.0.0.
|
|
||||||
* **BREAKING CHANGE**: Minimum PHP version increased to 8.2 (required by AWS SDK for PHP).
|
|
||||||
|
|
||||||
= 1.0.0 =
|
**Tests**
|
||||||
* Initial release.
|
|
||||||
|
* PHP_CodeSniffer: 3.13.5
|
||||||
|
* WordPress Coding Standards: 3.3.0
|
||||||
|
* PHPCompatibility: 9.3.5
|
||||||
|
* PHPStan: 2.2.2
|
||||||
|
|
||||||
|
= Previous versions =
|
||||||
|
|
||||||
|
If you want to see the full changelog, visit the [changelog.txt](https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses/raw/branch/main/changelog.txt) file.
|
||||||
|
|
||||||
|
== Compliance ==
|
||||||
|
|
||||||
|
This plugin adheres to the following security measures and review protocols for each version:
|
||||||
|
|
||||||
|
* [WordPress Plugin Handbook](https://developer.wordpress.org/plugins/)
|
||||||
|
* [WordPress Plugin Security](https://developer.wordpress.org/plugins/wordpress-org/plugin-security/)
|
||||||
|
* [WordPress APIs Security](https://developer.wordpress.org/apis/security/)
|
||||||
|
* [WordPress Coding Standards](https://github.com/WordPress/WordPress-Coding-Standards)
|
||||||
|
* [Plugin Check (PCP)](https://wordpress.org/plugins/plugin-check/)
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
* Plugin Name: SMTP (by ROBOTSTXT) Amazon SES
|
* Plugin Name: SMTP (by ROBOTSTXT) Amazon SES
|
||||||
* Plugin URI: https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses
|
* Plugin URI: https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses
|
||||||
* Description: Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin.
|
* Description: Adds Amazon SES configuration support to the ROBOTSTXT SMTP plugin.
|
||||||
* Version: 2.1.4
|
* Version: 2.1.5
|
||||||
* Requires at least: 5.7
|
* Requires at least: 5.7
|
||||||
* Requires PHP: 8.2
|
* Requires PHP: 8.2
|
||||||
* Network: true
|
* Network: true
|
||||||
|
|
@ -26,7 +26,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! defined( 'ROBOTSTXT_SMTP_AMAZONSES_VERSION' ) ) {
|
if ( ! defined( 'ROBOTSTXT_SMTP_AMAZONSES_VERSION' ) ) {
|
||||||
define( 'ROBOTSTXT_SMTP_AMAZONSES_VERSION', '2.1.4' );
|
define( 'ROBOTSTXT_SMTP_AMAZONSES_VERSION', '2.1.5' );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! defined( 'ROBOTSTXT_SMTP_AMAZONSES_FILE' ) ) {
|
if ( ! defined( 'ROBOTSTXT_SMTP_AMAZONSES_FILE' ) ) {
|
||||||
|
|
@ -55,12 +55,52 @@ if ( \is_readable( $autoload ) ) {
|
||||||
require_once $autoload;
|
require_once $autoload;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Loads the plugin text domain for translations.
|
||||||
|
*
|
||||||
|
* @since 2.1.5
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
function robotstxt_smtp_amazonses_load_textdomain(): void {
|
||||||
|
\load_plugin_textdomain(
|
||||||
|
'robotstxt-smtp-amazonses',
|
||||||
|
false,
|
||||||
|
dirname( ROBOTSTXT_SMTP_AMAZONSES_BASENAME ) . '/languages'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
\add_action( 'init', 'robotstxt_smtp_amazonses_load_textdomain' );
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Displays an admin notice when the parent plugin is missing or inactive.
|
||||||
|
*
|
||||||
|
* @since 2.1.5
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
function robotstxt_smtp_amazonses_missing_parent_notice(): void {
|
||||||
|
printf(
|
||||||
|
'<div class="notice notice-error is-dismissible"><p>%s</p></div>',
|
||||||
|
\esc_html__( 'SMTP (by ROBOTSTXT) Amazon SES requires the SMTP (by ROBOTSTXT) plugin to be installed and active.', 'robotstxt-smtp-amazonses' )
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Defer initialization to plugins_loaded so all plugins are available for the dependency check.
|
||||||
|
\add_action(
|
||||||
|
'plugins_loaded',
|
||||||
|
static function () {
|
||||||
|
if ( ! \class_exists( 'Robotstxt_SMTP\Plugin' ) ) {
|
||||||
|
\add_action( 'admin_notices', 'robotstxt_smtp_amazonses_missing_parent_notice' );
|
||||||
|
\add_action( 'network_admin_notices', 'robotstxt_smtp_amazonses_missing_parent_notice' );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
require_once ROBOTSTXT_SMTP_AMAZONSES_PATH . 'includes/class-plugin.php';
|
require_once ROBOTSTXT_SMTP_AMAZONSES_PATH . 'includes/class-plugin.php';
|
||||||
|
|
||||||
// Initialize the plugin.
|
|
||||||
// Dependency checking is handled by the "Requires Plugins" header in WordPress 6.5+.
|
|
||||||
\Robotstxt_SMTP_AmazonSES\Plugin::get_instance()->run();
|
\Robotstxt_SMTP_AmazonSES\Plugin::get_instance()->run();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
// Initialize ROBOTSTXT updater (auto-configures from plugin headers).
|
// Initialize ROBOTSTXT updater (does not depend on the parent plugin).
|
||||||
require_once __DIR__ . '/class-robotstxt-updater.php';
|
require_once __DIR__ . '/class-robotstxt-updater.php';
|
||||||
Robotstxt_Updater::init( __FILE__ );
|
Robotstxt_Updater::init( __FILE__ );
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "SMTP (by ROBOTSTXT) Amazon SES",
|
"name": "SMTP (by ROBOTSTXT) Amazon SES",
|
||||||
"slug": "robotstxt-smtp-amazonses",
|
"slug": "robotstxt-smtp-amazonses",
|
||||||
"version": "2.1.4",
|
"version": "2.1.5",
|
||||||
"download_url": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses/releases/download/2.1.4/robotstxt-smtp-amazonses-2.1.4.zip",
|
"download_url": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses/releases/download/2.1.5/robotstxt-smtp-amazonses-2.1.5.zip",
|
||||||
"requires": "5.7",
|
"requires": "5.7",
|
||||||
"requires_php": "8.2",
|
"requires_php": "8.2",
|
||||||
"tested": "7.1",
|
"tested": "7.1",
|
||||||
|
|
@ -12,10 +12,10 @@
|
||||||
"homepage": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses",
|
"homepage": "https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-amazonses",
|
||||||
"requires_plugins": ["robotstxt-smtp"],
|
"requires_plugins": ["robotstxt-smtp"],
|
||||||
"description": "Adds Amazon SES (Simple Email Service) configuration support to the ROBOTSTXT SMTP plugin. Integrates seamlessly with AWS SDK for PHP to send emails through Amazon SES infrastructure.",
|
"description": "Adds Amazon SES (Simple Email Service) configuration support to the ROBOTSTXT SMTP plugin. Integrates seamlessly with AWS SDK for PHP to send emails through Amazon SES infrastructure.",
|
||||||
"changelog": "<h3>2.1.4 - 2026-06-09</h3><ul><li><strong>Changed:</strong> Minimum WordPress version lowered to 5.7 (verified real minimum by static analysis)</li></ul><h3>2.1.3 - 2026-06-09</h3><ul><li><strong>Fixed:</strong> Nonce handling in manual quota refresh to correctly handle false values from filter_input()</li><li><strong>Fixed:</strong> Admin notices display now skips non-array notice entries</li><li><strong>Fixed:</strong> Input normalization for recipients, attachments, and headers now properly skips non-string values</li><li><strong>Removed:</strong> Unused internal rate limit method (dead code cleanup)</li><li><strong>Compatibility:</strong> Tested up to WordPress 7.1</li></ul><h3>2.1.2 - 2026-02-12</h3><ul><li><strong>Fixed:</strong> Charset encoding issue that caused \"expected parameter value, got null\" error when sending emails through Amazon SES</li><li><strong>Improved:</strong> Added robust charset validation in header parsing to prevent empty or invalid charset values</li><li><strong>Improved:</strong> Enhanced charset handling with automatic fallback to UTF-8 when no valid charset is provided</li></ul>",
|
"changelog": "<h3>2.1.5 - 2026-06-09</h3><ul><li><strong>Added:</strong> Runtime check for missing parent plugin — shows admin notice instead of fatal error</li><li><strong>Fixed:</strong> Credentials never saving on first entry — validation now only blocks on definitive auth failures (InvalidClientTokenId, SignatureDoesNotMatch, InvalidAccessKeyId)</li><li><strong>Fixed:</strong> Reply-to email field cannot be cleared — submitting empty now removes the stored address</li></ul><h3>2.1.4 - 2026-06-09</h3><ul><li><strong>Changed:</strong> Minimum WordPress version lowered to 5.7 (verified real minimum by static analysis)</li></ul><h3>2.1.3 - 2026-06-09</h3><ul><li><strong>Fixed:</strong> Nonce handling in manual quota refresh to correctly handle false values from filter_input()</li><li><strong>Fixed:</strong> Admin notices display now skips non-array notice entries</li><li><strong>Fixed:</strong> Input normalization for recipients, attachments, and headers now properly skips non-string values</li><li><strong>Removed:</strong> Unused internal rate limit method (dead code cleanup)</li><li><strong>Compatibility:</strong> Tested up to WordPress 7.1</li></ul><h3>2.1.2 - 2026-02-12</h3><ul><li><strong>Fixed:</strong> Charset encoding issue that caused \"expected parameter value, got null\" error when sending emails through Amazon SES</li><li><strong>Improved:</strong> Added robust charset validation in header parsing to prevent empty or invalid charset values</li><li><strong>Improved:</strong> Enhanced charset handling with automatic fallback to UTF-8 when no valid charset is provided</li></ul>",
|
||||||
"sections": {
|
"sections": {
|
||||||
"description": "Adds Amazon SES (Simple Email Service) configuration support to the ROBOTSTXT SMTP plugin. Integrates seamlessly with AWS SDK for PHP to send emails through Amazon SES infrastructure.",
|
"description": "Adds Amazon SES (Simple Email Service) configuration support to the ROBOTSTXT SMTP plugin. Integrates seamlessly with AWS SDK for PHP to send emails through Amazon SES infrastructure.",
|
||||||
"changelog": "<h3>2.1.4 - 2026-06-09</h3><ul><li><strong>Changed:</strong> Minimum WordPress version lowered to 5.7 (verified real minimum by static analysis)</li></ul><h3>2.1.3 - 2026-06-09</h3><ul><li><strong>Fixed:</strong> Nonce handling in manual quota refresh to correctly handle false values from filter_input()</li><li><strong>Fixed:</strong> Admin notices display now skips non-array notice entries</li><li><strong>Fixed:</strong> Input normalization for recipients, attachments, and headers now properly skips non-string values</li><li><strong>Removed:</strong> Unused internal rate limit method (dead code cleanup)</li><li><strong>Compatibility:</strong> Tested up to WordPress 7.1</li></ul><h3>2.1.2 - 2026-02-12</h3><ul><li><strong>Fixed:</strong> Charset encoding issue that caused \"expected parameter value, got null\" error when sending emails through Amazon SES</li><li><strong>Improved:</strong> Added robust charset validation in header parsing to prevent empty or invalid charset values</li><li><strong>Improved:</strong> Enhanced charset handling with automatic fallback to UTF-8 when no valid charset is provided</li></ul><h3>2.1.1 - 2026-02-09</h3><ul><li><strong>Added:</strong> Comprehensive Amazon SES debug context to test email error reports</li><li><strong>Security:</strong> Access keys are now masked in error output (shows only first 4 and last 4 characters)</li></ul><h3>2.1.0 - 2026-02-09</h3><ul><li><strong>Changed:</strong> Uninstall behavior: plugin no longer performs cleanup on uninstall, all data cleanup is now handled by the core SMTP plugin</li></ul>"
|
"changelog": "<h3>2.1.5 - 2026-06-09</h3><ul><li><strong>Added:</strong> Runtime check for missing parent plugin — shows admin notice instead of fatal error</li><li><strong>Fixed:</strong> Credentials never saving on first entry — validation now only blocks on definitive auth failures</li><li><strong>Fixed:</strong> Reply-to email field cannot be cleared — submitting empty now removes the stored address</li></ul><h3>2.1.4 - 2026-06-09</h3><ul><li><strong>Changed:</strong> Minimum WordPress version lowered to 5.7 (verified real minimum by static analysis)</li></ul><h3>2.1.3 - 2026-06-09</h3><ul><li><strong>Fixed:</strong> Nonce handling in manual quota refresh to correctly handle false values from filter_input()</li><li><strong>Fixed:</strong> Admin notices display now skips non-array notice entries</li><li><strong>Fixed:</strong> Input normalization for recipients, attachments, and headers now properly skips non-string values</li><li><strong>Removed:</strong> Unused internal rate limit method (dead code cleanup)</li><li><strong>Compatibility:</strong> Tested up to WordPress 7.1</li></ul><h3>2.1.2 - 2026-02-12</h3><ul><li><strong>Fixed:</strong> Charset encoding issue that caused \"expected parameter value, got null\" error when sending emails through Amazon SES</li><li><strong>Improved:</strong> Added robust charset validation in header parsing to prevent empty or invalid charset values</li><li><strong>Improved:</strong> Enhanced charset handling with automatic fallback to UTF-8 when no valid charset is provided</li></ul><h3>2.1.1 - 2026-02-09</h3><ul><li><strong>Added:</strong> Comprehensive Amazon SES debug context to test email error reports</li><li><strong>Security:</strong> Access keys are now masked in error output (shows only first 4 and last 4 characters)</li></ul><h3>2.1.0 - 2026-02-09</h3><ul><li><strong>Changed:</strong> Uninstall behavior: plugin no longer performs cleanup on uninstall, all data cleanup is now handled by the core SMTP plugin</li></ul>"
|
||||||
},
|
},
|
||||||
"banners": {
|
"banners": {
|
||||||
"low": "",
|
"low": "",
|
||||||
|
|
|
||||||
4
vendor/composer/installed.php
vendored
4
vendor/composer/installed.php
vendored
|
|
@ -3,7 +3,7 @@
|
||||||
'name' => 'robotstxt/robotstxt-smtp-amazonses',
|
'name' => 'robotstxt/robotstxt-smtp-amazonses',
|
||||||
'pretty_version' => 'dev-main',
|
'pretty_version' => 'dev-main',
|
||||||
'version' => 'dev-main',
|
'version' => 'dev-main',
|
||||||
'reference' => 'b0fb27912c6bcd89eea786badab9921b36b41a91',
|
'reference' => '76ef43f421cbfa826db298560ad762a5bbfda1dc',
|
||||||
'type' => 'wordpress-plugin',
|
'type' => 'wordpress-plugin',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
|
@ -121,7 +121,7 @@
|
||||||
'robotstxt/robotstxt-smtp-amazonses' => array(
|
'robotstxt/robotstxt-smtp-amazonses' => array(
|
||||||
'pretty_version' => 'dev-main',
|
'pretty_version' => 'dev-main',
|
||||||
'version' => 'dev-main',
|
'version' => 'dev-main',
|
||||||
'reference' => 'b0fb27912c6bcd89eea786badab9921b36b41a91',
|
'reference' => '76ef43f421cbfa826db298560ad762a5bbfda1dc',
|
||||||
'type' => 'wordpress-plugin',
|
'type' => 'wordpress-plugin',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue