@momi9 (momoko tanaka)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

wordpressプラグイン WP user frontend で投稿公開時に投稿者に通知メールを送信させる方法について

php初心者です。
wordpressサイトにWP user frontendを導入してユーザーからの質問投稿を表示させる機能を追加しています。管理者の確認後に公開するようにしていますが、公開時にユーザーへの通知メールが行くようにしたいと思っています。

そのため、下記の情報を参照させていただき、プラグインを作ってみました。
https://www.paka3.net/wpplugin43/

下記の内容です。

add_action('transition_post_status', 'paka3PostMail', 10, 3);

function paka3PostMail($new_status, $old_status, $post){
   $a_address = $_POST['q_address'];
   $mail_address =array( '*******@example.com',$a_address );
   $subject = "質問公開のお知らせ";
   $content = $post->post_title;
   $link = get_permalink($post_ID);
   $header = array( 'From: *******@example.com' );
   $message =<<<EOS
質問が公開されました。
※今回のタイトル
「{$content}」
{$link}
EOS;
if ( 'publish' == $new_status  &&  'publish' != $old_status && 'question' == $post->post_type ) {
    wp_mail(  $mail_address, $subject, $message, $header );
  }
}

上記の内容で、投稿タイプがquestionの場合、ステータスが公開(publish)になったタイミングで管理者(*******@example.com)と投稿者充てに通知メールを送付するようにしたいのですが、管理者にしかメールが送付されません。メールの内容は想定通りで、content、linkの値は問題なく取得できています。

wp user frontendで投稿者が入力するメールアドレスのMeta keyをq_addressとしているのですが、この値が取得できていないようです。

この記述では誤りだと思うのですが、どうすればwp user frontendで投稿者が入力した値を取得し、この関数でメールを送付できるのか、ご教授いただければ幸いです。

0 likes

No Answers yet.

Your answer might help someone💌