In einigen Shops unserer Mitbewerber sind die unverbindlichen Preisempfehlungen des Lieferanten durchgestrichen und der günstigere Shop-Preis darunter groß hervorgehoben. Bei uns (zur Zeit mit ShopPilot Profi, jetzt am umstellen auf die Enterprise Version) stehen auch die Lieferantenpreise und der Hinweis auf 5% Rabatt die gewährt werden. Die Kunden sehen aber nur den großen günstigen Preis bei der Konkurrenz, rechnen die 5% bei uns nicht runter und bestellen eben nicht bei uns :(
Sind solche doppelten Preisangaben mit ShopPilot Enterprise auch möglich (und wenn ja, wie ;))?
Viele Grüße Ralph Häusler
Hallo rhae,
je nachdem wie Sie die Ausgabe der Preise gestalten wollen, haben Sie verschiedene Möglichkeiten.
Prinzipiell lässt sich die Ausgabe der ermäßigten Preise mit einem kleinen Makro regeln...
Es stehen Ihnen dabei aber 2 Möglischkeiten zur Verfügung....
Sie können entweder vorher über das Preisveränderungstool von ShopPilot ( -->Bearbeiten-->Artikelpreis verändern)
alle Artikelpreise um 5 Prozent reduzieren und über das Makro den ALTEN Preis ausgeben lassen.
(http://www.shoppilot.de/boardimages/preisaenderung.png)
Wenn Sie jedoch die 5% Rabatt erst beim Ablegen des Artikels in den Warenkorb berechnen wollen, können Sie die alten Preise bei Ihren Artikeln beibehalten
und über ein Makro den "NEUEN", reduzierten Preis anzeigen lassen.
Das Makro hätte dann je nachdem für welche Möglichkeit Sie sich entscheiden, folgenden Aufbau:
In Shoppilot bleibt der alte Preis erhalten und das Makro gibt den Vorzugspreis aus:
<!--spmacro:module(preis)
sub vorzugspreis {
my $p = ssp::get_var_article ('preis',0)*0.95;
main::mprint qq| Sie erhalten den Artikel zum Vorzugspreis von : $p |;
return 0;
}
-->
Wenn Sie jedoch die Preise über das Preisänderungstool ändern möchten und durch das Makro den alten Preis ausgeben lassen möchten, würde es folgendermaßen aussehen:
<!--spmacro:module(preis)
sub alterpreis {
my $p = ssp::get_var_article ('preis',0)*1.05;
main::mprint qq| Alter Preis des Artikels : <strike> $p </strike> |;
return 0;
}
-->
Die Ausgabe der Preise würde nachdem Sie das Makro in Ihre Vorlagen eingebunden haben dann über den jeweiligen Identifier erfolgen:
__preis::vorzugspreis__ bzw.
__preis::alterpreis__
Formatieren können Sie die Ausgabe dann über ganz normales HTML oder CSS ...
Ich hoffe das hilft Ihnen weiter :)
mfg
cru
Hallo,
hierzu noch ein Tipp (ab Enterprise 2.5):
Solche SSP-Makros, die auf fast allen Seiten Verwendung finden, kann man in die Datei stdall.ipl schreiben.
Dann werden Sie automatisch in alle Seiten übernommen.
Gruss hop
Oha, danke für diese ausgesprochen erstklassige Antwort :)
Viele Grüße Ralph Häusler
Stopp zu früh gefreut! Das Makro mit dem Vorzugspreis habe ich als "vorzugspreis.ipl" im Verzeichnis "scripts" gespeichert und in der Datei stall.ipl darauf hingewiesen (<!--spmacro:include(scripts/vorzugspreis.ipl)-->). Beim ersten Artikel einer (Übersichts-) Seite funktioniert die neue Preisangabe auch sehr gut, doch bei den anderen Artikeln kommt immer der Vorzugspreis des ersten Artikels, siehe Bild:
(http://www.hae.de/test/spe1.jpg)
Etwas vereinfacht geschrieben stehen auf der Artikel-Übersichtsseite folgende Angaben für die Anzeige der Artikel:
<!--spmacro:loopitem15-->
__produkt__<BR>
__ergaenz1__<BR>
<strike>__preis__</strike><BR>
Unser Shop-Preis:<BR>
__preis::vorzugspreis__<BR>
__id__
<!--spmacro:enditem-->
Wo könnte da der Fehler liegen? Oder funktioniert das Makro nur auf Detailseiten?
Viele Grüße Ralph Häusler
Hallo rhae,
da hab ich wohl eine Kleinigkeit vergessen... :-[
Sie müssen leider noch eine kleine Änderung am Code vornehmen:
<!--spmacro:module(preis)
sub vorzugspreis {
my $index = $_[0];
my $p = ssp::get_var_article ('preis',$index)*0.95;
main::mprint qq| Sie erhalten den Artikel zum Vorzugspreis von : $p |;
return 0;
}
-->
bzw.
<!--spmacro:module(preis)
sub alterpreis {
my $index =$_[0];
my $p = ssp::get_var_article ('preis',$index)*1.05;
main::mprint qq| Alter Preis des Artikels : <strike> $p </strike> |;
return 0;
}
-->
mfg
cru
Vielen Dank, jetzt funktioniert's perfekt! :) :) :)
Viele Grüße Ralph Häusler
Noch eine kleine Anmerkung bzw. Änderung meinerseits. Damit die Kommastellen der Preise auf 2 begrenzt werden, bzw. mind. 2 Kommastellen erscheinen, habe ich die Zeile:
$p = sprintf("%.2f" , $p);
vor die Ausgabe des Wertes gestellt.
Viele Grüße Ralph Häusler
Hmm, noch ein Problem bei den neuen Preisen tut sich auf. Bei Artikelvarianten klappt's leider nicht. Wäre es möglich einen Ersatz für die Variable __radiovar__ zu basteln (analog dem obigen Script mit Vorzugspreis), so dass beim folgenden Beispiel gleich die günstigen reduzierten Preise angezeigt werden? (das Beispiel ist noch aus unserem alten Shop mit dem 5%-Bestellbutton):
(http://www.hae.de/test/test2.jpg)
Viele Grüße Ralph Häusler
Hallo rhae,
also man könnte das Problem mit den Varianten folgendermaßen lösen:
<!--spmacro:module(preis)
sub vorzugspreis2
{
my $index = $_[0];
my $vanzahl = $_[3];
my $itemid = ssp::get_var_article("itemid", $index);
my $print = "";
for (my $i = 0; $i <= $vanzahl; $i++)
{
my $vitemid = ssp::get_var_varticle("itemid", $i);
my $vpreis = ssp::get_var_varticle("preis", $i);
my $vdescr = ssp::get_var_varticle("idescription", $i);
my $shopprice = $vpreis *0.95;
$shopprice = main::fp($shopprice);
$print .= qq |<input type="radio" name="variant" value="$vitemid">$vdescr
<strike>$vpreis EUR </strike> <b>unser Preis</b>: $shopprice <br> |;
}
main::mprint qq| <form name="Arv$itemid" action""> $print </form>|;
return 0;
}
-->
In der HTML-Vorlage fügt man es dann folgendermaßen ein:
__preis::vorzugspreis2__<br>
__id__
(http://www.shoppilot.de/boardimages/bspvorzugspreis.png)
So würden die in Sp eingetragenen Preise durchgestrichen und direkt dahinter die neuen, reduzierten Preise angezeigt... :)
mfg
cru
Klappt prima, vielen Dank nochmal für die Unterstützung :)
Viele Grüße Ralph Häusler
PS: Hier mal unser 2-preisiger Shop: www.weka-sauna.com
Hallo - bevor mir jetzt noch mehr Haare grau werden frag' ich lieber nochmal hier nach. Also die Sache mit den durchgestrichenen Varianten-Preisen funktioniert teils sehr gut und teils gar nicht. Es liegt sehr wahrscheinlich an der Art der Artikelnummer, kommen Zeichen wie "-" oder "_" vor kann der Artikel mit dem Varianten-Vorzugspreisscript nicht in den Warenkorb gelegt werden. So sieht der Quelltext bei der normalen Funktion __radiovar__ aus:
<form name="Arv50001000000x" action="">
<input type=radio name="variant" Value="500-0104-00-00">Sanduhr 13,99 EUR<br>
<input type=radio name="variant" Value="500-0103-00-00">Klimamesser, D100mm 29,99 EUR<br>
<input type=radio name="variant" Value="500-0102-00-00">Schöpfkelle 10,99 EUR<br>
<input type=radio name="variant" Value="500-0100-00-00">Sauna-Zubehör-Set 59,95 EUR<br>
</form>
<a href="javascript:void(0)" OnClick='inwk("400!0",43712330612850,"500-0100-00-00-x",0,1,1);return false;'><img border=0 src="http://127.0.0.1:84/eshop/pix/bestellen1.gif" alt="in den Warenkorb"></a>
und so mit der Funktion __preis::vorzugspreis_variant__
<form name="Arv500-0100-00-00-x" action"">
<input type="radio" name="variant" value="500-0104-00-00">Sanduhr <strike>13.99 EUR </strike> <b>unser Preis</b>: 13,15 EUR <br>
<input type="radio" name="variant" value="500-0103-00-00">Klimamesser, D100mm <strike>29.99 EUR </strike> <b>unser Preis</b>: 28,19 EUR <br>
<input type="radio" name="variant" value="500-0102-00-00">Schöpfkelle <strike>10.99 EUR </strike> <b>unser Preis</b>: 10,33 EUR <br>
<input type="radio" name="variant" value="500-0100-00-00">Sauna-Zubehör-Set <strike>59.95 EUR </strike> <b>unser Preis</b>: 56,35 EUR <br>
</form>
<a href="javascript:void(0)" OnClick='inwk("400!0",43712330612850,"500-0100-00-00-x",0,1,1);return false;'><img border=0 src="http://127.0.0.1:84/eshop/pix/bestellen1.gif" alt="in den Warenkorb"></a>
Der einzige wichtige Unterschied ist wohl bei <Form name=""> zu finden, aber die Trennungszeichen "-" oder "_" sind schon wichtig, die hab' ich ja schon extra nehmen müssen weil "." (Punkt) nicht funktionierte.
please help!
Viele Grüße Ralph Häusler
Hallo rhae,
die Artikel werden durch ein JavaScript in den Warenkorb gelegt. Dieses hat aber Probleme mit "-", daher eine kleine Änderung an der
__preis::vorzugspreis2__
Funktion.
<!--spmacro:module(preis)
sub vorzugspreis2
{
my $index = $_[0];
my $vanzahl = $_[3];
my $itemid = ssp::get_var_article("itemid", $index);
my $print = "";
for (my $i = 0; $i <= $vanzahl; $i++)
{
my $vitemid = ssp::get_var_varticle("itemid", $i);
my $vpreis = ssp::get_var_varticle("preis", $i);
my $vdescr = ssp::get_var_varticle("idescription", $i);
my $shopprice = $vpreis *0.95;
$shopprice = main::fp($shopprice);
$print .= qq |<input type="radio" name="variant" value="$vitemid">$vdescr
<strike>$vpreis EUR </strike> <b>unser Preis</b>: $shopprice <br> |;
}
$itemid =~ s/-//g; # Die neue Zeile
main::mprint qq| <form name="Arv$itemid" action""> $print </form>|;
return 0;
}
-->
mfg
cru