Hallo, ich habe folgendes vor: Im Moment ist es so, das wenn ich einen Varianten Artikel habe, in der Box der Button „Jetzt bestellen“ verschwindet, das ist auch okay so, ich möchte dafür das ein Button kommt, der zu der Artikelseite verlinkt wird und den Text „Mehrere Varianten“ hat. Ich kriege das ganze nur leider irgendwie nicht hin, komme mit diesen Smarty befehlen nicht wirklich klar. {block name='frontend\_listing\_box\_article\_actions\_buy\_now'} {\* Buy now button \*} {if !$sArticle.laststock == 1 && !($sArticle.notification == 1 && {config name="deactivatebasketonnotification"} == 1)} [{s name='ListingBoxLinkBuy'}{/s}]({url controller='checkout' action='addArticle' sAdd=$sArticle.ordernumber} "{s name='ListingBoxLinkBuy'}{/s}") {else}{if !$sArticle.sConfigurator && !$sArticle.variants && !$sArticle.sVariantArticle == 1}{s name='ListingBoxVarianten'}{/s}{/if} {/if} {/block}
Damit versuche ich zu arbeiten, was leider nicht klappt, hat einer von euch ne Idee vielleicht? Kurz und knapp gesagt, soll bei Varianten Artikeln anstatt Jetzt bestellen etwas anderes stehen
*push* hat niemand eine Idee?
[quote]{else}{if[/quote] heißt auf jeden Fall mal [quote]{elseif [/quote] Und wenn man mit etwas nicht klar kommt, kuckt man in der Doku: http://www.smarty.net/docs/en/language.function.if.tpl Habe mir den Code nicht weiter angeschaut - hab das nur beim Überfliegen gesehen
Hallo, im Original ist dies der Block des Buy-Now-Buttons. {block name='frontend\_listing\_box\_article\_actions\_buy\_now'} {\* Buy now button \*} {if !$sArticle.priceStartingFrom &&!$sArticle.sConfigurator && !$sArticle.variants && !$sArticle.sVariantArticle && !$sArticle.laststock == 1 && !($sArticle.notification == 1 && {config name="deactivatebasketonnotification"} == 1)} [{s name='ListingBoxLinkBuy'}{/s}]({url controller='checkout' action='addArticle' sAdd=$sArticle.ordernumber} "{s name='ListingBoxLinkBuy'}{/s}") {/if} {/block}
Bei Varianten ( => $sArticle.sConfigurator = 1 ) wird die if-Anweisung nicht ausgeführt. Man muss also nur eine {else} Anweisung anhängen, die den Info-Text erzeugt, wenn $sArticle.sConfigurator gesetzt ist. {block name='frontend\_listing\_box\_article\_actions\_buy\_now'} {\* Buy now button \*} {if !$sArticle.priceStartingFrom &&!$sArticle.sConfigurator && !$sArticle.variants && !$sArticle.sVariantArticle && !$sArticle.laststock == 1 && !($sArticle.notification == 1 && {config name="deactivatebasketonnotification"} == 1)} [{s name='ListingBoxLinkBuy'}{/s}]({url controller='checkout' action='addArticle' sAdd=$sArticle.ordernumber} "{s name='ListingBoxLinkBuy'}{/s}") {else} {if $sArticle.sConfigurator} {\* der Info-Text \*} {/if} {/if} {/block}
Ob man in dem {else}-Block eine zweite if-Anweisung einbaut oder mit {elseif} arbeitet, ist für die Programmlogik unerheblich. Falls eine der anderen Bedingungen auch die Anzeige des Info-Buttons steuern soll, z. B. die Staffelpreise, muss die zweite if-Anweisung natürlich erweitert werden.