B2T Posted January 17, 2010 Report Share Posted January 17, 2010 Hallo zusammen, gibt es irgendwo eine Information welche Variablen denn man in einer Bestätigungsemail ausgeben kann? Natürlich kann ich mich etwas an den Email-Template Beispielen orientieren - aber ich finde nicht das was ich brauche! Ich müsste z.b. nicht nur {$order_values.products_name} als Produktname ausgeben sondern auch die Kurzbeschreibung/Short Description... Wäre schön wenn mir da jemand nen Tipp geben kann. Danke.. Gruss Ralf Link to comment Share on other sites More sharing options...
oldbear Posted January 17, 2010 Report Share Posted January 17, 2010 hi, die kommt aber leider nicht mit ..... du müsstest eine php-Routine mit mysql-Zugriff einbauen und dir den Artikel selber holen Grüsse Link to comment Share on other sites More sharing options...
B2T Posted January 17, 2010 Author Report Share Posted January 17, 2010 Urps das ist übel - wenn man das net selbst kann ... mit PHP "selbst" zusammenschrauben bin ich wirklich schwach auf der Brust .. Kann man das irgendwo innerhalb der Shop-Dateien rauskopieren .. z.b. aus ner Liste ode so? Link to comment Share on other sites More sharing options...
bexpro Posted January 17, 2010 Report Share Posted January 17, 2010 Tipp class.order.php function: function _sendOrderMail() function _buildData($oID) Link to comment Share on other sites More sharing options...
oldbear Posted January 17, 2010 Report Share Posted January 17, 2010 hi, das ist ja geil, müsste ja ausreichen, hier die products_short_description oder andere Felder aus der xt_products oder der xt_customers einzubauen ... ist halt dann nicht updatefähig. Super Tip, die class hab ich mir noch nie angeschaut ! Suche selber gerade nach der Seriennummer. Danke ! Link to comment Share on other sites More sharing options...
bexpro Posted January 17, 2010 Report Share Posted January 17, 2010 Willst du Seriennummer einbinden ? hier im Forum war schon ein Tipp wie man es machen kann, wenn du willst kann ich dir paar Codes zusenden. Habe es bei mir so programmiert dass die Seriennumer auch formatiert mit 3 verschiedenen sprachen je nach Sprache des Bestellers in der Bestätigugsemail mit versendet werden. Link to comment Share on other sites More sharing options...
bexpro Posted January 17, 2010 Report Share Posted January 17, 2010 apropos Updates...nach dem Ganzen was ich jetzt durchgehe, damit alles so funktioniert wie es eigentlich schon am Anfang funktionieren sollte, spare ich mir wahrscheinlich jegliche Update-versuche. Ich rede jetzt nicht von meinen persönlichen Änderungen sondern von Fehlern die offensichtlich in dem Shop eingebaut sind. Inzwischen komme ich mit smarty gut zurecht und auch php hat sich deutlich verbessert, also es geht irgendwie Never touch a running system- sage ich dazu. Link to comment Share on other sites More sharing options...
oldbear Posted January 17, 2010 Report Share Posted January 17, 2010 hi, in der Mail habe ich die Seriennummer schon drin, nur bei Status Versandt; ich habe damit 2 Probleme: 1. Der Hook gibt die Seriennummer mit Überschrift,Artikelnummer usw. als kompletten HTML-String wohl über echo "<tr><td>.....</td></tr> und nicht über eine Variable aus. Wenn Du das gelöst hast , wäre ein Beispiel toll. 2. Ich würde die SNR gerne in print_order ausgeben, was ich für das Optionsmodul oder den Produkt-Konfigurator über ein paar kleine php´s prima lösen konnte. Der Hook zeigt in print_order aber keine Wirkung und Variable habe ich keine. Hast Du dafür einen Tip parat ? Ich muss den Post nochmal zum Anfang zurückverfolgen, er wurde ja in Richtung E-Mail optimiert. Grüsse Grüsse Link to comment Share on other sites More sharing options...
bexpro Posted January 17, 2010 Report Share Posted January 17, 2010 Wenn ich dich richtig verstanden habe wills du gezielte angaben das kannst du lösen in dem du erstmal nur das wichtigste lädst: in plugins xt_serials\classes\class.product_serials.php das würde z.B nur Artikelname und Seriennummer ausgeben: function getSerialsMailbexpro($orders_id) { global $db; $serials = array(); $rs = $db->Execute("SELECT op.*, ps.* FROM ".TABLE_ORDERS_PRODUCTS." op, ".TABLE_PRODUCTS_SERIAL." ps WHERE op.orders_id=ps.orders_id and op.orders_products_id=ps.orders_products_id and op.orders_id='".$orders_id."'"); if ($rs->RecordCount()>0) { while (!$rs->EOF) { $serials[]=$rs->fields; $rs->MoveNext(); } } if (count($serials)==0) return; $tpl_data = array('serials'=>$serials); echo $tpl_data['serials']['0']['products_name']; echo '<br />'; echo $tpl_data['serials']['0']['serial_number']; } [/PHP] du kannst natürlich auch mit print_r($tpl_data); sich alles in einer Email ausgeben lassen (für den Anfang) Gleichzeitig kann man auch das template manipulieren. Ich habe es so in 3 sprache aufgeteilt (die Anzeige der Seriennummer in Email) [PHP] function getSerialsMail($orders_id) { global $db; $serials = array(); $rs = $db->Execute("SELECT op.*, ps.* FROM ".TABLE_ORDERS_PRODUCTS." op, ".TABLE_PRODUCTS_SERIAL." ps WHERE op.orders_id=ps.orders_id and op.orders_products_id=ps.orders_products_id and op.orders_id='".$orders_id."'"); if ($rs->RecordCount()>0) { while (!$rs->EOF) { $serials[]=$rs->fields; $rs->MoveNext(); } } if (count($serials)==0) return; $tpl_data = array('serials'=>$serials); $tmp_data = ''; $record = $db->Execute("SELECT * FROM " . TABLE_ORDERS . " WHERE orders_id=" . $orders_id); $order_lang=$record->fields['language_code']; if ($order_lang=="en"){$tpl = 'history_info_en.html';} if ($order_lang=="de"){$tpl = 'history_info.html';} if ($order_lang=="pl"){$tpl = 'history_info_pl.html';} $template = new Template(); $template->getTemplatePath($tpl, 'xt_serials', '', 'plugin'); $tmp_data = $template->getTemplate('xt_serials_history_smarty', $tpl, $tpl_data); echo $tmp_data; }[/PHP] Gruß Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.