Email is an essential communication tool for website operation. For WordPress users, sending emails can implement various functions such as user registration confirmation, password reset, and order confirmation. In this article, we will explain in detail how to send emails using wp_mail(), WordPress’s default email sending function. Additionally, we will introduce a more stable and reliable email sending method through SMTP configuration.
1. Overview of the wp_mail() function
The wp_mail() function in WordPress works similarly to PHP’s mail() function but follows WordPress settings for more integrated email sending. This function helps manage email sending more easily.
wp_mail($to, $subject, $message, $headers, $attachments);
Parameter Description
- $to: The recipient’s email address. When sending to multiple recipients, you can write a comma-separated string.
- $subject: The subject of the email.
- $message: The body of the email.
- $headers: (Optional) Email headers, usually written as an array.
- $attachments: (Optional) File paths for attachments, written as an array.
2. Basic email sending example
1. Setting the recipient, subject, and content
First, set the recipient, subject, and body of the email.
$to = 'recipient@example.com'; // Recipient email address $subject = 'Your Email Subject'; // Email subject $body = 'This is the body of the email.'; // Email body
2. Setting headers
To send an HTML email, you need to set headers. For a plain text email, this can be omitted.
$headers = array('Content-Type: text/html; charset=UTF-8');
3. Sending the email
Call the wp_mail() function to send the email.
wp_mail($to, $subject, $body, $headers);
3. Configuring email sending with SMTP
The basic wp_mail() function depends on the server’s mail settings. However, using an SMTP server for sending emails can achieve higher reliability and security. For this, you can use an SMTP plugin. One of the most widely used plugins is WP Mail SMTP.
1. Installing and setting up the WP Mail SMTP plugin
- Go to Plugins > Add New from the WordPress admin dashboard.
- Search for WP Mail SMTP, install, and activate it.
Go to the plugin settings page and enter the SMTP server information. For example, to use the Gmail SMTP server, configure as follows:
- SMTP Host: smtp.gmail.com
- SMTP Port: 587
- Encryption: TLS
- Use SMTP Authentication: Yes
- SMTP Username: Your Gmail address
- SMTP Password: Your Gmail password (or app password)
2. Sending a test email
Send a test email from the plugin settings page to confirm the configuration is correct.
4. Advanced settings
1. Sending emails to multiple recipients
To send emails to multiple recipients, write the recipient email addresses separated by commas.
$to = 'recipient1@example.com, recipient2@example.com';
2. Adding attachments
To add attachments to the email, use the $attachments parameter.
$attachments = array('/path/to/file1.zip', '/path/to/file2.jpg'); wp_mail($to, $subject, $body, $headers, $attachments);
Conclusion
The wp_mail() function in WordPress is a powerful tool that can easily send emails in various situations. It provides sufficient functionality with basic settings, and when combined with an SMTP plugin, you can build a more stable and secure email sending system. Utilize the various features of WordPress to maintain smooth communication with your users. Successfully building an email sending system can greatly enhance the user experience of your website.