Крюк Wordpress срабатывает до, а не после звонка - PullRequest
0 голосов
/ 14 сентября 2018

То, чего я добиваюсь, - это работа с WP REST API и подключение обновления метаданных пользователя. Вот ссылка на ссылку действия: https://codex.wordpress.org/Plugin_API/Action_Reference/updated_%28meta_type%29_meta

где написано:

"Этот хук называется после успешного вызова update_metadata."

Это код:

add_action( 'updated_user_meta', 'second_otp', 10, 4 );

function second_otp($meta_id, $object_id, $meta_key, $_meta_value) {
            $otp = $_meta_value;
            $message = "Your OTP =" . get_user_meta($object_id, "otp", true ) . get_user_meta($object_id, "nickname", true );
            $to = 'myemail@msn.com';
            $subject = 'OTP';
            $body = $message;
            $headers = array('Content-Type: text/html; charset=UTF-8');
            wp_mail( $to, $subject, $body, $headers );  
};

Но действие "updated_user_meta" запускается ДО написания метаполя. Например. если у пользователя есть OTP = "1111", и я отправляю этот json

{
    "id": "31",
  "roles": "verified",
  "meta": {"otp":"2222"}
} 

до конечной точки http://MYSITE/dev/index.php/wp-json/wp/v2/users/31/ Я получу письмо с телом:

"Your OTP = 1111"

Есть ли что-то, чего я не посчитал, что помогло бы мне отправить по электронной почте новый OTP пользователя, который я посылаю через API REST, а не старый?

...