Prestashop添加一个计数器并在smarty文件中使用作为参考如何?

时间:2014-06-02 17:55:55

标签: php jquery smarty prestashop prestashop-1.6

我的php中的代码用于其他一些项目就像这样

<div class="post-wrap">
  $i = 0;
  while ( have_posts() )
  $i++;
  if($i==1) {
    $class= 'active';
  }
  else {
    $class= '';
  }

 <div class="box '.$class.'"></div>
 endwhile;
 </div>

现在这给出了像

这样的输出
<div class="box active"></div>
 <div class="box"></div>
 <div class="box"></div>

通过这种方式,我已经通过jQuery发布了所有帖子fadein和fadeout。

使用相同的参考,我想使fadein和fadeout一些文本。为此我开发了模块。因为我从数据库中获取所有值。所以我的模块代码就像这样

public function hookfooter($params) {
  $popup_styles = "SELECT * FROM "._DB_PREFIX_."database ORDER BY `id` DESC LIMIT 1";
  $popup_styles_settings = Db::getInstance()->ExecuteS($popup_styles);
  $this->context->smarty->assign('PopupStyles',$popup_styles_settings);
  return $this->display(__FILE__, 'views/templates/front/footer-display.tpl');
 }

这里我已经获取了数据,并且已将值分配给smarty。

内心聪明,我的代码就像这样

 {foreach from=$sliderValues item=row}
  <div class="box">name</div>
  <div class="box">name2</div>
  <div class="box">name3</div>
 {/foreach}

但在这里我不知道如何使用while和make循环计数器,以便我可以为jquery添加活动类。 所以可以告诉我如何使这项工作?任何帮助和建议都会非常明显。感谢

1 个答案:

答案 0 :(得分:0)

你的问题很混乱,但我想你只需要使用@iteration property

{foreach $sliderValues as $row}
{if $row@iteration == 1}
... do something ...
{/if}