Ajax-фильтры в теме Megashop2
Магазин - витрина - шаблоны.
В файле sidebar-filters.html нужно добавить filters ajax, чтобы получилось вот так:
<div class="c-sidebar-block c-sidebar-filters filters ajax">
В файле user.css нужно добавить в конце следующий код:
.filters label.disabled { color: #ccc; } .filters .c-filter__content .ui-slider-horizontal .ui-slider-handle, .filters .c-filter__content .ui-slider-horizontal .ui-slider-handle.ui-state-focus { margin-left: 0; } .filters .c-filter__content .ui-slider-horizontal .ui-slider-handle, .filters .c-filter__content .ui-slider-horizontal .ui-slider-handle.ui-state-focus { width: 8px; }
Далее в настройках плагина (Магазин - Плагины - Фильтры) нужно заменить Шаблон вывода на такой:
<link type="text/css" rel="stylesheet" href="{$wa_url}wa-content/css/jquery-ui/base/jquery.ui.slider.css"> <script>window.jQuery.ui || document.write(unescape('%3Cscript src="{$plugin_url}js/jquery-ui.core.slider.min.js"%3E%3C/script%3E'))</script> <script>window.jQuery.ui.slider || document.write(unescape('%3Cscript src="{$wa_url}wa-content/js/jquery-ui/jquery.ui.slider.min.js"%3E%3C/script%3E'))</script> <link type="text/css" rel="stylesheet" href="{$plugin_url}css/filters.css?v{$version}"> <script type="text/javascript"> $.wa = $.wa || {}; $.wa.filters = {$filters_options}; $.wa.filters.slider_disabled = true; $.wa.filters._search = location.search; $(function () { $('.filters').on('click', 'b,i', function () { if ($(this).closest('p').length > 0) { $(this).closest('p').toggleClass('collapsed'); } else { $(this).closest('div').toggleClass('collapsed'); } }); $('.filters').on('disable.filters', function () { var fs = '.filters'; if ($.wa.filters && $.wa.filters.features) { $(fs + ' input:checkbox,' + fs + ' input:radio').each(function () { var name = $(this).attr('name'); if (name.substring(name.length - 2) == '[]') { name = name.substring(0, name.length - 2); if (!$(this).is(':checked')) { if ($.wa.filters.features[name] && ($.wa.filters.features[name] === true || $.inArray(this.value, $.wa.filters.features[name]) != -1)) { $(this).closest('label.l-label').removeClass('disabled'); } else { $(this).closest('label.l-label').addClass('disabled'); } } else if ($.wa.filters.features[name] && ($.wa.filters.features[name] === true || $.inArray(this.value, $.wa.filters.features[name]) != -1)) { $(this).closest('label.l-label').removeClass('disabled'); } } }); } else { $(fs + ' label.l-label.disabled').removeClass('disabled'); } if (window.megashop && window.megashop.shop && !$.wa.filters._search) { window.megashop.shop.Products($('.c-products')).refreshProducts() } else { $.wa.filters._search = false; } }); }); </script> <script type="text/javascript" src="{$plugin_url}js/filters.min.js?v{$version}"></script>
Чтобы добавить комментарий, зарегистрируйтесь или войдите
0 комментариев