Перейти к содержанию
Официальный форум поддержки Simpla

Сравнительная таблица характеристик товаров в каталоге


Рекомендуемые сообщения

Вывод характеристик товаров категории в таблице

 

открываем //view/ProductsView.php добавляем код



$properties = $this->features->get_product_options($products_ids);
foreach($properties as $property)
    $products[$property->product_id]->options[] = $property;

 

шаблон products.tpl в цикле



{foreach $product->options as $o}
    {$compare_features[{$o->feature_id}] = ['id'=>{$o->feature_id},'name'=>{$o->name}]}
    {$compare_products[{$o->product_id}][{$o->feature_id}] = {$o->value}}
{/foreach}

 

далее



{literal}
<STYLE type="text/css">

    #compare{
      display:none;
      background: #FFFFFF
    }
    #compare th, #compare td{
      border:1px solid #DEDEDE;
      padding:10px;
      width:200px;
    }
    #compare tr.odd td{
      background: #FAFAFA
    }

</STYLE>
<SCRIPT>
$(function() {

    $('a.get_compare').fancybox({'href' : '#compare'});
    $("#compare tr:odd").addClass('odd');
});
</SCRIPT>
{/literal}

<TABLE id='compare'>
    <TR>
        <td>Характеристика</td>
        {foreach $products as $p}
        <td>
            <a href="products/{$p->url}"><img src="{$p->image->filename|resize:100:100}" alt="{$p->name|escape}"/></a>
            <H3>{$p->name}</H3>
        </td>
        {/foreach}
    </TR>
    {foreach $compare_features as $f}
    <TR>
        <TD>{$f.name}</TD>
        {foreach $products as $p}
        <TD>
            {if {$compare_products.{$p->id}.{$f.id}}}{$compare_products.{$p->id}.{$f.id}}{else}-{/if}
        </TD>
        {/foreach}
    </TR>
    {/foreach}
</TABLE>

 

добавляем кнопку



<A class='get_compare button' href="#">Показать таблицу характеристик</A>

 

 

Можно дополнить

 



$('a.get_compare').fancybox({'href' : '#compare'});
    $("#compare tr:odd").addClass('odd');
    $('.this_hide').click(function(){
      var idx =$(this).parent().index();
      $('#compare tr').each(function(index) {
        $(this).find('td').eq(idx).hide();
      });
      return false;
    }) 


...
        <td>
            <a href="products/{$p->url}"><img src="{$p->image->filename|resize:100:100}" alt="{$p->name|escape}"/></a>
            <H3>{$p->name}</H3>
            <A href="#" class='this_hide'>скрыть</A>
        </td>
...
 

 

 

 

===================================================

 

по вопросам: доработка, установки стучите в личку или скайп.

 

Если вы хотите установить эту доработку но по каким то причинам не можете сделать это самостоятельно я всегда рад помочь на платной основе.

 

скайп: simpladev

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...