ich habe mir die Preisalarm-Mail, die der Kunde erhält, wenn der Preis erreicht ist, angepasst. Momentan scheitere ich noch am eMail-Titel -> sprich am Betreff. Der wird permanent ignoriert, so sieht es im Template derzeit aus:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>[{ oxmultilang ident="EMAIL_PRICEALARM_CUSTOMER_PRICEALARMIN" }][{ $oPriceAlarm->getTitle() }] bei [{ $shop->oxshops__oxname->value }]</title>
<meta http-equiv="Content-Type" content="text/html; charset=[{$oEmailView->getCharset()}]">
</head>
Habe ich jetzt einen Denkfehler, wird das woanders eingestellt? In der Mail, die ich mir selber sende, steht immer nur der Shopname im Betreff…
Wäre schön, wenn da einer weiterhelfen könnte. Danke im voraus.
PS: Achso, tmp natürlich immer geleert, wenn gebastelt…
Ich glaube der Betreff wird in einer php mit $Subject erzeugt. Welche es in Deinem Fall ist kann ich nicht sagen, hier spielt wohl auch noch die Shopversion eine Rolle.
hmm, vlt. weiß ja einer der OXID-“Durchschauer” was genaueres… Huhu, Marco, Hebsacker, TomLong, Coarsy… hab natürlich die Hälfte vergessen zu erwähnen.
Wäre schön, wenn ich das gelöst bekäme. Da kommt der kleine Perfektionist durch bei mir
Änderungen in den Sprachvariablen bitte immer in der cust_lang.php im Verzeichnis application/views/azure/de .
Änderst Du oder fügst in der lang.php hinzu würde beim nächsten Update alles überschrieben. Füge also in der cust_lang.php die folgende Zeile hinzu:
keine Ahnung, das war ja mein Problem, dass ich nicht weiß, wo der Betreff erzeugt wird. Rein logisch wäre die oxemail.php sicher der richtige Ort. Aber da hatte ich eben nix gefunden, was den Betreff für die customer-Mail erzeugt.
Bei mir steht derzeit nur der Shopname als Betreff.
also ich weiss noch nicht mal, ob das wirklich ein Bug ist…
Bei einem unserer Module (Verfügbarkeitsbenachrichtigung) haben wir ja auch die Preisalarm-Funktion missbraucht/überschrieben.
Und da lies sich auch der Mail-Titel problemlos über die lang-Dateien ändern, ich hab aber im Mom leider keine Zeit, um mir das mal genau anzusehen…
Hier wird der Subject für die eMail definiert, hier der Shopname.
Man könnte nun in der cust_lang.php eine eigene Variable definieren und hier einfügen. Beispiel (ungetestet!! :rolleyes:):
das ist auf alle Fälle die richtige Stelle, aber das Beispiel klappt noch nicht so richtig. Das Template im Admin wird nicht mehr geladen. Habe ein wenig hin und her probiert, auch mal das subject von Betreff für die Customer-Mail probiert. Hat leider auch nicht geklappt…
Das Problem an meinem Beispiel ist das in dieser Funktion die Übersetzungsfunktionen nicht zur Verfügung stehen. Die angelegte Variable in der cust_lang.php kann nicht angesprochen werden. Der Aufruf der Übersetzungsfunktion verursacht den Fehler, weil dieses Objekt nicht zur Verfügung steht…
Man korrigiere mich falls ich falsch liege :o
Habs mal mit diesem versucht, ist halt etwas rudimentär aber es funktioniert:
$this->setSubject( "Dein Pricealarm Text" );
So auf die schnelle ist mir noch keine bessere Lösung eingefallen. Als Idee:
mit diesem Befehl kann die Sprach-ID abgefragt werden:
$oAlarm->oxpricealarm__oxlang->value
mit einer if Verzweigung könnte man anhand der ID’s einen Text in der entsprechenden Sprache einer Variable zuordnen. Diese dann in setSubject einfügen also inetwa so:
$this->setSubject( meineSubjectVariable );
Das ganze könnte man dann noch in ein Modul packen, dann wirds updatesicher…
ich versuch mal die rudimentäre Lösung - mit Modul hab ich nicht so Plan… Aber danke, danke.
Ich verstehe nur nicht, warum von Oxid her der Shopname als Betreff genommen wurde, macht ja überhaupt keinen Sinn. Und wenn so eine Preisalarm Mail bei mir als Kunde nach z.B. 3 Monaten ankäme, wüßte ich nicht mehr, dass ich da mal was gemacht habe und würde das glatt als Spam löschen… Von daher eben eher suboptimal.