今回のカスタマイズを行った経緯
クライアントからの要望が切っ掛けでした。
数人の寄稿者に記事の作成を任せているが、レビュー待ちとして投稿されても通知が来ないので、不便だと言うのです。
レビュー待ち投稿が送信されたとき管理者にメール通知することができないか?
そんなご要望をいただきました。
そしてたどり着いたのが、後述するカスタマイズです。
簡単なので、興味のある方は挑戦してみてください。
レビュー待ち投稿が送信されたとき管理者にメール通知する方法
functions.php に下記のコードを追記するだけです。
function mail_for_pending($new_status, $old_status, $post) {
if($old_status != 'pending' && $new_status == 'pending') {
$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
$post_title = wp_specialchars_decode($post->post_title, ENT_QUOTES);
$to = get_option('admin_email');
$subject = "{$blogname}|レビュー待ちの記事が投稿されました。";
$message = "レビュー待ちの記事が投稿されました。\r\n\r\n";
$message .= "タイトル:" . $post->post_title . "\r\n";
$user = get_userdata($post->post_author);
$message .= "投稿者:" . $user->display_name . "\r\n";
$message .= "\r\n";
$message .= "▽編集ページ\r\n";
$message .= wp_specialchars_decode(get_edit_post_link( $post->ID ), ENT_QUOTES) . "\r\n";
$r = wp_mail( $to, $subject, $message );
}
}
add_action('transition_post_status', 'mail_for_pending', 10, 3);
引用元:WordPressで記事がレビュー待ちとして送信された時に管理者宛にメール通知する方法
簡単にはできないかと思っていたのですが、コピペだけで行えました。
ゾノさん、有益な情報をありがとうございます!
投稿のステータスが【レビュー待ち】になると、管理者宛のメールが送信される仕組みですね。
まとめ
レビュー待ち投稿が送信されたとき管理者にメール通知する方法をご紹介しました。
functions.phpに前述したコードを追記するだけのお手軽なカスタマイズです。
興味のある方は、挑戦してみてください。
コメントを残す