4.5.1 Azure - Originalpreis wird nicht angezeigt

Hallo,

ich hab das Forum durchgesucht und nur was für das Basic-Theme gefunden. Dort steht dass wenn man einen durchgestrichenen Originalpreis zusätzlich zu den reduzierten Preis angezeigt haben will, man nur das UVP-Feld mit dem Originalpreis ausfüllen muss. Leider wird aber dabei der Originalpreis NICHT angezeigt.

Ich würde mich freuen wenn jemand dafür eine Lösung hätte und bedanke mich schon mal.

Albert

Also im Demoshop geht das - vergleiche doch mal die Einträge dort und bei Dir.
Admin-Zugang hier:
http://demoshop.oxid-esales.com/professional-edition/admin/

Ich hab noch mal rekonstruiert was ich zuletzt gemacht habe. Dabei hatte ich ZU GROSSE Thumpnails-Bilder hochgeladen. Nachdem ich diese gelöscht hatte und den Shop diese selber erstellen lies, wurde auch der durchgestrichene Originalpreis angezeigt. Ich weiß zwar nicht warum dies nun geht, aber Hauptsache es geht jetzt wieder.

Albert

Es muss doch an etwas anderem gelegen haben. Ein Artikel geht und ein neu erfasster geht nicht. Ich hab bei UVP natürlich einen höheren als den Originalpreis eingegeben. Was mir aber beim Probieren aufgefallen ist, wenn ich den UVP-Preis mit Dezimalstellen eingebe dann kommt die Fehlermeldung “Warnung: UVP muss größer als normaler Preis sein!”, ohne Dezimalstellen kommt die Fehlermeldung nicht. Kann das evtl. mit meinem Problem zusammenhängen?

Wenn ich das mit dem UVP nicht hinkrieg dürfte das wohl das KO-Kriterium für mich sein. Deshalb wäre ich super froh wenn mir jemand helfen könnte.

Albert

Es gibt dort einen bekannten Fehler, das ganze funktioniert nur wenn sowohl Preis als auch UvP die gleiche Stellenanzhal haben, alos z.b: 99 und 89 EURO, wenns aber 120 und 89 sind, entfällt leider die richtige Anzeige baW, bzw. bis es eine Fehlerbehebung gibt (hoffentlich bald, warte auch darauf)

mfG

Michael

Ja, genau das ist bei mir der Fall, wo der Originalpreis 799 Euro und der UVP 1099 Euro ist. Leider bin ich kein Programmierexperte dass ich die Sache ändern könnte. Weiß vielleicht jemand wie man das macht? Für Hilfe schon mal jetzt vielen Dank.

Albert

Hallo,

es handelt sich um diesen hier:
https://bugs.oxid-esales.com/view.php?id=3154

Gefixt ist er, da aber die Frontend-Templates betroffen sind, wird erst mit der 4.6.0 ausgeliefert. Wer in der Zwischenzeit den Bug in seiner Installation selbst fixen möchte - dort steht schon die Lösung.

Mit einem Dankeschön an @csimon :wink:

Gruß

Hallo Marco,

leider funktioniert der Fix unter dem angegebenen Link bei mir nicht. Es wird KEIN durchgestrichener Originalpreis angezeigt. So wie ich das verstehe soll ich

[{if $product->getFTPrice() > $product->getFPrice()}]

durch

[{assign var=$tprice value=$product->getTPrice() }]
[{assign var=$regularprice value=$product->getPrice()}]
[{if $tprice->getBruttoPrice() > $regularprice->getBruttoPrice() }]

ersetzen. Stimmt das so?

Albert

/tmp geleert?
Service -> Tools -> Views neu erstellen?

Hab ich alles zuvor gemacht, sogar den Browser-Cache geleert (man lernt ja dazu ;-)).

Albert

@modellzentrum

Hast du den Code eingepflegt und funktioniert es bei dir? Also wenn das die Lösung für 4.6.0 sein soll dann brauche ich gar nicht so lange zu warten da diese anscheinend nicht funktioniert. Da ich auf diese Funktion angewiesen bin kann ich wohl OXID vergessen.

Albert

Ich habs noch nicht gemacht, aber es gibt definitiv mehrere Stellen (siehe Bug-Report), wo Du das ändern musst. Ich habe noch die 4.4.8 und da gibts den Fehler auch schon.

