So, nach längerem Suchen habe ich es gefunden.
Das ding ist, vor Version 4.2.0 wurden die Anreden warscheinlich direkt in der Datenbank gespeichert(je nach Sprache), dies ist jetzt nicht mehr so, sondern es wird bei einem Mann “Mr” eingetragen und bei einer Frau “Mrs”.
In den E-Mail Templates(email_order_custom_html.tpl & email_order_owner_html.tpl) wird das neue System aber nicht richtig umgesetzt.
Wir wissen, dass die Konstante in der Sprachdatei(lang.php) “SALUTATION_MR” oder “SALUTATION_MRS” heisst.
Das Beispiel kommt aus der order.tpl:
[{assign var=_sal value=$oxcmp_user->oxuser__oxsal->value}]
[{oxmultilang ident="SALUTATION_$_sal" noerror="yes" alternative=$_sal }] [{ $oxcmp_user->oxuser__oxfname->value }] [{ $oxcmp_user->oxuser__oxlname->value }]
In der ersten Zeile wird in Smarty eine Variable mit den Namen “_sal” erstellt und der Wert(value) aus der Datenbank, der bei Anrede(In unserem Fall “MR”) gespeichert ist zugewiesen.
In der zweiten Zeile ist nur das erste stückchen bis zum ersten " " für uns interessant. Hier wird jetzt einfach die aus unserer Sprachdatei(lang.php) stammende Konstante erzeugt(je nach Geschlecht). In unserem Fall ist in der Variable $sal, welche in der ersten Zeile erzeugt wurde “MR” enhalten und wie man sieht wird die Konstante aus der Sprachdatei so erzeugt "SALUTATION$_sal". Das bedeutet nach Auflösung der Variable $_sal “SALUTATION_MR” ensteht und dies entspricht in der Sprachdatei bei uns “Herr”.
Diese Anderungen wurden aber in den E-Mail Templates(email_order_custom_html.tpl & email_order_owner_html.tpl) vergessen.Ich ändere diese sachen jetzt in etwa wie oben ab, da bei der Rechnungs - und Lieferanschrift eine andere Klasse als “oxuser” verwendet wird können wir “$oxcmp_user” nicht verwenden, weil ich denke das cmp für Compare steht was auf Deutsch vergleichen heisst und dieser vergleich kann nur mit einer Klasse “oxuser” ausgeführt werden.
Hier die änderungen:
email_order_custom_html.tpl (Die E-Mail die der Kunde bekommt, nach einer Bestellung)
Nach
[{ $order->oxorder__oxbillcompany->value }]<br>
machen wir eine neue Zeile und fügen das ein
[{assign var=_billsal value=$order->oxorder__oxbillsal->value}]
In der Zeile darunter steht
[{ $order->oxorder__oxbillsal->value }]
dieses ersetzt du hiermit
[{oxmultilang ident="SALUTATION_$_billsal" noerror="yes" alternative=$_billsal }]
Es gibt ein stück weiter unten noch die Lieferaddresse, die so aussieht
[{ $order->oxorder__oxdelcompany->value }]
dort musst du das selbe tun, nur mit diesen code
[{assign var=_delsal value=$order->oxorder__oxdelsal->value}]
und
[{oxmultilang ident="SALUTATION_$_delsal" noerror="yes" alternative=$_delsal }]
So, dies musst du nun auch noch in der “email_order_owner_html.tpl” tun, mit selben Prinzip.
Damit hasst du die Bestellmails fertig, du solltest im Adminbereich unter Kundeninformation->CMS-Seiten wo “[{ $user->oxuser__oxsal->value }]” steht dies auch tun, aber mit dem Code.
[{assign var=_sal value=$oxcmp_user->oxuser__oxsal->value}]
und
[{oxmultilang ident="SALUTATION_$_sal" noerror="yes" alternative=$_sal }]
Ich hoffe ich konnte helfen.