Как поменять форму “Задать вопрос”

Чтобы модифицировать форму “Задать вопрос”, которая всплывает при нажатии соответствующей кнопки, нужно добавить такой код в файл functions.php вашей темы или плагина https://support.wpshop.ru/docs/general/profunctions/

add_action( 'wp_enqueue_scripts', function () {
    wp_add_inline_script( 'expert-review-scripts', <<<JS
jQuery(function($) {
    window.expert_review_question_popup = function(i18n, params) {
    var contactInput = params.use_phone ?
            '        <label>' + i18n.question_popup_phone + ': <input type="text" name="_p" class="required"></label>' :
            '        <label>' + i18n.question_popup_email + ': <input type="email" name="_a" class="required"></label>';

        var html =
            '<div class="expert-review-popup-holder js-expert-review-popup"><div class="expert-review-popup">' +
            '    <span class="expert-review-popup__close js-expert-review-close-mark">&times;</span>' +
            '    <div class="expert-review-popup__content">' +
            '        <form>' +
            '        <label>' + i18n.question_popup_name + ': <input type="text" name="name" class="required"></label>' +
            contactInput +
            '        <input type="hidden" name="email">' +
            '        <label>' + i18n.question_popup_question + ': <textarea name="text" class="required"></textarea></label>' +
            '        <button type="submit" class="expert-review-popup__submit">' + i18n.question_popup_submit + '</button>' +
            '        <span class="expert-review-popup__cancel js-expert-review-cancel">' + i18n.question_popup_cancel + '</span>' +
            $('<input type="hidden" name="settings">').val(JSON.stringify(params)).prop('outerHTML') +
            '        </form>' +
            '    </div>' +
            '</div></div>';
        $('body').append(html);
      
    }
});
JS
        , 'before'
    );
} );

 

Здесь можно вносить необходимые правки.

В версии 1.5.0 в генерацию формы добавилась строчка

$('<input type="hidden" name="settings">').val(JSON.stringify(params)).prop('outerHTML')

её нужно обязательно добавить в свой код.

Вам помог ответ?
Похожие вопросы