Hinzufügen benutzerdefinierter Trigger zu AutomateWoo

Hinweis: Der folgende Artikel hilft Ihnen dabei: Hinzufügen benutzerdefinierter Trigger zu AutomateWoo

Hinzufügen benutzerdefinierter Trigger zu AutomateWoo

E-Mail-Marketing ist der Schlüssel zum Betrieb einer effektiven E-Commerce-Website. Obwohl es viele gute E-Mail-Marketing-Plattformen gibt, haben viele keine sehr intensive Interaktion mit WooCommerce. Wenn Sie sich alle für WooCommerce verfügbaren Plugins und ihre Funktionen ansehen, werden Sie feststellen, dass es fast keine E-Mail-Marketing-Plattformen gibt, die mit vielen der verschiedenen Events interagieren, die Sie nutzen möchten.

Das ist wo AutomatisierenWoo füllt eine große Lücke. AutomateWoo wurde speziell für WooCommerce entwickelt; um Ihre Kundeninteraktionen vollständig innerhalb Ihrer WordPress-Administratoroberfläche zu automatisieren. Das bedeutet, dass es ziemlich tiefe Verbindungen zu WooCommerce hat, die Sie nutzen können. Dies bedeutet auch, dass es auf der Grundlage der bewährten Methoden von WordPress für die Plugin-Entwicklung erstellt wurde und nicht mit einem Server eines Drittanbieters interagieren muss.

Heute werfen wir einen Blick darauf, was AutomateWoo sofort für Sie tun kann. Dann werde ich Sie durch den Prozess der Erstellung eines benutzerdefinierten Triggers für die wenigen Male führen, in denen AutomateWoo einen Ihrer Anwendungsfälle nicht abdeckt.

Grundlagen des AutomateWoo-Triggers

AutomateWoo erkennt Aktionen, die Benutzer ausführen. Sobald eine Aktion vom Plugin erkannt wird, können Sie Ereignisse auslösen. Wenn das etwas verwirrend klingt, verwenden wir AutomateWoo, um einem Kunden eine Dankes-E-Mail zu senden, sobald er mehr als 200 US-Dollar in unserem Shop ausgegeben hat.

Um zu beginnen, gehen Sie zu AutomatisierenWoo -> Arbeitsabläufe und dann klicken Workflow hinzufügen oben auf der Seite.

Erstellen Sie als Nächstes einen beschreibenden Titel für Ihren Workflow. Ich habe meine betitelt.

Jetzt müssen wir den Auslöser auswählen, den wir verwenden möchten. Klicken Sie auf das Auswahlfeld und wählen Sie Gesamtausgabenreichweite des Kunden aus der Liste der verfügbaren Auslöser aus und legen Sie dann den Gesamtausgabenwert auf 200 $ fest.

Jetzt müssen wir eine Aktion auswählen, die durchgeführt werden soll, wenn ein Kunde mehr als 200 US-Dollar in unserem Geschäft ausgibt. Klicken Sie auf das Blau + Aktion hinzufügen Klicken Sie auf die Schaltfläche und wählen Sie E-Mail senden als die Maßnahmen, die wir ergreifen wollen.

Lesen:  Wann Sie Partner zu Ihrem WooCommerce-Shop hinzufügen sollten

Denken Sie beim Ausfüllen dessen, was Sie einem Kunden sagen möchten, daran, dass Sie jede der auf der rechten Seite des Bildschirms aufgeführten Variablen verwenden können. Um eine Variable zu verwenden, müssen Sie den Variablennamen in doppelte geschweifte Klammern setzen. Das heißt, wenn Sie den Vornamen des Kunden verwenden (sofern dieser einen in Ihrem System hat), verwenden Sie {{customer.first_name}} in Ihrem Text, wo diese Informationen angezeigt werden sollen.

Sobald Sie den gewünschten E-Mail-Inhalt haben, scrollen Sie zurück zum Seitenanfang und klicken Sie auf das blaue Symbol Speichern Klicken Sie auf die Schaltfläche, damit Ihr Workflow gespeichert und einsatzbereit ist. Wenn Sie an einem Workflow arbeiten, können Sie dessen Status in „Deaktiviert“ ändern und dann auf klicken Speichern. Wenn Sie einen Workflow als deaktiviert markieren, wird sichergestellt, dass er nicht ausgeführt wird, während Sie daran arbeiten.

