[WordPress] 外掛分享: SMTP for Contact Form 7

首頁外掛目錄 › SMTP for Contact Form 7
1,000+
安裝啟用
★★★★
4/5 分(2 則評價)
3 天前
最後更新
67%
問題解決
WordPress 5.5+ PHP 7.1+ v1.1.0 上架:2022-11-19

內容簡介

SMTP for Contact Form 7 外掛可幫助用戶透過外部 SMTP 伺服器發送聯絡表單郵件,避免因本地郵件伺服器配置不當而導致郵件無法送達的問題,確保郵件的可靠性與安全性。

【主要功能】
• OAuth2 認證:安全連接 Gmail 和 Microsoft Office 365
• 每個表單自訂模板:為每個聯絡表單選擇特定模板
• 全球或僅 CF7 模式:選擇 SMTP 設定的應用範圍
• 實時測試:透過 Rest-Api 測試郵件設定
• 自動報告:定期接收郵件發送與失敗的報告
• 進階標頭與安全性:自動設定回覆標頭及自訂發件人資訊

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.1.0) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「SMTP for Contact Form 7」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

WordPress uses PHPMailer to send mail from with your local mail server, but it can happen that your mail were not accepted by mail providers…
This can happen for several reasons, sometimes because the mail server is not configured or sometimes because the records DKIM, DMARC and SPF of the domain been set up correctly and so on…
Anyway you can avoid any problems by using an external SMTP server and sending mail with it!
Additional features
✅ OAuth2 Authentication: Securely connect to Gmail and Microsoft Office 365 without needing to store passwords in your database or enable “less secure apps”.
✅ Per-Form Custom Templates: Wrap CF7 emails with beautiful templates. You can now select a specific custom template for each form directly from the plugin settings!
✅ Global or CF7-Only Mode: Choose whether to override all WordPress emails with this SMTP configuration or limit it exclusively to Contact Form 7 submissions.
✅ Live testing: a module for testing e-mail settings with the Rest-Api (that avoid to reload the page for this kind of test). The entire output of the php mailer will be captured, which will be useful in case of configuration errors or to get the wrong parameter when is possible.
✅ Automated Reports: choose when and what email you want to receive the report and I will send you a beautifully formatted HTML summary of sent and failed emails. Includes log retention settings to keep your database clean.
✅ Advanced Headers & Security: Easily automatically set “Reply-To” headers, allow insecure options for self-signed certificates, and define custom “From Name” and “From Email” settings.
This plugin is ads free and I don’t want to try to sell you any pro version!
If you want to contribute, there are many ways to do so, from simple suggestions and bug reports to translating and contributing code.
See below how to do it!
SMTP
SMTP stands for ‘Simple Mail Transfer Protocol’.
It is a connection-oriented, text-based network protocol of the Internet protocol family and as such is on the seventh layer of the ISO/OSI model, the application layer.
Like any other network protocol, it contains the rules for proper communication between networked computers.
SMTP is specifically responsible for sending and forwarding e-mails from a sender to a recipient.
Since its release in 1982 as the successor to the ‘Mail Box Protocol’ in Arpanet, SMTP has become the standard protocol for sending e-mails.
However, the SMTP procedure remains largely invisible to the normal consumer, as it is executed in the background by the e-mail programme used.
Only if the software, the webmail application on the browser or the mobile e-mail application does not automatically determine the SMTP protocol when creating an account, does it have to be set manually to ensure smooth e-mail traffic.
SMTP presets

Aruba
Gmail (tls and ssl)
Yahoo (tls and ssl)
Outlook (tls and ssl)
Office365 (tls)

OAuth2 Setup
Google Gmail
To use Gmail with OAuth2, you need to create a Google Cloud Project:
1. Go to Google Cloud Console (console.cloud.google.com).
2. Create a new project.
3. Go to APIs & Services > Credentials and click Create Credentials > OAuth client ID.
4. Application type: Web application.
5. Authorized redirect URIs: Copy the URL from the plugin settings (e.g., https://your-site.com/wp-admin/admin.php?page=cf7-smtp&oauth2_callback=1).
6. Copy the Client ID and Client Secret into the plugin settings.
7. Important: Go to OAuth consent screen > Test users and add your email address if the app is in “Testing” mode.
8. Click Connect with OAuth2 in the plugin settings.
Microsoft Office 365
1. Go to the Azure Portal (portal.azure.com).
2. Navigate to Azure Active Directory > App registrations > New registration.
3. Enter an application name and set the Redirect URI (Web) to the exact URL provided in the plugin settings.
4. Go to Certificates & secrets and create a new client secret. Copy the secret’s Value.
5. Go to API permissions > Add a permission > Microsoft Graph > Delegated permissions and add SMTP.Send and offline_access.
6. Copy the Application (client) ID and the Client Secret into the plugin settings.
7. Click Connect with OAuth2.
Would you like to find more presets (that you think are useful to other users)?
Open a request in the support form and provide the necessary connection data (auth, server address and port).
In the next cf7-smtp version you will find the required configuration among the presets.
Security
It’s warmly advised to use OAuth2 for supported providers (Gmail, Office365) so no passwords are saved. If using basic SMTP authentication, it is highly recommended to store at least the password into wp-config.php as a constant.
And in addition, it’s also very easy! It needs only to add
define( 'CF7_SMTP_USER_PASS', 'mySecr3tp4ssWord' );

into your wp-config.php just before
/* That's all, stop editing! Happy publishing. */

All passwords will be stored encrypted, but still it is not good practice to put it into database!
Quick setup
as with the user password other constants can also be defined.
Available constant are CF7_SMTP_HOST, CF7_SMTP_PORT, CF7_SMTP_AUTH, CF7_SMTP_USER_NAME, CF7_SMTP_USER_PASS, CF7_SMTP_FROM_MAIL, CF7_SMTP_FROM_NAME
But, to quickly set up the plugin there is one constant that wraps all the others, so in case you manage multiple websites this will be very convenient!
define(
'CF7_SMTP_SETTINGS',
array(
'host' => string,
'port' => number,
'auth' => ''|'tls'|'ssl',
'user_name' => string,
'user_pass' => string,
'replyTo' => true|false,
'insecure' => true|false,
'from_mail' => email,
'from_name' => string,
'smtp_mode' => 'cf7'|'override',
));

Template
Wouldn’t it be better to have a small container to make our mail a little prettier?
Well we have it! You can now assign specific templates to each of your forms via the plugin settings dashboard.
To use your own custom templates for emails, simply create them by following these steps:
1. Create a folder named cf7-smtp/ or templates/cf7-smtp/ in your theme (or child theme) folder.
2. Create a .php or .html template file inside it.
3. Go to the plugin settings under Style > Form Email Templates, and select your newly found custom template from the dropdown menu for the desired form.
4. (Optional) You can customize the logo, website link, and other template parts. Checkout the filter documentation on GitHub/wiki.
Support
Community support: via the support forums on wordpress.org
Bug reporting (preferred): file an issue on GitHub
Contribute
We love your input!
We want to make contributing to this project as easy and transparent as possible, whether it’s:

Reporting a bug
Testing the plugin
Discussing the current state, features, improvements
Submitting a fix or a new feature

We use GitHub to host code, to track issues and feature requests, as well as accept pull requests.
By contributing, you agree that your contributions will be licensed under its GPLv2 License.

延伸相關外掛

文章
Filter
Apply Filters
Mastodon