How to Effectively Send Emails Using wp_mail() in WordPress

Learn how to send emails using WordPress’s wp_mail() function and how to configure SMTP settings for reliable and secure email delivery.

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 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 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 = ',';

2. Adding attachments

To add attachments to the email, use the $attachments parameter.

$attachments = array('/path/to/', '/path/to/file2.jpg');
wp_mail($to, $subject, $body, $headers, $attachments);


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.

답글 남기기