Ich habe Workflows ausgeführt, die ich nicht ausführen wollte, und dachte auch, ich hätte einen aktiven Workflow, der deaktiviert war. Überprüfen Sie den Status Ihres Workflows immer noch einmal, wenn Sie mit der täglichen Arbeit damit fertig sind.

Eine Funktion von AutomateWoo, die wir noch nicht angesprochen haben, sind ihre Regeln. Mithilfe von Regeln können Sie filtern, für welchen Kundentyp eine Regel gilt. Sie könnten zwei unterschiedliche Regeln verwenden, um den oben genannten Stammkunden je nach Standort zu belohnen. Vielleicht können Sie Kunden in Ihrem Land eine Karte zusenden und Sie verwenden eine Regel, um sich selbst eine E-Mail mit ihrer Adresse zu senden, wenn sie den Schwellenwert erreichen. Für Benutzer außerhalb Ihres Landes können Sie anstelle der Karte auch die oben stehende E-Mail senden.

Erstellen Sie einen benutzerdefinierten AutomateWoo-Trigger für WooCommerce-Teams

Trotz der tiefen Einbindung von AutomateWoo in WooCommerce deckt es nicht jeden Fall für jedes Plugin ab. Für einen Kunden, mit dem ich kürzlich zusammengearbeitet habe, wollten wir jedem neuen Teammitglied eine E-Mail senden, wenn es einem Team hinzugefügt wurde Teams für WooCommerce-Mitgliedschaften. AutomateWoo stellt hierfür keinen Auslöser bereit, es ist jedoch möglich, ihn hinzuzufügen Ihre eigenen benutzerdefinierten Trigger für AutomateWoo.

Zum Starten benötigen wir ein Basis-Plugin, das Sie unten sehen können.

Es ist zwar möglich, eine einzige Plugin-Datei zu haben und alle gewünschten benutzerdefinierten Trigger einzuschließen, aber ich mache das nicht gerne, es sei denn, ich bin 100 % sicher, dass ich nur einen einzigen Trigger hinzufüge. Wenn Sie am Ende mehr als einen oder zwei Auslöser hinzufügen, erhalten Sie eine riesige Plugin-Datei mit über alle Funktionen verteilten Funktionen, und es wird schwierig zu verwalten, mit welchen Auslösern Sie sich gleichzeitig befassen. Stattdessen behalte ich jeden Trigger gerne in einer eigenen Datei und füge sie in das Haupt-Plugin ein. Dadurch können Sie leicht erkennen, an welchem ​​Auslöser Sie gerade arbeiten.

Lesen:  So verwenden Sie das SEO-Framework zur Verbesserung von WordPress-Sites

Allerdings müssen wir die Haupt-Trigger-Registrierung in das Plugin einbinden, also machen wir das und fügen die Datei ein, die unseren Trigger enthalten wird. Fügen Sie in unserer Init-Funktion den Triggerfilter hinzu.

add_filter( ‘automatewoo/triggers’, array( $this, ‘add_to_team_trigger’ ), 10, 1 );

Dies wiederum ruft eine Funktion namens add_to_team_trigger auf, die unseren neuen Trigger für AutomateWoo registriert. Fügen Sie direkt unter unserer Init-Funktion den folgenden Code hinzu, der Ihr Basis-Plugin aussehen lassen sollte so was.

öffentliche statische Funktion add_to_team_trigger( $triggers ){

require_once( ‘trigger-add-to-team.php’ );

$trigger[‘nexcess_add_to_team’] = ‘Hostinger_Add_To_Team_Trigger’;

return $triggers;

}

Beachten Sie, dass wir unmittelbar vor dem Hinzufügen zum $triggers-Array eine Datei namens „trigger-add-to-team.php“ benötigten. Jetzt müssen wir diese Datei erstellen, damit wir einen Auslöser in AutomateWoo haben. Erstellen Sie eine Datei mit dem Namen „trigger-add-to-team.php“ in Ihrem Plugin-Ordner und fügen Sie dann den folgenden Code ein.

