2015-09-12 17 views
12

Ich habe nächste Code innerhalb Kontaktformular 7 EditorContact Form 7 Auto hinzugefügt p-Tags

<div class="row"> 
    <div class="col-sm-8 col-sm-offset-2"> 
     <div class="row"> 
      <div class="col-sm-4"> 
       [text* name class:border-field placeholder "Name"] 
      </div><!-- End of col --> 
      <div class="col-sm-4"> 
       [email* email class:border-field placeholder "Email"] 
      </div><!-- End of col --> 
      <div class="col-sm-4"> 
       [text subject class:border-field placeholder "Subject"] 
      </div><!-- End of col --> 
     </div><!-- ENd of row --> 
    </div><!-- End of col --> 
</div><!-- ENd of row --> 

<div class="row"> 
    <div class="col-sm-8 col-sm-offset-2"> 
     [textarea message class:border-field placeholder "Message"] 
    </div> 
</div><!-- End of row --> 

<div class="row text-center"> 
    <div clas s="col-sm-12">  
     [submit class:btn class:btn-black-fill class:btn-small "Submit"] 
    </div><!-- End of col --> 
</div><!-- End of row --> 

Das Problem ist, dass es nach jedem Element fast zufällig p-Tags hinzufügt und auch, dass erste Textfeld aus irgendeinem Grund ist wenig über andere zwei Felder, wenn sie alle inline sein sollten. Und ich denke, das ist nicht CSS-Problem, weil zuvor ich dies in der Ebene HTML codiert war und alle Felder waren inline so denke ich, es hat etwas mit Kontaktformular sein muss 7.

Antwort

34

Nach dem Contact Form 7 Docs, können Sie, indem Sie die folgende Konstante in wp-config.php "wpautop" für das Plugin deaktivieren:

define('WPCF7_AUTOP', false); 
+0

Danke, das funktioniert perfekt. –

+12

Ich wäre großartig, in der Lage sein, in functions.php Datei des Themas einzurichten ... –

+1

Es wäre wichtig, ein kleines Detail anzugeben. Wenn man es zum root wp-config.php hinzufügt, tut das nichts, aber das Hinzufügen zum eigentlichen Contact Fomr 7-Plugin in /wp-content/plugins/contact-form-7/wp-contact-form-7.php funktioniert. Das einzige Problem ist, dass es beim nächsten Update weggehen könnte. Große Antwort sonst! +1 – LOTUSMS

2

diese Datei in functions.php hinzufügen

function reformat_auto_p_tags($content) { 
    $new_content = ''; 
    $pattern_full = '{(\[raw\].*?\[/raw\])}is'; 
    $pattern_contents = '{\[raw\](.*?)\[/raw\]}is'; 
    $pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE); 
    foreach ($pieces as $piece) { 
     if (preg_match($pattern_contents, $piece, $matches)) { 
      $new_content .= $matches[1]; 
     } else { 
      $new_content .= wptexturize(wpautop($piece)); 
     } 
    } 

    return $new_content; 
} 

remove_filter('the_content', 'wpautop'); 
remove_filter('the_content', 'wptexturize'); 

add_filter('the_content', 'reformat_auto_p_tags', 99); 
add_filter('widget_text', 'reformat_auto_p_tags', 99); 

dann auf Ihrem Post-Editor wickeln Sie Ihr Kontakt-Formular 7 Short mit raw Short

zB

[raw][contact-form-7 id="1" title="Contact Us"][/raw] 
0

Follow-up zu rnevius Antwort, setzen dies in /wp-content/plugins/contact-form-7/wp-contact-form-7.php

if (! defined('WPCF7_AUTOP')) { 
    define('WPCF7_AUTOP', false); 
} 

Normalerweise ist es schon da mit einem wahren Wert, in diesem Fall ersetzen Sie einfach false durch True und Sie sind gut zu gehen.

+0

Es ist besser, dies zu Ihrer Datei wp-config.php hinzuzufügen (vor der letzten Zeile - 'require_once (ABSPATH. 'Wp-settings.php');'). Wenn Sie es zu einem Plugin-Ordner hinzufügen, wird es überschrieben, wenn das Plugin aktualisiert wird. Wenn Sie es zu Ihrer Konfigurationsdatei hinzufügen, wird es nicht bei Aktualisierungen von Themes/Plugins überschrieben. Sie benötigen den if-Anweisungsteil Ihres Codes nicht, wenn Sie ihn zu Ihrer Konfigurationsdatei hinzufügen, da er vorher nicht deklariert wird. – Davey

+1

Du hast absolut recht, ich bin einfach kein großer Fan davon, eine theme/plugin-spezifische Option in eine Konfigurationsdatei einzufügen, aber zumindest ist es narrensicher! – Gawet

1

Wenn die Bearbeitung wp-config.php nicht die Lösung für Sie ist, gibt es einen praktischen Filter. Setzen Sie es in Ihre functions.php.

add_filter('wpcf7_autop_or_not', '__return_false');

+1

Diese Funktion wurde zu [Version 5.0] hinzugefügt (https://contactform7.com/2018/01/31/contact-form-7-50/). –

Verwandte Themen