mfG

Michael

Ray, stimmt das was Michael schreibt? In deinem Post erwähnst du NUR die eine Bugreportstelle für 4.5.1 Azure.

Albert

https://bugs.oxid-esales.com/view.php?id=3154#c5062

Steht unten in den Notitzen zum Bugeintrag - die Preise werden ja in verschiedenen Templates dargestellt, also muss man das an den jeweiligen Stellen korrigieren.

Danke Ray! Ich werds mir merken für die Zukunft: ALLES genau durchlesen und evtl. erst dann meckern.

Es gibt noch eine Datei wo der Bug zutrifft: listitem_line.tpl.

Aber: Als ich die Änderungen durchgeführt hatte kam folgende Fehlermeldung:

“Fatal error: Call to a member function getBruttoPrice() on a non-object in /home/www.domain.de/public_html/oxid/tmp/b6d0931fab4e0d598419be55212587e3^%%CB^CB6^CB6C1C15%%listitem_infogrid.tpl.php on line 135”

Zur Veranschaulichung hab ich die Datei angehängt. Ich hab die Endung “tpl.php” in “txt” geändert sodass ich sie hochladen konnte.

Ich hoffe hier kann mir jemand helfen.

Albert

Ich war vor 40 Jahren mal Programmierer (danach Berater) und hab nun mal mit meinen bisschen PHP-Kenntnissen versucht aus der listitem_infogrid.tpl schlau zu werden. Aber das war mir dann doch zu hoch!

Hat denn keiner mit diesen Bug-Änderungen in 4.5.1 Azure dieselben Probleme, sodass er mir helfen könnte? Schon mal vielen Dank für die Antwort.

Albert

Hallo Albert,

doch ich habe die gleichen Probleme. :wink:

Da ich genauso wie Du mit dem Bugfix in https://bugs.oxid-esales.com/view.php?id=3154 nicht zum Erfolg kam, eine andere Lösung sofern Du auf die Überprüfung ob UVP größer als VK ist, verzichten kannst:


[{*if $oDetailsProduct->getFTPrice() > $oDetailsProduct->getFPrice()*}]
    <p class="oldPrice">
        <strong>[{oxmultilang ident="DETAILS_REDUCEDFROM"}]   <del>[{$oDetailsProduct->getFTPrice()}]  [{$currency->sign}]</del></strong>
    </p>
[{*/if*}]

Diese Auskommentierung habe ich in den Templates:

  • tpl/page/details/inc/productmain.tpl
  • tpl/widget/product/listitem_line.tpl
  • tpl/widget/product/listitem_grid.tpl
  • tpl/widget/product/listitem_infogrid.tpl
  • tpl/page/compare/inc/compareitem.tpl

durchgeführt. Mit Version 4.6.0 können die dann (hoffentlich) wieder raus.

Beste Grüße
Sebastian

Kein Wunder, dass es nicht geht. Der Smarty Code im Bugfix ist falsch.
Richtig müsste es sein:

In listitem_infogrid.tpl, listitem_grid.tpl, listitem_line.tpl

suche:


[{if $product->getFTPrice() > $product->getFPrice()}]

Ersetze:


[{assign var="tprice" value=$product->getTPrice() }]
[{assign var="regularprice" value=$product->getPrice()}]
[{if $tprice->getBruttoPrice() > $regularprice->getBruttoPrice()}]

und in der Detailsicht productmain.tpl

suche:


  [{if $oDetailsProduct->getFTPrice() > $oDetailsProduct->getFPrice()}]

ersetze:


[{assign var="tprice" value=$oDetailsProduct->getTPrice() }]
[{assign var="regularprice" value=$oDetailsProduct->getPrice()}]
[{if $tprice->getBruttoPrice() > $regularprice->getBruttoPrice()}]

Manchmal fragt man sich doch, wer überhaupt ein aktuelles Oxid produktiv nutzt.
Hoffe, es hilft.

@netfeld

Dank dir!
Wir setzten die Version 4.5.7 CE ein und dort hat es auch funktioniert!

Gruß
Tobias von www.stoffversand4u.de

ist aber einfacher umzusetzen mit dem Fix:
https://bugs.oxid-esales.com/view.php?id=3619