make4u
April 11, 2012, 5:02pm
1
Hallo,
in unserem Shop haben wir Artikel, die eine bestimmte Lieferzeit haben, die auch beim einzelnen Artikel angezeigt wird, und trotzdem bestellbar sind. Andere Artikel wiederum sind sofort lieferbar.
Ich möchte nun, dass der Kunde den aktuellen Lagerstand zum Zeitpunkt seiner Bestellung auch nocheinmal im Warenkorb und auch in der Bestätigungs-Email zu sehen bekommt.
Wie stelle ich das an bzw. welche Stellen im Template muss ich wie ändern?
Ich verwende die Version CE 4.5.3_39087 und das Azure-Template.
Vielen Dank schonmal für Eure Antworten…
Markus
Hallo,
für den Warenkorb und der Bestätigungsemail müsste das
[{ $basketproduct->oxarticles__oxstock->value }]
sein - einzufügen in der tpl/page/checkout/inc/basketcontents.tpl und tpl/email/html/order_cust.tpl.
Ist so ein Schuss ins Blaue - heisst, bin mir nicht ganz sicher:-)
Oder meinst du die Lieferzeit?
make4u
April 11, 2012, 5:41pm
3
Hallo novalgin,
vielen Dank für die schnelle Antwort.
So funktioniert es leider nicht. Ich habe den Code in die basketcontents.tpl wie folgt eingefügt:
[{* product wrapping *}]
[{if $oView->isWrapping() }]
<td>
[{ if !$basketitem->getWrappingId() }]
[{if $editable }]
<a class="wrappingTrigger" rel="nofollow" href="[{ oxgetseourl ident=$oViewConf->getSelfLink()|cat:"cl=wrapping" params="aid="|cat:$basketitem->getProductId() }]" title="[{ oxmultilang ident="PAGE_CHECKOUT_BASKETCONTENTS_ADDWRAPPING" }]">[{ oxmultilang ident="PAGE_CHECKOUT_BASKETCONTENTS_ADDWRAPPING" }]</a>
[{else}]
[{ oxmultilang ident="PAGE_CHECKOUT_BASKETCONTENTS_NONE" }]
[{/if}]
[{else}]
[{assign var="oWrap" value=$basketitem->getWrapping() }]
[{if $editable }]
<a class="wrappingTrigger" rel="nofollow" href="[{ oxgetseourl ident=$oViewConf->getSelfLink()|cat:"cl=wrapping" params="aid="|cat:$basketitem->getProductId() }]" title="[{ oxmultilang ident="PAGE_CHECKOUT_BASKETCONTENTS_ADDWRAPPING" }]">[{$oWrap->oxwrapping__oxname->value}]</a>
[{else}]
[{$oWrap->oxwrapping__oxname->value}]
[{/if}]
[{/if}]
[{ $basketproduct->oxarticles__oxstock->value }]
Die Anzeige des aktuellen Lagerstands sollte somit direkt unterhalbe der Anzeige der Artikelnummer sein. Ist die Position vielleicht falsch?
Gibt es noch andere Ideen / Vorschläge?
Markus
bitte füge:
<div>
[{ $basketproduct->oxarticles__oxstock->value }]
</div>
unter
<div>
[{ oxmultilang ident="PAGE_CHECKOUT_BASKETCONTENTS_ARTNOMBER" }] [{ $basketproduct->oxarticles__oxartnum->value }]
</div>
ein
make4u
April 12, 2012, 3:36pm
5
Ersteinmal vielen Dank für die Lösung.
Ich glaube ich hab’ mich missverständlich ausgedrückt. Sorry.
Mit dieser Lösung wird jetzt im Warenkorb der tatsächliche Warenbestand als Zahl, z.B. “50” angezeigt.
Ich meinte den “Lieferstatus” mit Ampel, z.B. rot mit “Momentan nicht lieferbar” bzw. “Lieferbar ab 04.05.2012” oder grün “sofort lieferbar”.
dann musst Du die Ampel aus dem product.tpl in das basket.tpl übertragen
in Basic sieht das so aus:
<span class="flag [{if $product->getStockStatus() == -1}]red[{elseif $product->getStockStatus() == 1}]orange[{elseif $product->getStockStatus() == 0}]green[{/if}]"> </span>
an oben genannter Stelle einfügen:
<div>
[{if $basketproduct->getStockStatus() == -1}]
<span class="stockFlag notOnStock" itemprop="availability" href="http://schema.org/OutOfStock">
[{if $basketproduct->oxarticles__oxnostocktext->value}]
[{$basketproduct->oxarticles__oxnostocktext->value}]
[{elseif $oViewConf->getStockOffDefaultMessage()}]
[{oxmultilang ident="DETAILS_NOTONSTOCK"}]
[{/if}]
[{if $basketproduct->getDeliveryDate()}]
[{oxmultilang ident="DETAILS_AVAILABLEON"}] [{$basketproduct->getDeliveryDate()}]
[{/if}]
</span>
[{elseif $basketproduct->getStockStatus() == 1}]
<span class="stockFlag lowStock" itemprop="availability" href="http://schema.org/InStock">[{oxmultilang ident="DETAILS_LOWSTOCK"}]</span>
[{elseif $basketproduct->getStockStatus() == 0}]
<span class="stockFlag" itemprop="availability" href="http://schema.org/InStock">
[{if $basketproduct->oxarticles__oxstocktext->value}]
[{$basketproduct->oxarticles__oxstocktext->value}]
[{elseif $oViewConf->getStockOnDefaultMessage()}]
[{oxmultilang ident="DETAILS_READYFORSHIPPING"}]
[{/if}]
</span>
[{/if}]
</div>
Die wird es die Schrift etwas verschieben, bzw. das Ampelsymbol, aber diese CSS Anpassungen bekommst du alleine hin…
make4u
April 12, 2012, 9:58pm
8
Super, vielen Dank für die Hilfe, novalgin
Es hat geklappt. Wie vorausgesagt musste ich die Darstellung etwas anpassen, aber jetzt sieht es genau so aus, wie ich mir das vorgestellt habe.