Sie befinden sich hier:
Verbinden eines externen Formulars mit einem Formular-Handler
Nachdem Sie einen Formular-Handler erstellt und veröffentlicht haben, konfigurieren Sie Ihr externes Formular so, dass Daten an Salesforce gesendet werden.
Erforderliche Editionen
Unterstützte Editionen anzeigen.
| Erforderliche Benutzerberechtigungen | |
|---|---|
| Erstellen eines Formular-Handlers: | Berechtigungssatz "Marketing Cloud-Manager" UND Beliebige Rolle als Beitragender der CMS-Arbeitsumgebung |
| Veröffentlichen eines Formular-Handlers: | Berechtigungssatz "Marketing Cloud-Manager" UND Rolle des Inhaltsadministrators oder Inhaltsmanagers als Beitragender der CMS-Arbeitsumgebung |
| Konfigurieren der CORS-Zulassungsliste: | Alle Daten modifizieren |
Bevor Sie diese Schritte ausführen, erstellen und veröffentlichen Sie einen Formular-Handler.
Es gibt zwei Möglichkeiten, Daten aus Ihrem Formular an Salesforce zu senden. Wählen Sie den Verbindungstyp aus, der der Struktur und den Funktionen Ihrer Site am besten entspricht.
| JavaScript-Auszug (clientseitig) | Direkter POST-URL (serverseitig) |
|
|---|---|---|
| Funktionsweise | Ein Skript auf Ihrer Seite sendet Formulardaten an Salesforce, wenn ein Besucher das Formular sendet. | Ihr Formular postet Daten direkt an einen Salesforce-URL ohne Skript auf der Seite. |
| Zu Ihrer Site hinzufügen | Ein <script>-Tag und Formularattribute, die Sie in HTML für Ihre Seite einfügen. |
Ein URL, den Sie als Aktion für Ihr Formular oder Webhook-Ziel festlegen. |
| Am besten geeignet für | Seiten, auf denen Sie HTML steuern und Skripts hinzufügen können. | Formulargeneratoren von Drittanbietern, die keine benutzerdefinierten Skripts zulassen, Seiten mit strengen Inhaltssicherheitsrichtlinien-Regeln und Formulare, die über einen Backend-Server posten. |
| Unterstützt die Webverfolgung | Ja | Nein |
| Unterstützt die Identitätsbestimmung | Ja | Nein |
| Erfordert einen CORS-Zulassungslisteneintrag | Ja | Ja |
Beide Methoden senden Daten an denselben Formular-Handler und lösen denselben Flow aus. Bei beiden Methoden müssen Sie Ihre Domäne auch in der CORS-Zulassungsliste autorisieren.
Stellen Sie bei beiden Verbindungstypen sicher, dass jedes Feld in Ihrem Formular ein HTML-name-Attribut verwendet, das genau mit dem entsprechenden externen Feldnamen im Formular-Handler übereinstimmt. Wenn die Namen nicht übereinstimmen, erfasst der Formular-Handler den Wert nicht. Wenn Sie beispielsweise den Namen des externen Felds email_address dem Feld Email zugeordnet haben, muss das Attribut name für das entsprechende Feld im Formular ebenfalls email_address lauten.
Option 1: Konfigurieren Ihres Formulars für die Verwendung einer clientseitigen Verbindung
Verwenden Sie diese Methode, wenn Sie den HTML-Code für Ihre Seite steuern und ihm ein Skript hinzufügen können. Da das Skript im Browser des Besuchers ausgeführt wird, unterstützt diese Methode die Webverfolgung und die Identitätsbestimmung. Folglich kann diese Methode eine Formularsendung mit der Webaktivität eines Besuchers verbinden.
- Veröffentlichen Sie den Formular-Handler.
-
Kopieren Sie auf der Registerkarte "Codeauszug" unter "Clientseitiger Formular-Handler" das Verfolgungsskript. Das Skript ähnelt diesem Beispiel.
<script async src="https://YOUR_DOMAIN/lp/assets/scripts/external-form-handler-host.min.js" onload="SFDCFormHandler.init('https://YOUR_DOMAIN/lp')"></script> -
Fügen Sie das Skript vor dem schließenden
</body>-Tag in den HTML-Code für die Site ein. -
Kopieren Sie auf der Registerkarte "Codeauszug" die Formularattribute. Die Attribute ähneln diesem Beispiel.
<form id="CONTENT_KEY" data-uma-forms="true"></form> -
Fügen Sie in Ihrem HTML-Code dem
<form>-Tag die Attributeidunddata-uma-formshinzu. -
Stellen Sie sicher, dass das HTML-
namefür jedes Formularfeld mit dem zugeordneten Namen des externen Felds übereinstimmt. - Fügen Sie die Domäne, die Ihr Formular hostet, der CORS-Zulassungsliste hinzu. Durch diesen Schritt wird Ihre Domäne autorisiert, Einreichungen an Salesforce zu senden.
- Aktivieren Sie zum Überwachen des Benutzerengagements die Webverfolgung.
Wenn ein Besucher das Formular sendet, sendet das Skript die Daten an Salesforce und der Formular-Handler verarbeitet die Einreichung und löst Ihren Flow aus. Der Formular-Handler leitet sie dann zum von Ihnen konfigurierten Erfolgs- oder Fehler-URL um.
Option 2: Konfigurieren Ihres Formulars für die Verwendung einer serverseitigen Verbindung
Verwenden Sie eine serverseitige Verbindung, wenn Sie Ihrer Seite keinen Code hinzufügen oder benutzerdefinierte Konfigurationen an Ihrem Code vornehmen können. Bei dieser Methode gibt Ihnen der Formular-Handler einen Ziel-URL an und Sie konfigurieren das Formular so, dass seine Daten an diesen URL gesendet werden. Da Sie kein Skript einbetten, funktioniert diese Methode mit Formulartools, die kein benutzerdefiniertes JavaScript zulassen. Diese Methode ist auch bei Seiten mit strengen Inhaltssicherheitsrichtlinien-Regeln und bei Formularen hilfreich, die von einem Backend-Server gesendet werden.
-
Kopieren Sie auf der Registerkarte "Codeauszug" für den Formular-Handler unter "Serverseitiger Formular-Handler" den URL der Formularaktion. Der URL ähnelt diesem Beispiel.
https://YOUR_DOMAIN/lp/cms/form/submit/v1/CONTENT_KEY -
Konfigurieren Sie das Formular, um die Daten an Salesforce zu senden. Die Implementierungsschritte hängen davon ab, wie Sie Ihr Formular implementieren.
Wenn Sie einen Formulargenerator oder ein Drittanbieter-Plugin verwenden Suchen Sie in den Einstellungen für das Drittanbietertool nach dem Feld zum Konfigurieren der Aktion, des Post-to-URLs oder des Webhook-Ziels des Formulars. Geben Sie den Salesforce-URL in dieses Feld ein. Wenn Sie HTML ändern, aber kein Skript hinzufügen können Legen Sie das Attribut actionIhres<form>-Tags auf den Salesforce-URL und das AttributmethodaufPOSTfest.Wenn Ihr Formular einen Backend-Prozess verwendet Senden Sie eine POST-Anforderung an den Salesforce-URL mit den Formulardaten mit application/x-www-form-urlencoded. -
Stellen Sie sicher, dass der Name jedes Felds genau mit dem zugeordneten externen Feldnamen übereinstimmt.
Der Formular-Handler erfasst Felder nur, wenn sie genau übereinstimmen.
- Fügen Sie die Domäne, die Ihr Formular hostet, der CORS-Zulassungsliste hinzu. Durch diesen Schritt wird Ihre Domäne autorisiert, Einreichungen an Salesforce zu senden.
Konfigurieren der CORS-Zulassungsliste
Für beide Verbindungsmethoden müssen Sie Ihre Domäne autorisieren, bevor Salesforce Formularsendungen akzeptiert. Wenn Sie Ihre Domäne nicht autorisieren, blockiert Salesforce die Einreichung, bevor sie verarbeitet wird. Fügen Sie Ihre Domäne zur Autorisierung der CORS-Zulassungsliste hinzu.
-
Identifizieren Sie die Domäne, die das Formular hostet, beispielsweise
https://www.example.com. Verwenden Sie zum Autorisieren aller Unterdomänen einen Platzhalter, beispielsweisehttps://*.example.com. - Fügen Sie die Domäne der CORS-Zulassungsliste hinzu.
Testen des Formulars
Nachdem Sie Ihr Formular mit dem Formular-Handler verbunden haben, testen Sie es, um sicherzustellen, dass es sich wie erwartet verhält.
- Senden Sie im Formular einen Testeintrag und bestätigen Sie, dass Sie an den Erfolgs-URL gesendet werden.
-
Überprüfen Sie in Salesforce, ob ein dem Testeintrag entsprechender Datensatz erstellt oder aktualisiert wurde.
Tipp Wenn nach dem Senden eines Testeintrags kein Datensatz erstellt oder aktualisiert wird, überprüfen Sie, ob das Namensattribut jedes Formularfelds mit einem externen Feldnamen übereinstimmt. Wenn der Formular-Handler mit einem Flow verbunden ist, überprüfen Sie, ob der Flow fehlerfrei abgeschlossen wird.
