leerer Warenkorb

Begonnen von dobra, September 13, 2008, 07:48:31

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

dobra

Hallo,

irgendwie hat es mich immer gestört, daß ein leerer WK nicht besonders attraktiv ist....



Die Lösung:
man blendet den WK mit ssp aus und schreibt einen beliebigen Text rein, wenn er leer ist
und eine leere Warenkorbseite schaut dann z.B. so aus



nachdem man (oder ich kann's zumindest nicht) keine Conditional Comments in den qq-Bereich schreiben kann, sind hierfür 2 subs notwendig.

Code in die WK-Seite schreiben
(hier als Beispiel der Code vom Styleshop)
<!--spmacro:module(show)
my $sum = ssp::get_wkprodsum();
sub wkhead {
my $out;
if (length($sum)) {
$out = qq|
<tr>
<td colspan="6">
<div align="left">
<table align="left">
<tr>
<td style="text-align:left;">Lieferung nach</td>
<td style="text-align:left;">__zonen__</td>
</tr>
<tr>
<td style="text-align:left;">Zahlung per</td>
<td style="text-align:left;">__zahlart__</td>
</tr>
</table>
</div>
</td>
</tr>
<tr><td colspan="6">&nbsp;</td></tr>
<tr>
<td></td>
<td class="colheader" style="text-align:left;">Produkt-Nr.</td>
<td class="colheader" style="text-align:left;">Bezeichnung</td>
<td class="colheader">Stückzahl</td>
<td class="colheader">Einzelpreis</td>
<td class="colheader">Gesamtpreis</td>
</tr>
|;
}
main::mprint $out;
}

sub wkfoot {
my $out;
if (length($sum)) {
$out = qq|
<tr>
<td colspan="6" class="smallnoborder">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="smallnoborder"></td>
<td nowrap class="small">__mindertext__</td>
<td nowrap class="small">__minder__</td> </tr>
<tr>
<td colspan="4" class="smallnoborder"></td>
<td nowrap class="small">__versandtext__</td>
<td nowrap class="small">__versand__</td>
</tr>
<tr>
<td colspan="4" class="smallnoborder"></td>
<td nowrap class="small">__zahlarttext__</td>
<td nowrap class="small">__zahlartbetrag__</td>
</tr>
<tr>
<td colspan="4" class="smallnoborder"></td>
<td nowrap class="small">__rabatttext__</td>
<td nowrap class="small">__rabatt__</td>
</tr>
<tr>
<td colspan="6" class="smallnoborder">&nbsp;</td>
</tr>
<tr>
<td colspan="4" style="background-color:#ffffff;"></td>
<td align="right" class="box_table_content stdborder_all"><b>Gesamtpreis:</b></td>
<td align="right" class="box_table_content stdborder_all"><b>__gesamtpreis__</b></td>
</tr>
<tr>
<td colspan="6" align="right" style="background-color:#ffffff;"><br>Der Gesamtpreis enthält <b>__steuer__ __steuertext__</b><br>&nbsp;</td>
</tr>
<tr>
<td colspan="6">
<div align="center">
<table cellspacing="20" align="center">
<tr>
<td>__bestellen__</td>
<td>__sbestellen__</td>
</tr>
</table>
</div>
</td>
</tr>
|;
}
else
{  $out = qq|
<tr>
<td   style="text-align:center;"> <br>Sie haben keine Artikel im Warenkorb<br><br></td>
</tr>
|;
}
main::mprint $out;
}
-->


sub wkhead - hier packt man den HTML-Code der VOR dem <!--spmacro:loopitem--> steht und ausgeblendet werden soll hinein und ersetzt diesen Teil durch
__show::wkhead__
sub wkfoot - hier kommt der HTML-Code hinein, der NACH <!--spmacro:enditem--> steht.
im "else" Teil kommt dann der Text, der bei leerem WK angezeigt werden soll (kann natürlich noch mit "class="..."" formatiert werden)

Der HTML-Teil im WK schaut dann im Beispiel so aus:
<table class="cart" width="100%">
<tr>
<td colspan="6" class="header">Ihr Warenkorb</td>
</tr>
__show::wkhead__
<!--spmacro:loopitem-->
...
...
<!--spmacro:enditem-->
__show::wkfoot__
</table>
mfG
dobra