Stape

Schreiben Sie Daten zum Firestore vom Server Google Tag Manager

Veröffentlicht
26. Apr. 2022
Auch erhältlich

Die Integration von Firestore und sGTM bietet zahlreiche Möglichkeiten für serverseitiges Tagging. Das Beste, was Sie mit dieser Kombination tun können, ist die Anreicherung serverseitiger Daten. 

Mit der neuen Firestore Lookup können Sie schnell Daten aus Firestire abrufen. Es ist eine systemeigene Variable und für jeden in sGTM verfügbar. Aber wie können Sie Daten in Firebase schreiben? Stape hat dieses Problem durch die Erstellung eines Firestore Writer-Tags gelöst. 

Dieser Blogbeitrag zeigt Ihnen, wie Sie Daten aus dem serverseitigen Google Tag Manager-Container in Firestore schreiben können. Außerdem zeige ich Ihnen, wie Sie das Firestore Writer-Tag und die Firestore Lookup-Variable zur Anreicherung serverseitiger Daten verwenden können. Fangen wir an!

Was ist FirestoreLink zu diesem Abschnitt kopieren

Firestore ist eine flexible und skalierbare NoSQL-Datenbank mit dokumentenorientierter Speicherung. Im Gegensatz zu SQL-Datenbanken gibt es in Firestore keine Tabellen oder Zeilen. Stattdessen werden die Daten in Dokumenten gespeichert, die zur einfachen Navigation und Verwaltung in Sammlungen organisiert sind.

firestore

Firestore ist die ideale Lösung für alle, die umfangreiche Sammlungen von kleinen Dokumenten haben. Es speichert Daten in Dokumenten, die in Sammlungen organisiert sind. Jedes Dokument enthält Name-Wert-Paare. 

Firestore und Server Google Tag ManagerLink zu diesem Abschnitt kopieren

Mit der neuen Version der serverseitigen GTM-API ist es nun möglich, eine Firestore- und sGTM-Integration zu erstellen. Wir haben diese API verwendet, um das Firestore Writer-Tag zu erstellen. Lassen Sie mich kurz beschreiben, welche Funktionen die Firestore sGTM API bietet. 

Firestore.read - liest Daten aus dem Firestore-Dokument und gibt ein Versprechen zurück, das in ein Objekt mit zwei Schlüsseln aufgelöst wird: id und data. 

Firestore.write - schreibt Daten in ein Dokument oder eine Firestore-Sammlung. Wenn Sie nur den Pfad zur Sammlung angeben, wird das Dokument automatisch mit einem zufälligen Namen erstellt. 

Firestore.query - gibt ein Array von Firestore-Dokumenten zurück, die den angegebenen Abfragebedingungen entsprechen.

Firestore.runTransaction - ermöglicht atomares Lesen und Schreiben aus Firestore.

Firestore Writer-TagLink zu diesem Abschnitt kopieren

firestore writer tag

Firebase Path - Geben Sie den Pfad zum Firestore-Dokument oder zur Sammlung an. Der Pfad darf nicht mit '/' beginnen oder enden. Wenn der Pfad zu einer Sammlung angegeben wird, wird ein Dokument mit einem zufällig generierten Bezeichner erstellt. Wenn der Pfad zu einem Dokument angegeben wird, das nicht existiert, wird es erstellt.

Es gibt mehrere Aktionsarten, die dieses Tag ermöglicht:

  • Add Event Data (Ereignisdaten hinzufügen) - Senden Sie alle im sGTM verfügbaren Ereignisdaten an das Firestore-Dokument. Wenn Ereignisdaten und benutzerdefinierte Daten das gleiche Feld haben, wird der Wert der benutzerdefinierten Daten für dieses Feld verwendet. Mit anderen Worten, Sie können die Werte der Ereignisdaten mit Custom Data überschreiben. 
  • Merge document keys (Dokumentschlüssel zusammenführen) - Wenn diese Option aktiviert ist, führt das Tag die Schlüssel im Fire Store-Dokument mit den Daten aus sGTM zusammen. Andernfalls wird das Tag das gesamte Dokument überschreiben.
  • Override Firebase Project ID (Firebase-Projekt-ID überschreiben) - Die projectId wird aus der Umgebungsvariablen GOOGLE_CLOUD_PROJECT abgerufen, sofern die access_firestore-Berechtigungseinstellung für die Projekt-ID auf * oder GOOGLE_CLOUD_PROJECT gesetzt ist. Wenn der Server-Container auf Google Cloud läuft, ist GOOGLE_CLOUD_PROJECT bereits der ID des Google Cloud-Projekts zugewiesen.
  • Add Timestamp (Zeitstempel hinzufügen) - wenn aktiviert, fügt der Tag dem Dokument einen Zeitstempel in Millisekunden hinzu.

