Wordpress Contact Form 7 настроить вывод HTML шорткодов

Я хотел бы настроить вывод HTML самого короткого кода Wordpress Contact Form 7 (WPCF7), то есть [file] короткий номер. Я не хочу изменять окружающий HTML.

До сих пор я изменил вывод HTML, изменив содержимое файла /contact-from-7/modules/file.php,

Мои изменения будут потеряны, когда я обновлю плагин. Поэтому я хотел бы реализовать более постоянное и надежное решение, например, добавить фильтр в мой functions.php,

Что я хотел бы сделать (псевдокод - непроверенный код):

add_filter('wpcf7_file_shortcode_handler', 'my_file_sc_handler');
function my_file_sc_handler($html) {
    $html = sprintf('<div>my own html</div>');
    return $html;
}

Мне только не надо менять $html вернулся - не нужно трогать оставшийся код wpcf7_file_shortcode_handler функция.

Мой вопрос: Как я могу настроить вывод Wordpress Contact Form 7 HTML [file] шорткод, чтобы мои изменения не потерялись при обновлении плагина?

3 ответа

Решение

На основании комментариев и тому подобного, хотя у меня нет твердого ответа, я думаю, что вы можете найти ответ, который вы ищете, по этой ссылке:

http://www.featheredowl.com/contact-form-7-submit-button-element/

Этот урок объясняет, как манипулировать [submit] шорткод от использования <input type="submit"> к <button> элемент.

Используя эту основу, вы сможете настроить свой [file] вывод, как вы хотите.

Хотя для этого требуется редактирование основных файлов, кажется, что он также приступил к передаче обновлений плагина через функции.

Надеюсь, это поможет несколько!

Вы не можете вставить шорткод контактной формы непосредственно в файл шаблона. Вам нужно будет передать код в функцию do_shortcode() и отобразить его вывод следующим образом

    <?php echo do_shortcode( '[contact-form-7 id="7" title="Contact"]' ); ?>

Во-первых, это очень плохая идея - поменять основные файлы любого плагина.

Если вы просто хотите изменить вывод HTML, почему бы вам не изменить его в предоставленном редакторе, см. Пример ниже:

<div class="row">
<div class="col-md-6">
<p>Name<br />
    [text your-name] </p>
</div>
<div class="col-md-6">
<p>Email*<br />
    [email* your-email] </p>
</div>
</div>
<div class="row">
<div class="col-md-12">
<p>Enquiry<br />
    [textarea your-message] </p>
<p>[submit "Send"]</p>
</div>
</div>

Вы можете многое изменить!

Другие вопросы по тегам