Sie sparen X % anzeigen lassen bei UVP

Ich habe bei mir in den Shop eine Anzeige eingebaut, wieviel Prozent man spart, wenn ein Artikel mit UVP ausgegeben wird. So sieht es aus:

[{if $product->getFTPrice() or $product->getFPrice()|replace:“,”:“.” < $product->oxarticles__oxprice->value }][{assign var=“uvp” value=$product->getFTPrice()|replace:“,”:“.”}][{assign var=“price” value=$product->getFPrice()|replace:“,”:“.”}][{if $product->oxarticles__oxtprice->value != 0}]Sie sparen [{math equation=“( z / x ) * ( x - y)” x=$uvp y=$price z=100 format=“%.0f”}]%[{/if}][{/if}]

Funktioniert auch alles soweit bestens, wenn der Preis z.B. 155,00 € Beträgt und vorher 169,00 € war, dann wird angezeigt dass man 8% spart. Leider habe ich festgestellt, wenn der Preis über 999,99 € geht, also ab 1000,00 €, dann wird nichts mehr angezeigt und es steht nur noch “Sie sparen %” da (ohne Wert). Hat jemand eine Idee woran es liegen könnte? Stimmt etwas mit meinem Code-Schnipsel nicht?

Mahlzeit, Plexus!

Das Problem ist, dass bei vierstelligen Zahlen ein “.” zwischen den Tausendern und dem Rest der Zahl eingefügt wird. Schau mal hier: http://www.oxid-esales.com/de/forum/showthread.php?t=1896 !Gruß

Ok, jetzt hab ich es:

So werden nun auch Preise über 999 € prozentual angezeigt:

[{ if $product->oxarticles__oxtprice->value > 0 }]Sie sparen[{assign var=“uvp” value=$product->oxarticles__oxtprice->value }][{assign var=“price” value=$product->oxarticles__oxprice->value }][{math equation=“(( z / x ) * ( x - y))” x=$uvp y=$price z=100 format=“%.0f”}]%[{/if}]

Hallo kann man Fragen wo du das genau eingebaut hast?

Würde das gerne auch bei mir einbauen.

Hallo Marco. Ich habe es in der “details.tpl” Verzeichnis "out/basic/tpl/"und in ein paar speziell von mir erstellten Templates eingebaut.dort kannst du es an der gewünschten Stelle einfügen, z.B. Unter dem Preis, hinter den folgenden Zeilen:

[{oxhasrights ident="SHOWARTICLEPRICE"}]        &lt;div class="price"&gt;            [{if $product-&gt;getFTPrice() }]                &lt;b class="old"&gt;[{ oxmultilang ident="DETAILS_PERSPARAM_REDUCEDFROM" }] &lt;del&gt;[{ $product-&gt;getFTPrice()}] [{ $currency-&gt;sign}]&lt;/del&gt;&lt;/b&gt;                &lt;span class="desc"&gt;[{ oxmultilang ident="DETAILS_PERSPARAM_REDUCEDTEXT" }]&lt;/span&gt;&lt;br&gt;                &lt;sub class="only"&gt;[{ oxmultilang ident="DETAILS_PERSPARAM_NOWONLY" }]&lt;/sub&gt;            [{/if}]            [{if $product-&gt;getFPrice() }]                &lt;big id="test_product_price"&gt;[{ $product-&gt;getFPrice() }] [{ $currency-&gt;sign}]&lt;/big&gt;            [{/if}]            [{assign var="oCont" value=$oView-&gt;getContentByIdent("oxdeliveryinfo") }]            &lt;sup class="dinfo"&gt;[{ oxmultilang ident="DETAILS_PERSPARAM_PLUSSHIPPING" }]&lt;a href="[{ $oCont-&gt;getLink() }]" rel="nofollow"&gt;[{ oxmultilang ident="DETAILS_PERSPARAM_PLUSSHIPPING2" }]&lt;/a&gt;&lt;/sup&gt;        &lt;/div&gt;    [{/oxhasrights}]

Du kannst es auch in die "out/basic/tpl/inc/product.tpl"einbauen, dann wird es auf der Startseite und in der Listenansicht auch angezeigt.


