Hallo zusammen, wir wollen in unserem Shop gerne eine persönliche Anrede pflegen. Jetzt wollte ich die Mailvorlagen dahingehend anpassen: Original Text: Oder HTML: HTML: <h1>{if $NAME|trim == ''}<span style="font-size:13px;"><span style="font-family: verdana,geneva,sans-serif;">Sehr geehrte Damen und Herren,</span></span> {else} <span style="font-size:13px;"><span style="font-family: verdana,geneva,sans-serif;">Sehr {if $GENDER == 'm'}geehrter Herr {elseif $GENDER == 'f'}geehrte Frau {else}geehrte(r) {/if}{$NAME} ,</span></span> {/if}</h1> Orginal Vorschau: Anstatt hätte ich gerne dort stehen: Also das mit dem Hallo bekomme ich hin , wenn ich aber HTML: {/if}{$NAME} in HTML: {/if}{$FIRSTNAME} ändere bringt das gar nichts, die Vorschau liefert dann: Was mache ich denn hier falsch? Bitte um eure Hilfe. Vielen Dank schon einmal im Voraus! P.S.: Falls jemand jetzt sagt, probier es in einer Testbestellung aus da die Vorschau oft ungenau ist, das habe ich getan und das Ergebnis war dasselbe wie oben genannt.
Hi, ich weiß nicht ob überhaupt andere Variablen übergeben werden an die Mailvorlagen. Da gibts glaub noch immer keine Doku welche Varibalen es überhaupt gibt
Oh aber ich bin ja wohl nicht der Einzige, dem die Idee gekommen ist ;-) Meinst du es macht Sinn ein Ticket aufzumachen oder soll ich lieber warten und hoffen, dass jemand hier die Lösung hat?
Ticket is immer die Beste Option, je mehr da nachfragen um so eher werden weitere Variablen oder ne Liste veröffentlicht
Hi @sven_sippel , Du kannst an der Stelle auch session variablen verwenden. Das wäre hier: Code: {$smarty.session.customer_first_name} Di kannst das mit "if Abfragen" noch verfeinern, dass Du die eingeloggte Besucher anders ansprichst als Gäste. also z.B.: Bei Anrede Sie Code: {if $GENDER == 'm' AND $smarty.session.customer_id >'0'}Sehr geehrter Herr {$smarty.session.customer_last_name}, {elseif $GENDER == 'f' AND $smarty.session.customer_id >'0'}Sehr geehrte Frau {$smarty.session.customer_last_name},{else}Hallo, {/if} Bei Anrede Du Code: {if $GENDER == 'm' AND $smarty.session.customer_id >'0'}Hallo {$smarty.session.customer_first_name}, {elseif $GENDER == 'f' AND $smarty.session.customer_id >'0'}Liebe {$smarty.session.customer_first_name},{else}Hallo, {/if} ED
Hey Ed, das funktioniert klasse!!!! Vielen Dank! Da wir keine "Gast" Bestellungen zulassen habe ich nur die erste Version genommen aber das hat super funktioniert. Ein "Danke" ist dir sicher Aber eine Frage habe ich dazu noch trotzdem, wenn ich als Admin eingeloggt bin und eine Bestellung erfasse, wird dann Hallo Sven angegeben in der Bestätigung oder der Name des Kunden? Und auch bei Lieferscheinen und Rechnungen, wie sieht es da aus? Ich hoffe ihr könnt mir hier helfen.
Hi Sven @sven_sippel, ich würde trotzdem die untere Variante nehmen. Denn es gibt auch mails vor dem Login - z.B. passwort vergessen. Da hast Du dann auch die richtige Anrede, also "Hallo," das passt dann immer. Zudem kannst du sonst die Jungs ggf. cooler mit Hi ... oder Hallo ... und die Mädels mit schmeichelndem Liebe... anreden. Ed
Also ich habe das Ganze nochmal überall durchgespielt und leider ist es so wie befürchtet; sobald ich als Admin eine Bestellung anlege oder Bestätigungen oder ähnliches versende, kommt mein Vorname in die Anrede... Bestellung gehört zu Kunde: Petra Test Aktion: Änderung Bestellstatus durch mich und Versand der Kundenbenachrichtigung im Zuge dessen durch mich Schade, für die anderen Mailvorlagen, bei denen der Kunde selbst agiert, funktioniert es wunderbar. @Ed habe deinen Rat befolgt und die 3. Variante genommmen Hat jemand eine Idee wie der Befehl lauten muss, wenn ich nur den Vornamen des Kunden in der Anrede haben will und als Admin eingeloggt die Mails aktiv versende? P.S.: Ein Ticket habe ich angelegt, mal sehen ob etwas dabei rauskommt. Ich berichte dann, bin aber natürlich offen und dankbar für eure Lösungsvorschläge.
Hallo Sven @sven_sippel Das ist klar, das geht natürlich nur bei Emails die durch Kunden Aktivitäten generiert werden. Das sind session variablen, sobald Du Dich einloggst werden Deine Daten verwendet. Wenn Bestellungen auch im Backend angelegt werden also nicht ausschliesslich im normalen Bestell Prozess durch die Kunden, kann man das so nicht verwenden. Da muss dann noch eine if Abfrage rein bzw. geändert werden, dass bei eingeloggtem administrator eben nur z.B. ein einfaches Hallo, oder auch irgend eine andere Phrase verwendet wird. Das hätte aber den Rahmen des obigen Beispiels gespengt. Das muss man dann immer situationsbedingt einrichten. Einfach ist es aber, wenn Du die standardmässige Administrator Kundennummer 1 hast, dann musst Du nur im obigen Beispiel bei $smarty.session.customer_id > '0' ein > '1' verwenden. Ed
Hi Sven @sven_sippel ich war jetzt an einem Rechner und habe mal den Code so angepasst, dass immer dann, wenn ein Administrator (ganz gleich welcher Administrator) eine Bestellung erstellt, bearbeitet... eine passende Anrede in der Bestell Benachrichtigung erfolgt. Du kannst das "Hallo" natürlich nach Belieben ändern. Damit erreichst du eine personalisierte Anrede wenn Kunden bestellen und eine neutrale aber trotzdem passende Anrede wenn Du Bestellungen erfasst. Code: {if $GENDER == 'm' AND $smarty.session.customer_id >'0' AND $smarty.session.customers_status.customers_status_id != '0'}Hallo {$smarty.session.customer_first_name}, {elseif $GENDER == 'f' AND $smarty.session.customer_id >'0' AND $smarty.session.customers_status.customers_status_id != '0'}Liebe {$smarty.session.customer_first_name},{else}Hallo, {/if} ED
So wollte euch noch informieren, was beim Ticket raus kam: Erstmal positiv: Bearbeitungszeiten bisher bei allen Tickets sehr schnell! Also: Um nur den Vornamen anzuzeigen bei den Vorlagen benötigt man eine Umprogrammierung... von daher bleibt nur Eds sehr gute lösung. Bzw. natürlich kostenpflichtig per Dritte Anbieter oder Gambio selbst. Der Rest anpassen in den Textdateien (empfohlen laut Gambio, wobei ich hier widersprechen würde, da meines Wissens die Toolbox updatesicher ist und die Textdateien nicht, korrigiert mich falls ich mich irre) oder über Toolbox.
@Frau S. Bitte code aus Beitrag 11 nehmen, dann kann man auch als Admin Bestellbestätigungen generieren, und hat dabei auch eine optimale Anrede ED
Hallo Ed, ich schnall das irgendwie nicht. Wenn ich die erste Zeile in der Mailvorlage mit deinem überschreibe bekomme ich folgende Fehlermeldung: Code: Fataler Fehler: Uncaught -> Smarty Compiler: Syntaxfehler in Vorlage "Datei: /var/www/virtual/shop-marianne-reinke.de/htdocs/cache/gm_temp_email.html" in Zeile 18 "{if $ GENDER == 'm' UND $ smarty.session.customer_id & gt; '0' UND $ smarty.session.customers_status.customers_status_id! = '0'} Hallo {$ smarty.session.customer_first_name}, {elseif $ GENDER == 'f' AND $ smarty.session.customer_id & gt; '0' UND $ smarty.session.customers_status.customers_status_id! = '0'} Liebe {$ smarty.session.customer_first_name}, {else} Hallo, {/ if} </ pre> " - Unerwartetes ";", erwartetes eines von: "}" <- geworfen in /var/www/virtual/shop-marianne-reinke.de/htdocs/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php in Zeile 18 Was mach ich denn da falsch? Geht das denn überhaupt noch mit der neusten Shopversion?
Hallo, ich bin jetzt gerade am Umsteigen auf GAMBIO und möchte gerne so wie ich es in meinem alten shop hatte, dass dem Neukunden mit der Anmeldebestätigung nochmals seine gesamten eingegebenen Daten mitgeteilt werden. Ich hatte versucht in eine Tabelle die Felder aus der Datenbank einzubauen, aber das bringt mir nur eine Fehlermeldung ein: Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "file:/mnt/web321/c1/11/5406611/htdocs/Gambio_31120_B/cache/gm_temp_email.html" on line 46 "{customers.customers_$}" - Unexpected ".", expected one of: "}" <-- thrown in /mnt/web321/c1/11/5406611/htdocs/Gambio_31120_B/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on line 46FATAL ERROR(1): "Uncaught --> Smarty Compiler: Syntax error in template "file:/mnt/web321/c1/11/5406611/htdocs/Gambio_31120_B/cache/gm_temp_email.html" on line 46 "<td style="width: 337px;">{customers.customers_$}</td>" - Unexpected ".", expected one of: "}" <-- thrown" Weiterhin würde ich gerne einstellen dass diverse Mails an den Kunden auch an mich verschickt werden: -- Anmeldebestätigung -- Versandbestätigung Wo lässt sich das einstellen? Gruß Matthias
Du kannst in den E-Mail-Optionen eine Weiterleitungs-Adresse eingeben, dann erhälst Du auch die Mails, die an den Kunden raus gehen. Damit die Daten in der E-Mail auftauchen, muss man diese auch für die E-Mail abrufen. Da wird es vermutlich nicht reichen, eine Ausgabe in die E-Mail zu setzten. Ohne dass man aber genau weiß, was Du wohin geschrieben hast, kann keiner sagen, was Du anders machen musst.