Benutzerdefinierte Eingabenamen auf GravityForms

Lesezeit: 2 Minuten

Benutzer-Avatar
JacobTheDev

Wie kann ich Schwerkraftformularen benutzerdefinierte Eingabenamen hinzufügen? Ich muss ein Formular an einen Drittanbieter senden, der sehr spezifische Formularnamen erfordert.

Meine aktuelle Idee ist, ein bisschen jQuery zu schreiben, um alles dynamisch umzubenennen, wenn die Seite geladen wird. Das ist natürlich nicht ideal.

Schwerkraftformen: http://www.gravityforms.com/

  • GF hat eine Menge Action- und Filter-Hooks, hast du die überprüft?

    – Brasilo

    5. Dezember 2012 um 0:26 Uhr

Benutzer-Avatar
JacobTheDev

Nachdem Sie die Hersteller von Gravity Forms kontaktiert haben, scheint es, als würden sie keine benutzerdefinierten Eingabenamen unterstützen. Als Problemumgehung habe ich ein bisschen jQuery geschrieben, um Eingaben mit den richtigen Formularnamen umzubenennen. Zum Beispiel:

$("input#input_1_1").attr("name","first_name");

Benutzer-Avatar
ott

Fügen Sie einfach etwas Code in die functions.php ein und füllen Sie das Formular aus, das Ihnen dann eine Liste der ID-Namen per E-Mail zusendet. Es sind die gleichen Namen, die Sie mit Entwicklertools usw. verfeinern können. Das war nur schneller für mich. Ändern Sie dann den Code so, dass er über curl mit anderen Eingabenamen gepostet wird.

Dies verwendet PHP, sodass es auf dem Server zu handhaben ist. Auf diese Weise müssen Sie sich keine Sorgen um Leute machen, bei denen JS in ihrem Browser deaktiviert ist.

http://0to5.com/gravity-forms-submitting-forms-to-3rd-party-applications/

  • Dies funktioniert nicht mehr. Wirft einen Fehler in der neuesten Version von Gforms + WP aus.

    – Ken Prince

    14. April 2015 um 18:33 Uhr

  • Ich muss es noch einmal testen und sehen, ob es bei mir noch funktioniert, danke für das Update!

    – ott

    15. April 2015 um 23:07 Uhr

Benutzer-Avatar
Farhat Aziz

Fügen Sie ein neues Feld (HTML-Feld) hinzu. Fügen Sie in den Inhaltseinstellungen dieses Feldes dieses Javascript mit Skript-Tags hinzu

Nicht-jquery-Lösung:

document.getElementById("input_14_4").setAttribute("name", "email");

Eine andere Lösung, die ich hier gefunden habe

https://docs.gravityforms.com/gform_field_content/

add_filter( 'gform_field_content', function ( $field_content, $field , $value, $lead_id, $form_id) {
 if ( $form['id'] != 14 ) {
        //not the form whose tag you want to change, return the unchanged tag
        return $field_content;
    }
    if ( $field->id == 3 ) {
        return  preg_replace( "|name="(.*?)"|", "name="email"", $field_content );
    }
  
    return $field_content;
}, 10, 5 );

  • Nur-Code-Antworten sind nicht besonders hilfreich. Bitte fügen Sie einige Beschreibungen hinzu, wie dieser Code das Problem löst.

    – 4b0

    7. Juli 2021 um 12:35 Uhr

1345010cookie-checkBenutzerdefinierte Eingabenamen auf GravityForms

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy