Pergunta

Temos uma instrução If que define um nome de classe para as categorias na matriz, A primeira categoria tem a classe de "primeira" e a última categoria que tem a classe de "último" no entanto, o Último nome da classe não está sendo definido e eu suponho que é porque ele não pensa que é o fim de nossa matriz e eu não entendo o por que

este é o código

$store_categories = $this->getLeftCategories();
if ($count = count($store_categories)) {

$block_title = $this->getBlockTitle();
if ( empty($block_title) ) $block_title = 'Categories';
?>
<div class="block block-left-nav">
    <div class="block-title">
        <strong><span><?php echo $this->__($block_title1) ?></span></strong>
    </div>
    <div class="block-content">
        <ul id="left-nav">
        <?php
        $i=0;
        foreach ($store_categories as $_category) {
            $class = array();        
   if (!$i) {
                $class[] = 'first';
            } 
            if($i == $count) {          
                $class[] = 'last';
            }

            echo $this->drawOpenCategoryItem($_category, 0, $class);

            $i++;
        } ?>

        </ul>
    </div>
</div

Se alguém pode ver a razão pela qual ele não está definindo a Última classe, ou se eu tenho escreveu a instrução SE errado, você poderia me dizer como eu tenho estado a olhar para isso por horas e não consigo ver nada

Obrigado

Foi útil?

Solução

Por favor, tente com if(($i + 1) == $count) { ... porque para uma matriz com 3 itens, você terá i = 0, 1, 2 ou mover $i++; acima if($i == $count) {.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top