この記事は最後に更新してから1年以上経過しています。

個人データのエクスポートメール向けに追加された新フィルター

説明

先週「WordPress 5.4 RC3」が公開され、正式リリースまであと1週間。ブロックエディターの機能強化が目立つわけですが、地味な変更点もちらほらと。今回はその中の1つ、「個人データのエクスポート」機能に関連するフィルターを紹介する。

「個人データのエクスポート」機能では、サイト投稿者などからのリクエストに対応するもので、その方の個人データのリンク(ダウンロード先)を記載したメールを送信する。そのメール送信には wp_mail関数が使用されており、これまでは次のような呼び出しになっていた。

$mail_success = wp_mail( $request_email, $subject, $content );

パラメータ$request_emailには送信先メールアドレスが、$subjectにはメールタイトルが、$contentにはメール本文が格納されており、それぞれ対応するフィルターでカスタマイズできるようになっている。

5.4ではwp_mail関数の呼び出しにおいてパラメータ$headersが追加され、その直前にwp_privacy_personal_data_email_headersフィルターを実行するように変更された。

$headers = apply_filters( 'wp_privacy_personal_data_email_headers', $headers, $subject, $content, $request_id, $email_data );

$mail_success = wp_mail( $request_email, $subject, $content, $headers );

パラメータ$headersの初期値は''で、上記のフィルターを使うことで任意のヘッダー情報を指定できる。

なお、サーバーのメール送信プログラム(sendmail)の設定によってはヘッダー情報が無視されたり、除外されたりする場合があるので、その点は留意したい。


最終更新 : 2020年04月02日 11:21


お勧め

wp_authenticate(2022年1月31日 更新)

WP_User | WP_Error wp_authenticate( string $username, string $password )
ユーザー認証を行う。

wp_send_json_success(2020年12月10日 更新)

void wp_send_json_success( [ mixed $response = null [ , int $status_code = null [ , int $options = 0 ] ] ] )
AJAXリクエストの成功レスポンスとしてJSON情報を返す。

wp_oembed_get(2014年11月16日 更新)

mixed wp_oembed_get( string $url [ , mixed $args = '' ] )
oEmbedに対応したページの埋め込み用コンテンツを取得する。

setup_postdata(2014年11月16日 更新)

bool setup_postdata( stdClass $post )
投稿記事に関連するグローバル変数を設定する。

the_permalink(2018年5月27日 更新)

void the_permalink( [ mixed $post = 0 ] )
現在の投稿データのパーマリンクを表示する。