Custom Data (Nutzerdaten) - verwenden Sie diese Option, um die Ereignisdaten zu überschreiben.

Was brauchen Sie, um die Firestore Writer-Variable einzurichtenLink zu diesem Abschnitt kopieren

Wenn Sie stape als Host für sGTM verwenden, benötigen Sie Folgendes, um das Firestore Writer-Tag zu konfigurieren:

1. Google Service-Konto mit dem Stape verbundenLink zu diesem Abschnitt kopieren

1. Erstellen Sie die Google Cloud Platform-Webkonsole oder melden Sie sich dort an.

2. Wählen Sie IAM & Admin -> Service-Konto -> Klicken Sie auf Service-Konto erstellen.

google cloud platform

3. Konto hinzufügen -> Klicken Sie auf Weiter -> Wählen Sie die Rolle BigQuery Data Editor für den Zugriff auf BigQuery oder die Rolle Cloud Datastore User für Firestore. 

Wenn Sie das Google Service-Konto nur für BigQuery verwenden möchten, wählen Sie nur die Rolle BigQuery Data Editor. Dasselbe gilt für Firestore. 

Wenn Sie zum 3. Schritt kommen, klicken Sie einfach auf Done. 

google cloud platform

4. Privaten Schlüssel erstellen -> JSON auswählen -> Erstellen auswählen -> JSON wird auf Ihren Computer heruntergeladen. 

google cloud platform

5. Öffnen Sie Ihr stape.io-Konto -> öffnen Sie den sGTM-Container -> öffnen Sie die Registerkarte "Power-ups" -> laden Sie die JSON-Datei hoch, die Sie von Google Cloud heruntergeladen haben -> klicken Sie auf Save. 

stape account

2, Firebase-KontoLink zu diesem Abschnitt kopieren

1. Öffnen Sie Firebase -> klicken Sie auf Projekt erstellen -> wählen Sie das gleiche Projekt aus, das Sie zum Erstellen des Google Service-Kontos verwendet haben -> klicken Sie auf Continue -> klicken Sie im dritten Schritt auf Add Firebase.     

2. Klicken Sie auf Build -> Firestore Database. 

firebase account

3. Klicken Sie auf Create Database -> Wählen Sie Start in production mode -> Klicken Sie auf Next.

firebase account

4. Wählen Sie den Standort von Cloud Firestore. Er sollte mit dem Standort Ihres sGTM-Servers übereinstimmen. Um den Standort des sGTM-Servers zu überprüfen, gehen Sie zu Ihrem stape.io-Konto -> öffnen Sie den sGTM-Container mit Firebase.   

firebase account

5. Klicken Sie auf Start a collection. Hier müssen Sie den Firebase-Pfad festlegen, der in letzter Zeit im Google Spreadsheet-Tag verwendet werden soll. Ich habe Firebase Path zu stape-demo/spreadsheet-auth hinzugefügt -> Klicken Sie auf Save.

firebase account

So richten Sie ein Firestore Writer-Tag einLink zu diesem Abschnitt kopieren

Die Möglichkeit, Daten in Firestore zu schreiben und von dort zu lesen, bietet zahlreiche Szenarien für die Datenanreicherung. Sie speichern Daten in Firesotre mit dem Firestore Writer-Tag und rufen die gewünschten Daten mit der Firestore Lookup-Variable ab, um sie an sGTM-Tags zu senden.

