wp_mail

説明

bool wp_mail( string $to, string $subject, string $message [ , mixed $headers = '' [ , mixed $attachments = array() ] ] )
メールを送信する。

パラメータ

  • $to
    送信先メールアドレスを指定。
  • $subject
    メールタイトルを指定。
  • $message
    メール本文を指定。
  • $headers
    メールヘッダー情報を文字列または配列で指定(省略時は'')。
  • $attachments
    添付ファイルを文字列または配列で指定(省略時はarray())。

返り値

メールを送信できた場合はtrueを。送信できなかった場合はfalseを返す。

注意

パラメータ$headersで送信元('from')が省略された場合は、名前は'WordPress'、メールアドレスは'wordpress@'サイト名('www.'から始まる場合は除外される)が適用される。
パラメータ$headersでコンテント情報('content-type')が省略された場合は、content-typeが'text/plain'、charsetが'UTF-8'が適用される。

使用例

  • 送信元を省略してメールを送信する。
    <?php @wp_mail( $to, $subject, $message ); ?>
  • 送信元を指定してメールを送信する。
    <?php
    $blogname = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
    $wp_email = 'wordpress@'.preg_replace( '#^www\.#', '', strtolower( $_SERVER['SERVER_NAME'] ) );
    $headers = "From: \"{$blogname}\" \n".
    	"Content-Type: text/plain; charset=\"UTF-8\"\n";
    @wp_mail( $to, $subject, $message, $headers );
    ?>

フィルター

本関数の冒頭で'wp_mail'フィルターを呼び出す。パラメータ$paramsは本関数で受け取った5つのパラメータを格納した連想配列となる。
extract( apply_filters( 'wp_mail', $params ) );
メールの送信者メールアドレスの確定前に'wp_mail_from'フィルターを呼び出す。パラメータは確定前のメールアドレスとなる。
$from = apply_filters( 'wp_mail_from', $from_email );
メールの送信者名の確定前に'wp_mail_from_name'フィルターを呼び出す。パラメータは確定前の送信者名となる。
$from_name = apply_filters( 'wp_mail_from_name', $from_name );
メールのcontent-typeの確定前に'wp_mail_content_type'フィルターを呼び出す。パラメータは確定前のcontent-typeとなる。
$content_type = apply_filters( 'wp_mail_content_type', $content_type );
メールのcharsetの確定前に'wp_mail_charset'フィルターを呼び出す。パラメータは確定前のcharsetとなる。
$charset = apply_filters( 'wp_mail_charset', $charset );

アクション

メールを送信する直前に'phpmailer_init'アクションを呼び出す。パラメータはPHPMailerクラスのオブジェクトが格納された配列となる。
do_action_ref_array( 'phpmailer_init', array( &$phpmailer ) );

ソースファイル

/wp-includes/pluggable.php

最終更新 : 2017年12月08日 10:35



お勧め

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2018年5月27日 更新)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

ショートコードを使ってテーマ内の画像URLを簡単に指定する(2018年5月27日 更新)

投稿記事の中で画像パーツを使いたいときがある。画像パーツの配置場所は、/imgディレクトリのようなテーマ外の場合と、/wp-content/themes/mytheme/imagesディレクトリのようなテーマ内の場合があり、今回は後者のケース。ショートコードを使って投稿記事の画像ファイルのURLを記述する方法を紹介したい。

Gutenbergでカスタムフィールドを使う(2018年8月10日 更新)

Gutenbergの新エディターではカスタムフィールドのウィジェットが表示されない。既存のカスタムフィールドのデータはなくなるわけでないので、新エディター上で編集・更新できないか調べてみた。

Login rebuilder 2.4.0の新機能を紹介(2018年5月27日 更新)

昨日、約半年ぶりにLogin rebuilderをアップデートし、著者ページ(author page)の閲覧を制限できる機能を追加した。この機能は、著者ページの閲覧によってユーザーIDが類推されることを防ぐことが目的としている。

ブロックエディターで編集したページが出力した余分な改行を削除(2019年2月22日 更新)

ブロックエディターで編集したページのHTMLソースは、投稿本文部分の改行が目立った。Webページとしての表示は問題ないのだが、データとしては不要なので削除することにした。