Контактная форма 7 Изменить форму вывода тега - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь изменить вывод форм contactform7 с

<form action="/#wpcf7-f583-p294-o1" method="post" class="wpcf7-form">

на

<form action="/#wpcf7-f583-p294-o1" method="post" class="small-12 column wpcf7-form" novalidate data-abide>

Поэтому я добавил несколько хуков

add_filter('wpcf7_form_class_attr', function($html_class) { return 'small-12 column ' . $html_class; }); // adds respsonsive classes to the form-tag
add_filter('wpcf7_form_novalidate', function($support_html5) { return true; }); // adds novalidate-attr to the form-tag

Так что мне не хватает только атрибута данных. Есть ли какой-нибудь хук или какая-нибудь идея, как туда добраться, не разбирая файлы ядра?

Я нашел маги c в /contact-form-7/includes/contact-form.php начиная со строки 297

/* Generating Form HTML */
public function form_html( $args = '' ) { // ...

и затем со строки 409 на

$enctype = apply_filters( 'wpcf7_form_enctype', '' );
        ...

        $atts = array(
            'action' => esc_url( $url ),
            'method' => 'post',
            'class' => $class,
            'enctype' => wpcf7_enctype_value( $enctype ),
            'autocomplete' => $autocomplete,
            'novalidate' => $novalidate ? 'novalidate' : '',
        );

        ...
        $atts = wpcf7_format_atts( $atts );

        $html .= sprintf( '<form data-abide %s>', $atts ) . "\n";
        ...

        $html .= '</form>';
        $html .= '</div>';

SO: отправка моих значений в массив atts в функции form_ html будет моей решение. Но, честно говоря, я не знаю, как ...

Заранее спасибо!

1 Ответ

2 голосов
/ 29 февраля 2020

Используйте jQuery. Если я правильно прочитал ваш вопрос ... Вы пытаетесь добавить классы small-12 и column ... удалить novalidate и добавить data-abide?

jQuery('#wpcf7-f583-p294-o1 form').addClass('small-12 column').removeAttr('novalidate').attr('data-abide', true);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...