Прикрутить Шаблону Мокко Фильтр От Шаблона Движение
#1
Отправлено 20 Апрель 2015 - 19:22
Надо к шаблону Мокко (аккаунт SL-230350) приделать фильтр как у шаблона Движение (аккаунт SL-327744).
Вот так выглядит фильтр на Мокко:
Такой фильтр у меня получился на шаблоне Движение:
Я понимаю, что это просто стиль оформления, но боюсь что то испортить делая это самостоятельно, по-этому прошу помощи. Спасибо
#2
Отправлено 23 Апрель 2015 - 07:51
#3
Отправлено 23 Апрель 2015 - 16:23
ipodushkin (23 Апрель 2015 - 07:51) писал:
найдите в шаблоне HTML
{% FOR filter_prop_list %} <em>{filter_prop_list.NAME}</em> <div class="contentTbodySearchFilterBlockValues"> {% FOR values %} <input type="checkbox" name="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterPropVal{filter_prop_list.values.ID}" {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %} > <label for="filterPropVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</label><br /> {% ENDFOR %} </div> {% ENDFOR %}замените на
{% FOR filter_prop_list %} <div class="filter"> {filter_prop_list.NAME}:<br /> <span class="select-box"> <select onchange="$(this).attr('name', $(this).find('option:selected').attr('value') == -1 ? '' : $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_prop_list.values.CHECKED %}form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]{% ENDIF %}{% ENDFOR %}"> <option> - все - </option> {% FOR values %} <option value="1" rel="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" {% IF filter_prop_list.values.CHECKED %}selected="selected"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</option> {% ENDFOR %} </select> </span> </div> {% ENDFOR %}
#4
Отправлено 24 Апрель 2015 - 21:31
Ирина345 (23 Апрель 2015 - 16:23) писал:
найдите в шаблоне HTML
{% FOR filter_prop_list %} <em>{filter_prop_list.NAME}</em> <div class="contentTbodySearchFilterBlockValues"> {% FOR values %} <input type="checkbox" name="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterPropVal{filter_prop_list.values.ID}" {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %} > <label for="filterPropVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</label><br /> {% ENDFOR %} </div> {% ENDFOR %}замените на
{% FOR filter_prop_list %} <div class="filter"> {filter_prop_list.NAME}:<br /> <span class="select-box"> <select onchange="$(this).attr('name', $(this).find('option:selected').attr('value') == -1 ? '' : $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_prop_list.values.CHECKED %}form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]{% ENDIF %}{% ENDFOR %}"> <option> - все - </option> {% FOR values %} <option value="1" rel="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" {% IF filter_prop_list.values.CHECKED %}selected="selected"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</option> {% ENDFOR %} </select> </span> </div> {% ENDFOR %}
В целом все то же самое, но списки стали выпадающими:
Можно ли в точности сделать вот так:
#5
Отправлено 25 Апрель 2015 - 04:24
Сам код фильтров перенесите из шаблона HTML:
<!-- Если в тарифном плане подключен модуль фильтров по товарам --> {% IF TARIFF_FEATURE_GOODS_FILTERS %} <form action="" method="get"> <style> .contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:justify;} .goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;} .goodsFilterPriceInfo input {width:45px;} .goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #000;width: 100%;overflow: visible;} .goodsFilterPriceRangePointers .min {float: left; margin-left: -7px;color:#000; } .goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;color:#000; } .goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;} </style> <!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам --> {% IF SHOW_GOODS_FILTERS %} <br /> <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь --> <div class="contentTbodySearchFilterBlock cornerAll"> <!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд батареи) --> {% FOR filter_attr_list %} <em>{filter_attr_list.NAME}</em> <div class="contentTbodySearchFilterBlockValues"> {% FOR values %} <input type="checkbox" name="form[filter][attr][{filter_attr_list.ID}][{filter_attr_list.values.ID}]" value="1" id="filterAttrVal{filter_attr_list.values.ID}" {% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %} /> <label for="filterAttrVal{filter_attr_list.values.ID}">{filter_attr_list.values.VALUE} ({filter_attr_list.values.NB_GOODS_FILTERED})</label><br /> {% ENDFOR %} </div> {% ENDFOR %} <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) --> {% FOR filter_prop_list %} <div class="filter"> {filter_prop_list.NAME}:<br /> <span class="select-box"> <select onchange="$(this).attr('name', $(this).find('option:selected').attr('value') == -1 ? '' : $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_prop_list.values.CHECKED %}form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]{% ENDIF %}{% ENDFOR %}"> <option> - все - </option> {% FOR values %} <option value="1" rel="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" {% IF filter_prop_list.values.CHECKED %}selected="selected"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</option> {% ENDFOR %} </select> </span> </div> {% ENDFOR %} </div> {% ENDIF %} </form> {% ENDIF %} <!-- END Если в тарифном плане подключен модуль фильтров по товарам -->
переделайте его в следующий вид:
<!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам --> {% IF SHOW_GOODS_FILTERS %} <br /> <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь --> <div class="contentTbodySearchFilterBlock cornerAll"> <!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд батареи) --> {% FOR filter_attr_list %} <div class="filter"> {filter_attr_list.NAME}:<br /> <span class="select-box"> <select onchange="$(this).attr('name', $(this).find('option:selected').attr('value') == -1 ? '' : $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_attr_list.values.CHECKED %}form[filter][prop][{filter_attr_list.ID}][{filter_attr_list.values.ID}]{% ENDIF %}{% ENDFOR %}"> <option> - все - </option> {% FOR values %} <option value="1" rel="form[filter][prop][{filter_attr_list.ID}][{filter_attr_list.values.ID}]" {% IF filter_attr_list.values.CHECKED %}selected="selected"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_attr_list.values.VALUE} ({filter_attr_list.values.NB_GOODS_FILTERED})</option> {% ENDFOR %} </select> </span> </div> {% ENDFOR %} </div> {% ENDFOR %} <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) --> {% FOR filter_prop_list %} <div class="filter"> {filter_prop_list.NAME}:<br /> <span class="select-box"> <select onchange="$(this).attr('name', $(this).find('option:selected').attr('value') == -1 ? '' : $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_prop_list.values.CHECKED %}form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]{% ENDIF %}{% ENDFOR %}"> <option> - все - </option> {% FOR values %} <option value="1" rel="form[filter][prop][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" {% IF filter_prop_list.values.CHECKED %}selected="selected"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</option> {% ENDFOR %} </select> </span> </div> {% ENDFOR %} </div> {% ENDIF %}
и вставьте в шаблон Товары после:
<div class="goodsFilterPriceSubmit"> <input type="submit" value="Показать" /> </div> </div> {% ENDIF %} <!-- END Если есть возможность фильтрации товаров по ценам -->
в конец main.css перенесите:
.contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:justify;} .goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;} .goodsFilterPriceInfo input {width:45px;} .goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #000;width: 100%;overflow: visible;} .goodsFilterPriceRangePointers .min {float: left; margin-left: -7px;color:#000; } .goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;color:#000; } .goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;}
остается только простилизовать вывод, фильтры должны отображаться под фильтром цены
#6
Отправлено 25 Апрель 2015 - 15:50
Vaccina (25 Апрель 2015 - 04:24) писал:
На данный момент в категории подарочные книги фильтр выглядит так:
1. Почему-то фильтры не растягиваются по всей ширине экрана, а лишь наполовину. Как это исправить?
2. Помню полгода назад я ставил фильтр по цене. Он идет отдельно от основного фильтра. Как мне его удалить и сделать такую же фильтрацию по цене, как и в примере (сделать фильтрацию единым целым окном) вот так:
3. Можно ли убрать вверху страницы параметры "показывать по" и "страницы 1-2-3-4", а внизу оставить?
Спасибо.
#7
Отправлено 26 Апрель 2015 - 22:39
#8
Отправлено 27 Апрель 2015 - 16:58
ipodushkin (26 Апрель 2015 - 22:39) писал:
1. найдите в шаблоне Товары код
</td> <!-- END Блок выбора параметра по которому производится сортировка списка товаров --> <!-- Страницы --> <td class="alignRight">и переместите после строк
<div> {% IF show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR goods_pages %} {% IF goods_pages.CURRENT %} <b>{goods_pages.PAGE}</b> {% ELSE %} <a href="{GOODS_PAGINATE_URL}&page={goods_pages.PAGE}">{goods_pages.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </div>2. найдите в шаблоне Товары код
<!-- Фильтры показываются только если есть товары в категории --> {% IFNOT goods_empty %} <!-- Дополнительная навигация для работы со списком товаров --> <tr> <!-- Блок выбора параметра по которому производится сортировка списка товаров и возможность изменения лимитов выдачи --> <td>
замените на
<!-- Фильтры показываются только если есть товары в категории --> {% IFNOT goods_empty %} <!-- Дополнительная навигация для работы со списком товаров --> <tr> <!-- Блок выбора параметра по которому производится сортировка списка товаров и возможность изменения лимитов выдачи --> <td colspan="2" style=" background: #f3f3f2; box-shadow: 4px 8px 12px 0px rgba(170, 170, 170, 0.7);">
3. найдите в шаблоне Товары код
<div> {% IF show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR goods_pages %} {% IF goods_pages.CURRENT %} <b>{goods_pages.PAGE}</b> {% ELSE %} <a href="{GOODS_PAGINATE_URL}&page={goods_pages.PAGE}">{goods_pages.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </div>замените на
<div style="display:none"> {% IF show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR goods_pages %} {% IF goods_pages.CURRENT %} <b>{goods_pages.PAGE}</b> {% ELSE %} <a href="{GOODS_PAGINATE_URL}&page={goods_pages.PAGE}">{goods_pages.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </div>
#9
Отправлено 27 Апрель 2015 - 20:05
Ирина345 (27 Апрель 2015 - 16:58) писал:
Спасибо! Помогите с окончательными штрихами пожалуйста!
1. В других категориях появился box-shadow на фоне "сортировать по" и "показывать по".
Можно ли их переместить вниз страницы, слева от и без box-shadow?
2.Сделать в фильтре окошки выбора одинаковой ширины, по размеру окошка "бумага"
3. Выровнять край фильтра по краю шапки
#10
Отправлено 29 Апрель 2015 - 09:47
#11
Отправлено 29 Апрель 2015 - 15:55
ipodushkin (29 Апрель 2015 - 09:47) писал:
<td colspan="2" style=" background: #f3f3f2; box-shadow: 4px 8px 12px 0px rgba(170, 170, 170, 0.7);" >
замените на
<td colspan="2" {% IF SHOW_GOODS_FILTERS %}style=" background: #f3f3f2; box-shadow: 4px 8px 12px 0px rgba(170, 170, 170, 0.7);" {% ENDIF %}>
далее найдите
<!-- Подвал таблицы со списком товаров --> <tr> <!-- Страницы --> <td colspan="2" class="alignRight">после вставьте
<form action="" style="float: left;"> <!-- Поле выбора лимитов --> {% IF goods_show_per_page %} Показывать по: <select name="per_page" onchange="this.form.submit();"> {% FOR goods_per_page_list %} <option value="{goods_per_page_list.LIMIT}" {% IF goods_per_page_list.SELECTED %}selected="selected"{% ENDIF %}>{goods_per_page_list.LIMIT}</option> {% ENDFOR %} </select> {% ENDIF %} </div> <!-- Поле выбора сортировки --> {% IF goods_show_order_fields %} Сортировать по: <select name="goods_search_field_id" onchange="this.form.submit();"> {% FOR goods_order_fields %} <option value="{goods_order_fields.ID}" {% IF goods_order_fields.SELECTED %}selected="selected"{% ENDIF %}>{goods_order_fields.NAME}</option> {% ENDFOR %} </select> {% ENDIF %} </form>
#12
Отправлено 29 Апрель 2015 - 17:54
Ирина345 (29 Апрель 2015 - 15:55) писал:
Спасибо.
1. Пожалуйста, уберите "сортировать", "показывать по" из верхней части страницы всех страниц каталога
2. Выровняйте по горизонтальной линии "сортировать" , "показывать по" и "страницы 1-2-3-4" в конце каждой страницы каталога
3. Надеюсь это уберется в следствие двух перечисленных выше действий:
4. Остается сделать одинаковой ширины окошки
5. И выровнять
#13
Отправлено 30 Апрель 2015 - 21:24
#14
Отправлено 01 Май 2015 - 04:06
<!-- Поле выбора сортировки --> {% IF goods_show_order_fields %} Сортировать по: <select name="goods_search_field_id" onchange="this.form.submit();"> {% FOR goods_order_fields %} <option value="{goods_order_fields.ID}" {% IF goods_order_fields.SELECTED %}selected="selected"{% ENDIF %}>{goods_order_fields.NAME}</option> {% ENDFOR %} </select> {% ENDIF %}
<!-- Поле выбора лимитов --> {% IF goods_show_per_page %} Показывать по: <select name="per_page" onchange="this.form.submit();"> {% FOR goods_per_page_list %} <option value="{goods_per_page_list.LIMIT}" {% IF goods_per_page_list.SELECTED %}selected="selected"{% ENDIF %}>{goods_per_page_list.LIMIT}</option> {% ENDFOR %} </select> {% ENDIF %}
только в начале шаблона ищите.
2.В шаблоне Товары найдите:
<div> {% IF show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR goods_pages %} {% IF goods_pages.CURRENT %} <b>{goods_pages.PAGE}</b> {% ELSE %} <a href="{GOODS_PAGINATE_URL}&page={goods_pages.PAGE}">{goods_pages.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </div>
замените на:
<div style="float:right;"> {% IF show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR goods_pages %} {% IF goods_pages.CURRENT %} <b>{goods_pages.PAGE}</b> {% ELSE %} <a href="{GOODS_PAGINATE_URL}&page={goods_pages.PAGE}">{goods_pages.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </div>
4.В main.css найдите:
#content { width: 960px; margin: 0 auto; }замените на:
#content { width: 967px; margin: 0 auto; }
далее найдите:
#contentMainTb { width: 960px; margin: 0; border-collapse: collapse; border-spacing: 0; }
замените на:
#contentMainTb { width: 967px; margin: 0; border-collapse: collapse; border-spacing: 0; }
далее в шаблоне Товары найдите:
<td colspan="2" {% IF SHOW_GOODS_FILTERS %}style=" background: #f3f3f2; box-shadow: 4px 8px 12px 0px rgba(170, 170, 170, 0.7);" {% ENDIF %}>замените на:
<td colspan="2" {% IF SHOW_GOODS_FILTERS %}style=" background: #f3f3f2; box-shadow: 4px 8px 12px 0px rgba(170, 170, 170, 0.7);padding: 0; margin: 0; width: 100%;" {% ENDIF %}>
далее найдите и удалите:
<!-- Страницы --> <td class="alignRight"> </td> <!-- END Страницы -->
5.Необходимо выровнять относительно какого элемента или пропорционально чему?
#15
Отправлено 07 Май 2015 - 18:32
Цитата
Помогите!
#16
Отправлено 07 Май 2015 - 18:34
ipodushkin (07 Май 2015 - 18:32) писал:
Помогите!
В какой категории и какое условие вы ставите?
#18
Отправлено 08 Май 2015 - 21:27
#19
Отправлено 16 Май 2015 - 11:04
#20
Отправлено 21 Май 2015 - 18:49
ipodushkin (16 Май 2015 - 11:04) писал:
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных