wp_mail()を利用した1回のコールで2通送信するという理由の分からない現象が発生、アレコレやっている内に正常に戻った(1通の送信)、という不思議な現象があったので書き留めておきます。
最初はプログラムミスで2度コールされたかと疑って確認しましたが、それはなかったでした。
メール送信する関数を他の機能でもコールしているのでそちらの方を実行したところ、そちらは1通しか送信されませんでした。データの誤りも確認しましたがそれも原因ではないようでした。
PHPのバージョンが5.3.29だったので5.4.35に変更して試してみましたが、やはり2通送信されました(さくらのレンタルサーバ)。
ところでChromeで管理画面からバージョンの切替えを実行すると、何故かログイン画面に移動してしまい、ログインし直してバージョンを確認しても切り替わっていませんでした。たまにこういうことが起こるので、操作はFirefoxから実行しました。
wp_mail()が原因かどうか確認するためmb_send_mail()に変更してみると、同じように2通送信されてしまいました。
そこでhttpデータを確認するためFirefoxのLive HTTP Headersアドオンを利用してキャプチャしてみましたが、同じセッションが2回繰り返されていることはありませんでした。
ところがです。この後の操作からmb_send_mail()も、元に戻したwp_mail()も正常に1通のみ送信するようになりました。
何が原因かは分かりません。こちらの手の届かない部分で発生した現象と考え、先に進むことにしました。
その後…
Chromeから操作すると、また2通送信されてしまいました。そこでFirefoxから操作してみましたが同様でした。再度Live HTTP Headersを操作すると、Firefoxからサイトをアクセスする限り2通送信されることはありませんでした。