In diesem Beispiel möchte ich Benutzerdaten an die Facebook-Conversion-API senden, wenn diese Informationen in den sGTM-Ereignisdaten nicht verfügbar sind. Um dies zu erreichen, werde ich Benutzerdaten und die Google Analytics-Client-ID (_gid) in Firebase speichern, wenn ein Benutzer einen Kauf tätigt. Mithilfe der Firestore-Lookup-Variable und der _gid (als eindeutige Identifikation eines Nutzers) extrahiere ich die Nutzerdaten aus dem page_view-Ereignis und bereichere das Facebook CAPI pageview-Ereignis.

2. Daten an den Server-GTM-Container senden. Die beiden beliebtesten Methoden zum Senden von Daten an sGTM sind Google Analytics 4 und Data Tag/Data Client.

3. Laden Sie das Firestore Writer-Tag von GitHub herunter -> Öffnen Sie die Vorlagenabschnitte im Google Tag Manager-Container des Servers -> Klicken Sie auf New.

4. Klicken Sie auf die drei Punkte in der oberen rechten Ecke -> Klicken Sie auf Import -> Wählen Sie die Firestore Writer Tag-Vorlage aus, die Sie kürzlich von GitHub heruntergeladen haben -> Klicken Sie auf Save.

firestore tag

5. Erstellen Sie ein neues Firestore Writer-Tag -> Firebase-Pfad hinzufügen. Ich werde den Purchase-Pfad verwenden, diese Einrichtung wird eine neue Sammlung namens Purchase im Firestore erstellen und alle neuen Einkäufe werden als Firestore-Dokumente mit zufälligen Namen hinzugefügt. Ich wähle die Aktion Ereignisdaten hinzufügen, was bedeutet, dass das Tag alle Ereignisdaten in Firestore schreibt. Ich habe auch benutzerdefinierte Daten hinzugefügt, um user_email und user_id in das Firestore-Dokument aufzunehmen. 

firestore tag

6. Testen Sie Ihr Tag und überprüfen Sie, welche Daten in Firestore hinzugefügt wurden. In meinem Fall wird jedes Mal, wenn ein Nutzer einen Kauf auf der Website tätigt, ein neues Dokument mit sGTM-Ereignisdaten zu Firestore hinzugefügt. 

firestore tag

7. Erstellen Sie nun die Firestore Lookup-Variable in sGTM. Ich wählte Collection Path & Query -> Specify Collection Path -> Set your condition. In meinem Fall wird jedes Mal, wenn user_id (in Firestore) genau mit der gid-Variable (in sGTM) übereinstimmt, die Lookup-Variable den Wert von user_email im entsprechenden Firestore-Dokument abrufen.

firestore tag

8. Test der Firestore Lookup-Variable in der sGTM-Vorschau. 

firestore tag

9. Ich kann jetzt angereicherte sGTM-Daten mit der E-Mail des Nutzers senden, auch wenn die E-Mail des Nutzers nicht im sGTM verfügbar ist. 

Schlussfolgerung:Link zu diesem Abschnitt kopieren

Es gibt eine unbegrenzte Anzahl von Möglichkeiten zur Datenanreicherung mit Hilfe von Firestore. Wie Sie sehen können, ist es relativ einfach, sGTM-Daten aus einem Google Tag Manager-Container in Firestore zu schreiben. Diese Option kann schließlich für die Anreicherung von Serverdaten verwendet werden. 

Wenn Sie Hilfe bei der Einrichtung des serverseitigen Trackings benötigen, zögern Sie nicht, uns zu kontaktieren. Wir können Ihnen dabei helfen, Ihre Daten in Firestore einzupflegen und im Handumdrehen erste Erkenntnisse daraus zu ziehen. Vielen Dank fürs Lesen!

Benötigen Sie Hilfe beim Einrichten der serverseitigen Markierung?

Alles, was Sie brauchen, sind ein paar einfache Fragen. Klicken Sie auf Hilfe anfordern, füllen Sie das Formular aus und wir senden Ihnen ein Angebot zu.

Hilfe anfordern

Hosten Sie Ihren GTM-Server bei Stape