Разрешить только буквы в поле имени на странице Myaccount в woocommerce - PullRequest
0 голосов
/ 31 января 2020

Я работаю над woocommerce и пытаюсь ограничить пользователей указанием «только букв» в поле имени и фамилии на странице Myaccount. Какой тип хука мне следует добавить в функции. php?

Ответы [ 3 ]

0 голосов
/ 01 февраля 2020

Можете ли вы попробовать?

function validate_my_field($args, $user) {
    // Test if this hook works when saving, then remove the line below
    echo 'Hook works!';
    if ( isset( $_POST['account_first_name'] ) && !ctype_alpha( $_POST['account_first_name'] ) ) {
        $args->add( 'account_first_name_error', __( 'Only letters allowed.', 'woocommerce' ) );
    }
}
add_action( 'woocommerce_save_account_details_errors','validate_my_field',  10, 2 );
0 голосов
/ 06 февраля 2020

Я получил решение

ссылка

add_action('woocommerce_process_myaccount_field_billing_last_name','billing_last_name_field_validation' );
function billing_last_name_field_validation(  ){
   /* print_r($_POST);
    die;*/


   $value = $_POST['billing_last_name'];
    if (!preg_match("/^[a-zA-Z]+$/", $value) ){       
        wc_add_notice( __( '<strong>Lastname should contain only letters</strong>' ), 'error' );
    }
    return $value; 
}
0 голосов
/ 31 января 2020

Вы можете использовать свою функцию. php и подключить код ниже.

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
$fields['first_name']['placeholder'] = '21343';
$fields['first_name']['label'] = 'name';
$fields['first_name']['pattern'] = '[A-Za-z]';
return $fields;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...