www.hardwareaktion.com

Hallo plexus

ich habe ein mehrsprachiges shop. ich möchte dass die Meldung “Sie sparen %…” in verschiedenen sprachen angezeigt wird, wie muss ich dann vorgehen?

[QUOTE=plexus;7513]Ich habe bei mir in den Shop eine Anzeige eingebaut, wieviel Prozent man spart, wenn ein Artikel mit UVP ausgegeben wird. So sieht es aus:

Funktioniert auch alles soweit bestens, wenn der Preis z.B. 155,00 € Beträgt und vorher 169,00 € war, dann wird angezeigt dass man 8% spart. Leider habe ich festgestellt, wenn der Preis über 999,99 € geht, also ab 1000,00 €, dann wird nichts mehr angezeigt und es steht nur noch “Sie sparen %” da (ohne Wert). Hat jemand eine Idee woran es liegen könnte? Stimmt etwas mit meinem Code-Schnipsel nicht?[/QUOTE]
Wenn Du statt $product->getFTPrice() [B]$product->oxarticles__oxtprice->value[/B] und statt $product->getFPrice() [B]$product->oxarticles__oxprice->value[/B] verwendest, arbeitest Du mit den unformatierten Preisen der Datenbank, und kannst Dir das Entfernen von . und , sparen.

[QUOTE=avenger;9742]Wenn Du statt $product->getFTPrice() [B]$product->oxarticles__oxtprice->value[/B] und statt $product->getFPrice() [B]$product->oxarticles__oxprice->value[/B] verwendest, arbeitest Du mit den unformatierten Preisen der Datenbank, und kannst Dir das Entfernen von . und , sparen.[/QUOTE]

Danke für den guten Tipp. Werde es nachher gleich mal ausprobieren. :slight_smile:

Hallo,

danke für den Tip! Hat alles auch soweit gut geklappt, jedoch bleibt eine Frage:

Unser Zahlenformat in Mexiko ist wie folgt: $ 4,500.00

Was müsste ich tun, damit mir statt der normalen Zahl “Sparen Sie: $ 2023” die Zahl in obigem Format (2,023.00) angezeigt wird?

Gruß

Jan

Hallo Jan,

das Währungsformat läßt sich über Smarty steuern. Google mal nach “smarty number_format”. Ich glaub, das hier müsste funktionieren:

[{$var|number_format:2:",":"."}]

Gruß

Hi Marco,

meine Zeile sieht nun so aus:

[{ if $product-&gt;oxarticles__oxtprice-&gt;value &gt; 0 }]Usted ahorra: [{assign var="uvp" value=$product-&gt;oxarticles__oxtprice-&gt;value }][{assign var="price" value=$product-&gt;oxarticles__oxprice-&gt;value }]&lt;b&gt;[{ $currency-&gt;sign}] [{math equation="(( x - y))" x=$uvp y=$price}] ([{math equation="(( z / x ) * ( x - y))" x=$uvp y=$price z=100 format="%.0f"}]%)&lt;/b&gt;[{/if}]

Wo genau muss man deinen Part nun einfügen? Du weißt ja, ich bin nicht der fiteste in HTML / PHP.

Gruß

Jan

Hallo Jan,

schau mal, hier steht wie es aussehen soll:
http://www.oxid-esales.com/forum/showthread.php?p=18446#post18446

Gruß

Hi Marco,

ich habe es eingebaut:

[{math equation="(( x - y))" x=$uvp y=$price number_format:2:",":"." }]

Dies führt allerdings dazu, dass die Webseite nicht mehr aufgerufen wird. Ich weiß leider nicht, woran es liegt.

Gruß

Jan

[QUOTE=plexus;7515]Ok, jetzt hab ich es:

So werden nun auch Preise über 999 € prozentual angezeigt:[/QUOTE]

[{ if $product->oxarticles__oxtprice->value > 0 }]Sie sparen[{assign var=“uvp” value=$product->oxarticles__oxtprice->value }][{assign var=“price” value=$product->oxarticles__oxprice->value }][{math equation=“(( z / x ) * ( x - y))” x=$uvp y=$price z=100 format=“%.0f”}]%[{/if}]

