Моя цель - контактная форма 7, номер телефона:
шаг 1: минимум 10 цифр
шаг 2: удалить пробелы
шаг 3: удалить код страны +91, 091, 0091 Только если общее число превышает 10
шаг 4: показать недействительный номер, если очищенный номер неправильный
шаг 5: в поле ввода номера телефона заменить окончательную очисткучисло с введенным пользователем номером
Я могу записать кодировку для шага 1 - шага 4, но для шага 5 я не уверен в wordpress, какую функцию или параметры заменить текстовым полем?
даже я наткнулся на $ result-> invalidate ($ tag, «Пожалуйста, введите правильный номер.»);но не удалось заменить текстовое поле
для шагов с 1 по 4, использованных ниже функции, и сделал $ result = false;если неправильный формат после очистки чисел
function custom_filter_wpcf7_is_tel( $result, $tel ) {
$accepted = array("7", "8", "9");
-- codes here $result = true; OR $result = false; --
return $result;
}
add_filter( 'wpcf7_is_tel', 'custom_filter_wpcf7_is_tel', 10, 2 );
Для шага 5 я пробовал это, но не смог выполнить шаг 5.
add_action( 'wp_footer', 'mycustom_wp_footer' );
function mycustom_wp_footer()
{
?>
<script type="text/javascript">
document.addEventListener( 'wpcf7submit', function( event ) {
var inputs = event.detail.inputs;
for ( var i = 0; i < inputs.length; i++ ) {
if ( 'your-tel' == inputs[i].name ) {
alert( inputs[i].value );
-- tried many experiments here --
break;
}
}
}, false );
</script>
}
Например:
+ 919192345678 отображение в текстовом поле 9192345678
+ 91 91923 45678 отображение в текстовом поле 9192345678
+ 9191923456780 показать ошибкусообщение bcaz очищенный номер состоит из 11 цифр
ПРИМЕР:
![enter image description here](https://i.stack.imgur.com/sTo8l.jpg)