Ich möchte inaktive Varianten ausblenden und habe dafür eine abgewandelte details/buy.tpl geschrieben:
Aufgefallen ist mir noch, das in der Tabelle s_articles das Feld "active" als int(1) definiert ist, während "aktive" in s_articles_details als int(11) definiert ist.
{extends file="../_default/frontend/detail/buy.tpl"} {block name='frontend_detail_buy_variant' replace} <select name="sAdd" id="sAdd" class="variant"> <option value="">{s name="DetailBuyValueSelect"}{/s}</option> {if (!isset($sArticle.active) || $sArticle.active)} <option value="{$sArticle.ordernumber}"> {if $sArticle.additionaltext} {$sArticle.additionaltext} {else} {$sArticle.articleName} {/if} </option> {/if} {foreach from=$sArticle.sVariants item=variant} {if ($variant.active)} <option value="{$variant.ordernumber}"> {if $variant.additionaltext} {$variant.additionaltext} {else} {$variant.ordernumber} {/if} </option> {/if} {/foreach} </select> {/block}Leider funktioniert die Abfrage auf "active" nur für den Hauptartikel. Das Feld "active" in den article_details ist korrekt belegt, wird hier aber offenbar nicht abgefragt. Mit dem Skript oben werden alle Varianten ausgeblendet.
Aufgefallen ist mir noch, das in der Tabelle s_articles das Feld "active" als int(1) definiert ist, während "aktive" in s_articles_details als int(11) definiert ist.