Ich möchte alle Links in der HTML-E-Mail durch Tracker ersetzen. Soweit ich weiß, gibt es dieses EVENT_BEFORE_SEND
-Ereignis. Also habe ich ein Verhalten erstellt, das wie folgt verwendet werden kann:
Hier ist der Inhalt der Klasse MyTracker
.
Das Problem ist jetzt \yii\mail\BaseMailer
stellt keine Methode zur Verfügung, um die HTML-Ausgabe vor dem Senden gerendert zu bekommen.
Wie geht das?
AKTUALISIEREN
Der einzige Weg, wie ich das erreichen kann, ist durch diesen hacky Weg.
%Vor% Ein Ansatz, den ich gefunden habe, ist render()
anstelle von compose()
zu verwenden.
Daher müssen wir die Nachrichtenzeichenfolge vor dem Senden rendern und dann erneut erstellen.
Yii Dokument: yii \ mail \ BaseMailer :: render ()
Tags und Links php yii2 swiftmailer