Hallo,

ich habe diese Zeile nun in der details.tpl eingefügt und alles funktioniert soweit.

Es gibt nur noch eine kleines Problem:
Wenn der Artikelpreis (nicht UVP-Preis) noch zusätzlich einen Rabatt erhält, wird der Rabatt in der Berechnung für „Sie sparen“ nicht einbezogen. Somit wird dann ein flascher % -Wert angegeben.

Kann mir jemand sagen, wie ich diese Zeile ändern muss, damit der rabattierte Preis mit einbezogen wird?

goodsell

Hallo Leute,
ich habe mal etwas anderes vor. Ich möchte ein zusätzliches Fenster einbinden, in dem die Gesamtersparnis für den Kunden berechnet wird. Ersichtlich sein sollen: Ersparnis aus reduzierte Artikel, Gutscheine und Aktionen sowie Versandkosten.
Hat jemand von Euch das ganze schon einmal umgesetzt? Einen Teil der Werte konnte ich schon abgreifen. Jedoch weis ich nicht wie ich an die differenz von Orginalpreis (UVP) und Angebotspreis kommen soll.
Hat jemand eine Idee oder Lösung parat? Die Werte sollen nicht in % ausgegeben werden sondern in Euro angezeigt werden.
Gruß Maik

Hat jemand das Thema weiter verfolgt oder gearbeitet? Ich würde nach wie vor sehr gern alle summen der reduzierten produkte zusammenfassen mit den werten der Gutscheine in der Währung (auch wenn % Gutschein) und die Versandkosten. Bekomme es so nicht so ganz hin. Wer weis rat?

Hallo,

kann es sein, dass der angegebene Code mit der CE 4.4.1 nicht mehr funktioniert? Ich kann zwar Sachen programmieren, nur leider komme ich mit Smarty überhaupt nicht zurecht.

Gruß,
Jens
*** EDIT ***
Habe das Problem gefunden. Ich habe den Preis über Rabatte geändert und nicht am Artikel selbst.

Naja wenigstens habe ich ein bisschen was über Smarty gelernt.

Hallo zusammen, ich versuche durch alles durchzusteigen, aber irgendwie komme ich nicht ganz klar.

Ich möchte nur im Fall dass ich einen Rabatt eingestellt habe die Anzeige des Originalpreises (Eingestellter Artikelpreis, NICHT UVP) durchgestrichen und den Neuen Rabattierten Preis angezeigt haben.

ich habe diesen Bereich in der out/basic/tpl/inc/product.tpl unter Verdacht

[{capture name=product_price}]
[{oxhasrights ident=“SHOWARTICLEPRICE”}]
<div id=“test_price_[{$testid}]” class=“cost”>
[{if $product->getFTPrice() && $size==‘big’ }]
<b class=“old”>[{ oxmultilang ident=“DETAILS_REDUCEDFROM” }] <del>[{ $product->getFTPrice()}] [{ $currency->sign}]</del></b>
<span class=“desc”>[{ oxmultilang ident=“DETAILS_REDUCEDTEXT” }]</span><br>
<sub class=“only”>[{ oxmultilang ident=“DETAILS_NOWONLY” }]</sub>
[{/if}]
[{if $product->getFPrice()}]
<big class=“price”>[{ $product->getFPrice() }] [{ $currency->sign}]</big><sup class=“dinfo”><a href="#delivery_link" rel=“nofollow”>*</a></sup>
[{else}]
<big> </big>
[{/if}]
</div>
[{/oxhasrights}]
[{/capture}]

aber ob ich wirklich recht habe und was ich ändern muss um die Prüfung des Originalpreises durchzuführen weiss ich nicht… Vielleicht bin ich auch total auf dem Holzweg.

Vielleicht könnt ihr mir ja helfen.

Gruß
Simon

Guten Tag

Das möchte ich auch in meinem Shop einbauen, habs aucch schon versucht.
Aber bei mir klappt das nicht?

Wo genau muss ich den Code einbauen?

Habe den Shop 4.5.8 Standart

hier stehts:

http://www.oxid-esales.com/forum/showthread.php?t=1299#post7517