Wordpress - как предотвратить ловушку profile_update при регистрации заказа WooCommerce? - PullRequest
0 голосов
/ 30 марта 2019

Когда я добавляю эти строки в свой код, кажется, что всякий раз, когда пользователь размещает заказ в WooCommerce, он срабатывает и перезаписывает user_pass2 с empty string. Я ожидаю, что эта строка кода запускается только тогда, когда пользователь обновляет профиль

function my_profile_update( $user_id ) {
    if ( ! is_admin() ) {
        update_user_meta($user_id, 'user_pass2', password_hash($_POST['password_1'], PASSWORD_DEFAULT));
    }

}
add_action( 'profile_update', 'my_profile_update' );

1 Ответ

0 голосов
/ 31 марта 2019

Нам нужно просто проверить наличие аргумента $ _POST

function my_profile_update( $user_id ) {
    if ( ! is_admin() && isset($_POST['password_1']) ) {
        update_user_meta($user_id, 'user_pass2', password_hash($_POST['password_1'], PASSWORD_DEFAULT));
    }

}
add_action( 'profile_update', 'my_profile_update' );
...