24

What is the advantage of using wp_mail() over mail(). Codex says they're similar, but they seem to be very similar.

1 Answer 1

25

wp_mail() is a pluggable function: It can be replaced by plugins. That’s useful in cases where the regular mail() doesn’t work (good enough), for example when you need extra authentication details. Example: WP Mail SMTP

wp_mail() uses PHPMailer by default, a sophisticated PHP class which offers a lot of useful preprocessing and workarounds for cases where mail() is too simple (UTF-8 encoded subject lines, attachments and so on). Just take a look at the bug tracker to get an idea about the complexity of these tasks.

wp_mail offers some hooks for other plugins to change different values:

  • 'wp_mail'
  • 'wp_mail_from'
  • 'wp_mail_from_name' use case
  • 'wp_mail_content_type'
  • 'wp_mail_charset'
  • 'phpmailer_init' (an action)

In short: Use wp_mail() for interoperability.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.