Lassen Sie uns nun durchgehen, was der Code tut. In den Zeilen 3 – 5 geht es um Sicherheit. Sie verhindern, dass irgendjemand, der etwas Böses tut, direkt auf die Datei selbst zugreift. Als Nächstes definieren wir eine Klasse namens Hostinger_Add_To_Team_Trigger, die die Basisfunktionalität der Trigger-Klasse von AutomateWoo erweitert. Zeile 14 definiert die Daten, die an unseren Trigger übergeben werden.

In unserer Init-Funktion definieren wir zwei Dinge. Zuerst definieren wir den Namen unseres Hooks und zweitens sagen wir, in welche Gruppe er aufgenommen werden soll. Sie können die vorhandenen Gruppen in AutomateWoo verwenden oder eine benutzerdefinierte Gruppe definieren. In diesem Fall haben wir die Team-Gruppe verwendet, da der Auslöser mit WooCommerce Teams zusammenhängt. Jeder zukünftige Teamauslöser würde in dieselbe Gruppe fallen.

Wenn unser Trigger benutzerdefinierte UI-Elemente laden müsste, würden wir die Funktion „load_fields“ verwenden. Wir haben keine (und ich habe noch nie welche gebraucht), also lassen wir das einfach sein.

Lesen:  JavaScript richtig zu Ihrer WordPress-Site hinzufügen

Die Funktion „register_hooks“ erfasst, was in WooCommerce-Teams passiert, sodass wir etwas unternehmen können, wenn ein neues Teammitglied hinzugefügt wird. Wenn wir in WooCommerce Memberships for Teams zur Datei Team.php gehen und zum Ende unserer Funktion add_member gehen, sehen wir, dass, sobald ein Teammitglied erfolgreich hinzugefügt wurde, der Hook namens wc_memberships_for_teams_add_team_member aufgerufen wird.

Beachten Sie, dass wc_memberships_for_teams_add_team_member das Member-Objekt und keine user_id übergibt, was AutomateWoo in Zeile 47 erwartet. Das bedeutet, dass wir das Member-Objekt nehmen und in den Zeilen 43 und 44 die user_id daraus abrufen müssen, damit wir die user_id an übergeben können AutomatisierenWoo.

wc_memberships_for_teams_add_team_member

Durch das Hinzufügen dieses Aktions-Hooks führen wir unseren Trigger aus, sobald ein neues Mitglied zu einem Team hinzugefügt wurde.

Als nächstes wird unsere Funktion „catch_hooks“ von der Funktion „register_hooks“ aufgerufen, insbesondere hier, wenn die Aktion „wc_memberships_for_teams_add_team_member“ ausgeführt wird. Dadurch wird die user_id an den Rest von AutomateWoo übergeben, damit wir einem Benutzer eine E-Mail senden können.

Das Ergebnis all dieses Codes ist, dass wir beim Erstellen eines neuen Workflows in AutomateWoo sehen, dass wir einen neuen Auslöser haben, der es uns ermöglicht, einen Workflow auszuführen, wenn ein neuer Benutzer zu einem Team hinzugefügt wird. Stellen Sie sicher, dass Ihr benutzerdefiniertes Plugin aktiviert ist, und erstellen Sie dann mit unserem neuen Trigger einen neuen Workflow.

Jetzt funktioniert unser benutzerdefinierter Trigger AutomatisierenWoo. Sie können das fertige Plugin sehen Hier.

Um benutzerdefinierte Auslöser für andere Ereignisse auf Ihrer Website hinzuzufügen, müssen Sie nach anderen Aktions-Hooks suchen, damit Sie verschiedene Ereignisse erkennen können, sobald sie eintreten. Mit nahezu dem gleichen Code wie oben könnte ich einem Benutzer auch eine E-Mail senden, wenn er aus einem Team entfernt wird, indem ich den Hook „wc_memberships_for_teams_after_remove_team_member“ in derselben Teams.php-Datei verwende.