Проверка имен на буквы Contact Form 7

198
12 декабря 2017, 20:42

Пытаюсь создать фильтр на проверку поля имени на цифры. Написал подобный код:

function my_wpcf7_validate_text( $result, $tag ) {
    $type = $tag['type'];
    $name = $tag['name'];
    $value = $_POST[$name] ;
    if ( strpos( $name , 'name' ) !== false ){
        $regex = '^[A-zА-яЁё]+$';
        $Valid = preg_match($regex,  $value, $matches );
        if ( $Valid > 0 ) {
        } else {
            $result->invalidate( $tag, wpcf7_get_message( 'invalid_name' ) );
        }
    }
    return $result;
}
add_filter( 'wpcf7_validate_text*', 'my_wpcf7_validate_text' , 10, 2 );
add_filter( 'wpcf7_messages', 'mywpcf7_text_messages' );
function mywpcf7_text_messages( $messages ) {
    return array_merge( $messages, array(
        'invalid_name' => array(
            'description' => __( "Name is invalid", 'contact-form-7' ),
            'default' => __( 'Name seems invalid.', 'contact-form-7' )
        )
    ));
}

Кирилические буквы почему-то не проходят. Что не так?

Answer 1

Полагаю, вам поможет такое регулярное выражение /^[a-zа-яё]+$/iu. И сам код проверки я бы изменил:

if ( !preg_match('/^[a-zа-яё]+$/iu', $value) ) {
    $result->invalidate( $tag, wpcf7_get_message( 'invalid_name' ) );
}
READ ALSO
Ошибка 500 Bitrix

Ошибка 500 Bitrix

Здравствуйте! Исправлял файлы сайта через FTP и получил 500 ошибку) Залил обратно те же файлы что были до исправления на FTP и все равно ошибка...

237
Натяжка слайдера wordpress

Натяжка слайдера wordpress

Проблема состоит в ошибке цикла foreach (invalid argument supplied for foreach())Собственно, код:

244
yii2-fotorama-widget не роботает в модалке

yii2-fotorama-widget не роботает в модалке

Проект на Yii2 basic віджет yii2-fotorama-widget норм роботает в админке а вот на главной в модалке проблема почемуто не роботает

154
Подключение phpmailer, почтовые адреса

Подключение phpmailer, почтовые адреса

ЗдравствуйтеК какому файлу обратиться через require, чтобы сработал автозагрузчик PHPmailer, не нашел в распакованной папке версии 6

195