testman Posted February 24, 2009 Report Share Posted February 24, 2009 Hallo, ich würde gerne die Prozentangabe der Ersparnis bei reduzierten Artikeln separat, also nicht unter dem neuen Preis ausgeben. Wenn ich nun die ursprüngliche Funktion xtcFormatSpecial function xtcFormatSpecial($pID, $sPrice, $pPrice, $format, $vpeStatus = 0) { if ($format) { $price = '<span class="productOldPrice"><small>'.INSTEAD.'</small><del>'.$this->xtcFormat($pPrice, $format).'</del></span><br />'.ONLY.$this->checkAttributes($pID).$this->xtcFormat($sPrice, $format).'<br /><small>'.YOU_SAVE.round(($pPrice-$sPrice) / $pPrice * 100,1).' % /'.$this->xtcFormat($pPrice-$sPrice, $format).'</small>'; if ($vpeStatus == 0) { return $price; } else { return array ('formated' => $price, 'plain' => $sPrice); } } else { return round($sPrice, $this->currencies[$this->actualCurr]['decimal_places']); } }[/PHP] so bearbeite, dass ich den Teil abspalte, der die Ersparnis ausgibt: [PHP]'<small>'.YOU_SAVE.round(($pPrice-$sPrice) / $pPrice * 100,1).' % /'.$this->xtcFormat($pPrice-$sPrice, $format).'</small>'[/PHP] und eine neue Funktion xtcFormatErspanis schreibe: [PHP] function xtcFormatErsparnis($pID, $sPrice, $pPrice, $format, $vpeStatus = 0) { if ($format) { $ersparnis = '<small>'.YOU_SAVE.round(($pPrice-$sPrice) / $pPrice * 100,1).' % /'.$this->xtcFormat($pPrice-$sPrice, $format).'</small>'; if ($vpeStatus == 0) { return $ersparnis; } [/PHP] wie kann ich diese Funktion dann in mein Template einbinden? Ich würde die Anzeige gerne in der new_products_default.html einbauen. Dort wird das Preismodul ja mit {$module_data.PRODUCTS_PRICE} eingebunden. Wo habe ich entsprechende Definitionen und Eintragungen vorzunehmen, um das Ergebnis der Ersparnis-Funktion auszugeben? Danke im Voraus, Martin Link to comment Share on other sites More sharing options...
suppi_2 Posted February 24, 2009 Report Share Posted February 24, 2009 grundsätzlich, indem du eine neue Smarty Variable anlegst und der Template SEite zur Verfügung stellst... Link to comment Share on other sites More sharing options...
testman Posted February 24, 2009 Author Report Share Posted February 24, 2009 Ok, sowas habe ich mir schon gedacht. Da ich von Smarty keine Ahnung habe, habe ich erstmal (learning by doing): {$module_data.PRODUCTS_PRICE} dann $module_data dann PRODUCTS_PRICE per FindIt in allen XTC-Dateien gesucht - bin aber anscheinend nicht in der Lage, die Datei zu finden, in der Übergabe und Definition der Variablen stattfinden. Wenn ich entsprechende Einträge gefunden hätte, wäre ich wohl in der Lage gewesen, mir die Funktionsweise herzuleiten, aber ich finde nix im Code, was auf eine Zuweisung hindeutet. ...gibt es dazu irgendwo für Smarty-Noobs eine verständliche Anleitung? Link to comment Share on other sites More sharing options...
suppi_2 Posted February 24, 2009 Report Share Posted February 24, 2009 ...gibt es dazu irgendwo für Smarty-Noobs eine verständliche Anleitung? http://www.google.de/search?hl=de&q=smarty+anleitung&btnG=Google-Suche&meta= 1. Eintrag ;-) PRODUCTS_PRICE: kann ich mir nicht denken, das du nichts gefunden hast, du hättest ja zumindest die datei finden müssen, in der das selbst steht ;-) probier mal "suchen & ersetzen" von inforapid.de Link to comment Share on other sites More sharing options...
testman Posted February 24, 2009 Author Report Share Posted February 24, 2009 Ja, die Smarty-Doku ist wirklich SEHR hilfreich für den Umgang mit XTC...nicht. Klar habe ich die Datei gefunden, in der das auftaucht... Ich habe gar nicht geschrieben, nichts gefunden zu haben. Wenn du den Beitrag nochmal liest, siehst du, dass ich geschrieben habe, nichts gefunden zu haben, was auf eine Übergabe bzw. Definition hinweist. Das ist ein ziemlicher Unterschied zu gar nichts. Weißt du, in welcher Datei die Übergabe stattfindet? Das wäre nämlich mal ein wirklich hilfreicher Beitrag. Es ist nicht so, dass ich mich total dumm bzw. inaktiv stelle und hier erwarte, dass mir fertiger Code vorgesetzt wird. Mir reicht schon ein Dateiname anstelle von nutzlosen Hinweisen auf die Smarty-Doku, da die Smarty-Doku sicher nix zu xtcFormat bzw. $module_data.Product_Price etc. zu sagen hat. _____________________________________________________ Kann mir bitte bitte jemand sagen, wo in XTC die Verbindung zwischen der Funktion xtcFormatSpecial und der Ausgabe in der new_products_default.html hergestellt wird? Ich wäre sehr verbunden für eine präzise Auskunft, da ich mich jetzt schon blöd gegoogelt und das XTC-Verzeichnis mehrmals von vorne bis hinten durchsucht habe. Danke. Link to comment Share on other sites More sharing options...
suppi_2 Posted February 25, 2009 Report Share Posted February 25, 2009 hättest du dich mit meinem nutzlosen hinweis zur smarty doku beschäftigt anstatt dich zu beschweren hättest du festgestellt das von $module_data.PRODUCTS_PRICE das $module_data von der {foreach name=aussen item=module_data from=$module_content} Schleife kommt, daher das $module_data Daher wirst du erstmal nichts finden, wenn du nach $module_data.PRODUCTS_PRICE suchst, außer den Dateien, die ebenfalls mit der foreach Schleife itterieren! Wenn du meinen 2. unnötigen Hinweis mit dem Programm "suchen und ersetzen" gefolgt wärst und dann mal nach "new_products_default.html" gesucht hättest, dann hättest du alle PHP Dateien gefunden, welche diese Template Datei überhaupt einbinden, denn das ist ja die voraussetzung dann findest du z.b. die Datei includes/modules/new_products.php dort findest du auch ein $module_smarty->assign('module_content', $module_content); welches in der foreach schleife herangezogen wird {foreach name=aussen item=module_data from=$module_content} hoffe, du bist zufrieden mit dieser antwort ;-) (und immer auf die smileys achten!) Link to comment Share on other sites More sharing options...
testman Posted February 25, 2009 Author Report Share Posted February 25, 2009 Mit dieser tollen Antwort bin ich höchst zufrieden! Vielen Dank! Link to comment Share on other sites More sharing options...
luxury Posted September 19, 2010 Report Share Posted September 19, 2010 Hallo Ihr Zwei, vielen Dank für das Topic testman! Habe genau das selbe Ziel wie du und stecke auch am exakt gleichen Punkt fest. Nur leider hilft mir die Antwort von suppi_2 nicht so richtig weite. Ich habe in der xtcPrice.php ebenfalls die neue Funktion angelegt, zwar ein bisschen abgeändert aber im Grunde gleich. Nur leider bekomme ich trotz dieses Posts es nicht hin, die Funktion an die entsprechenden Templates zu übergeben. Ich hoffe Ihr könnt mir kurz auf die Sprünge helfen! Vielen lieben Dank im Voraus ! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.