Перейти к содержимому


Добавить


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 11

#1 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 12:00

Как добавить это к моему сайту? Нужно добавить только фильтр по цене все остальное оставить как есть у меня.

Для шаблона "Мокко"
найти в редакторе шаблонов в файле "HTML" код:
<!-- Если в тарифном плане подключен модуль фильтров по товарам -->
{% IF TARIFF_FEATURE_GOODS_FILTERS %}
<form action="" method="get">
<!-- Если есть возможность фильтрации товаров по ценам -->
{% IF SHOW_GOODS_PRICE_FILTERS %}
		 <br /><h4 class="contentTbodyCatalogHeader noBorder">Цена</h4>
		 <div class="contentTbodySearchPriceFilterBlock cornerAll">
		 <style>
				 .priceFilterInput {width:60px; border:1px solid #E2E2E2;padding:2px 3px;margin-right:0.3em;}
		 </style>
		 <!-- Фильтры по цене -->
		 <div class="fnt11i contentTbodySearchFilterBlockValues">
				 от <input class="priceFilterInput" type="text" name="form[filter][price][min]" value="{% IF GOODS_FILTER_MIN_PRICE %}{GOODS_FILTER_MIN_PRICE}{% ELSE %}{GOODS_FILTER_MIN_AVAILABLE_PRICE}{% ENDIF %}" />
				 до <input class="priceFilterInput" type="text" name="form[filter][price][max]" value="{% IF GOODS_FILTER_MAX_PRICE %}{GOODS_FILTER_MAX_PRICE}{% ELSE %}{GOODS_FILTER_MAX_AVAILABLE_PRICE}{% ENDIF %}" />
		 </div>
		 <div style="padding: 0.5em 0 0.4em;">
				 <button class="whtblue fnt12n" type="submit">Показать</button>
		 </div>
		 </div>
{% ENDIF %}
<!-- END Если есть возможность фильтрации товаров по ценам -->
<!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам -->
{% IF SHOW_GOODS_FILTERS %}
		 <br /><h4 class="contentTbodyCatalogHeader noBorder">Фильтры по товарам</h4>
		 <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь -->
		 <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 %}
				 <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 %}
		 </div>
{% ENDIF %}
</form>
{% ENDIF %}
<!-- END Если в тарифном плане подключен модуль фильтров по товарам -->

и заменить его на:
{% IF TARIFF_FEATURE_GOODS_FILTERS %}
<form action="" method="get">
<style>
		 .contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:center;}
		 .goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;}
		 .goodsFilterPriceInfo input {width:45px;}
		 .goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #CCC;width: 100%;overflow: visible;}
		 .goodsFilterPriceRangePointers .min {float: left; margin-left: -7px; }
		 .goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;}
		 .goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;}
</style>
<!-- Если есть возможность фильтрации товаров по ценам -->
{% IF SHOW_GOODS_PRICE_FILTERS %}
		 <br /><h4 class="contentTbodyCatalogHeader noBorder">Цена</h4>
		 <div class="contentTbodySearchPriceFilterBlock cornerAll">
	
		 <div class="goodsFilterPriceRangePointers"><div class="min">{GOODS_FILTER_MIN_AVAILABLE_PRICE}</div><div class="max">{GOODS_FILTER_MAX_AVAILABLE_PRICE}</div></div>
		 <div id="goods-filter-price-slider"></div>
	
		 <div class="goodsFilterPriceInfo">
				 от <input id="goods-filter-min-price" type="text" name="form[filter][price][min]" value="{% IF GOODS_FILTER_MIN_PRICE %}{GOODS_FILTER_MIN_PRICE}{% ELSE %}{GOODS_FILTER_MIN_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
				 до <input id="goods-filter-max-price" type="text" name="form[filter][price][max]" value="{% IF GOODS_FILTER_MAX_PRICE %}{GOODS_FILTER_MAX_PRICE}{% ELSE %}{GOODS_FILTER_MAX_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
		 </div>
		 <script type="text/javascript">
				 $(function() {
				 var
						 // Минимальное значение цены для фильтра
						 priceFilterMinAvailable = parseInt($('.goodsFilterPriceRangePointers .min').text())
						 // Максимальное значение цены для фильтра
						 ,priceFilterMaxAvailable = parseInt($('.goodsFilterPriceRangePointers .max').text())
						 // Максимальное значение цены для фильтра
						 ,priceSliderBlock = $('#goods-filter-price-slider')
						 // Поле ввода текущего значения цены "От"
						 ,priceInputMin = $( "#goods-filter-min-price" )
						 // Поле ввода текущего значения цены "До"
						 ,priceInputMax = $( "#goods-filter-max-price" )
						 // Блок с кнопкой, которую есть смысл нажимать только тогда, когда изменялся диапазон цен.
						 ,priceSubmitButtonBlock = $( ".goodsFilterPriceSubmit" )
				 ;
			
				 // Слайдер, который используется для удобства выбора цены
				 priceSliderBlock.slider({
						 range: true,
						 min: priceFilterMinAvailable,
						 max: priceFilterMaxAvailable,
						 values: [
						 parseInt($('#goods-filter-min-price').val())
						 ,parseInt($('#goods-filter-max-price').val())
						 ],
						 slide: function( event, ui ) {
						 priceInputMin.val( ui.values[ 0 ] );
						 priceInputMax.val( ui.values[ 1 ] );
						 priceSubmitButtonBlock.show();
						 }
				 });
			
				 // При изменении минимального значения цены
				 priceInputMin.keyup(function(){
						 var newVal = parseInt($(this).val());
						 if(newVal < priceFilterMinAvailable) {
						 newVal = priceFilterMinAvailable;
						 }
						 priceSliderBlock.slider("values", 0, newVal);
						 priceSubmitButtonBlock.show();
				 });
			
				 // При изменении максимального значения цены
				 priceInputMax.keyup(function(){
						 var newVal = parseInt($(this).val());
						 if(newVal > priceFilterMaxAvailable) {
						 newVal = priceFilterMaxAvailable;
						 }
						 priceSliderBlock.slider("values", 1, newVal);
						 priceSubmitButtonBlock.show();
				 });
			
				 });
		 </script>
	
		 <div class="goodsFilterPriceSubmit">
				 <input type="submit" value="Показать" />
		 </div>
		 </div>
{% ENDIF %}
<!-- END Если есть возможность фильтрации товаров по ценам -->
<!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам -->
{% IF SHOW_GOODS_FILTERS %}
		 <br /><h4 class="contentTbodyCatalogHeader noBorder">Фильтры по товарам</h4>
		 <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь -->
		 <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 %}
				 <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 %}
		 </div>
{% ENDIF %}
</form>
{% ENDIF %}
<!-- END Если в тарифном плане подключен модуль фильтров по товарам -->


#2 Koderhan

Koderhan

    Активный участник

  • Модератоpы
  • 6 227 сообщений

Отправлено 12 Ноябрь 2013 - 12:14

В файле "Товары".
После кода:
										 <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
										 {% FOR filter_prop_list %}
										 {filter_prop_list.NAME}
										 <div class="contentTbodySearchFilterBlockValues" style="padding: 1em 0 2em 1em;">
										 {% FOR values %}
										 <div style="float:left;">
												 <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 style="margin-right: 10px;" for="filterPropVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</label><br />
										 </div>								
										 {% ENDFOR %}
										 </div>
										 {% ENDFOR %}
								 </div>
								 </form>
												 </div>
												 {% ENDIF %}
										 {% ENDIF %}

Добавить код:

{% IF TARIFF_FEATURE_GOODS_FILTERS %}
<form action="" method="get">
<style>
				 .contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:center;}
				 .goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;}
				 .goodsFilterPriceInfo input {width:45px;}
				 .goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #CCC;width: 100%;overflow: visible;}
				 .goodsFilterPriceRangePointers .min {float: left; margin-left: -7px; }
				 .goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;}
				 .goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;}
</style>
<!-- Если есть возможность фильтрации товаров по ценам -->
{% IF SHOW_GOODS_PRICE_FILTERS %}
				 <br /><h4 class="contentTbodyCatalogHeader noBorder">Цена</h4>
				 <div class="contentTbodySearchPriceFilterBlock cornerAll">
	   
				 <div class="goodsFilterPriceRangePointers"><div class="min">{GOODS_FILTER_MIN_AVAILABLE_PRICE}</div><div class="max">{GOODS_FILTER_MAX_AVAILABLE_PRICE}</div></div>
				 <div id="goods-filter-price-slider"></div>
	   
				 <div class="goodsFilterPriceInfo">
								 от <input id="goods-filter-min-price" type="text" name="form[filter][price][min]" value="{% IF GOODS_FILTER_MIN_PRICE %}{GOODS_FILTER_MIN_PRICE}{% ELSE %}{GOODS_FILTER_MIN_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
								 до <input id="goods-filter-max-price" type="text" name="form[filter][price][max]" value="{% IF GOODS_FILTER_MAX_PRICE %}{GOODS_FILTER_MAX_PRICE}{% ELSE %}{GOODS_FILTER_MAX_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
				 </div>
				 <script type="text/javascript">
								 $(function() {
								 var
												 // Минимальное значение цены для фильтра
												 priceFilterMinAvailable = parseInt($('.goodsFilterPriceRangePointers .min').text())
												 // Максимальное значение цены для фильтра
												 ,priceFilterMaxAvailable = parseInt($('.goodsFilterPriceRangePointers .max').text())
												 // Максимальное значение цены для фильтра
												 ,priceSliderBlock = $('#goods-filter-price-slider')
												 // Поле ввода текущего значения цены "От"
												 ,priceInputMin = $( "#goods-filter-min-price" )
												 // Поле ввода текущего значения цены "До"
												 ,priceInputMax = $( "#goods-filter-max-price" )
												 // Блок с кнопкой, которую есть смысл нажимать только тогда, когда изменялся диапазон цен.
												 ,priceSubmitButtonBlock = $( ".goodsFilterPriceSubmit" )
								 ;
					   
								 // Слайдер, который используется для удобства выбора цены
								 priceSliderBlock.slider({
												 range: true,
												 min: priceFilterMinAvailable,
												 max: priceFilterMaxAvailable,
												 values: [
												 parseInt($('#goods-filter-min-price').val())
												 ,parseInt($('#goods-filter-max-price').val())
												 ],
												 slide: function( event, ui ) {
												 priceInputMin.val( ui.values[ 0 ] );
												 priceInputMax.val( ui.values[ 1 ] );
												 priceSubmitButtonBlock.show();
												 }
								 });
					   
								 // При изменении минимального значения цены
								 priceInputMin.keyup(function(){
												 var newVal = parseInt($(this).val());
												 if(newVal < priceFilterMinAvailable) {
												 newVal = priceFilterMinAvailable;
												 }
												 priceSliderBlock.slider("values", 0, newVal);
												 priceSubmitButtonBlock.show();
								 });
					   
								 // При изменении максимального значения цены
								 priceInputMax.keyup(function(){
												 var newVal = parseInt($(this).val());
												 if(newVal > priceFilterMaxAvailable) {
												 newVal = priceFilterMaxAvailable;
												 }
												 priceSliderBlock.slider("values", 1, newVal);
												 priceSubmitButtonBlock.show();
								 });
					   
								 });
				 </script>
	   
				 <div class="goodsFilterPriceSubmit">
								 <input type="submit" value="Показать" />
				 </div>
				 </div>
{% ENDIF %}
<!-- END Если есть возможность фильтрации товаров по ценам -->
<!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам -->
{% IF SHOW_GOODS_FILTERS %}
				 <br /><h4 class="contentTbodyCatalogHeader noBorder">Фильтры по товарам</h4>
				 <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь -->
				 <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 %}
								 <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 %}
				 </div>
{% ENDIF %}
</form>
{% ENDIF %}
<!-- END Если в тарифном плане подключен модуль фильтров по товарам -->


#3 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 12:23

Мне нужна только цена.

#4 Koderhan

Koderhan

    Активный участник

  • Модератоpы
  • 6 227 сообщений

Отправлено 12 Ноябрь 2013 - 13:11

Тогда вы можете использовать такой код:
{% IF TARIFF_FEATURE_GOODS_FILTERS %}
<form action="" method="get">
	<style>
		.contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:center;}
		.goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;}
		.goodsFilterPriceInfo input {width:45px;}
		.goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #CCC;width: 100%;overflow: visible;}
		.goodsFilterPriceRangePointers .min {float: left; margin-left: -7px; }
		.goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;}
		.goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;}
	</style>
	<!-- Если есть возможность фильтрации товаров по ценам -->
	{% IF SHOW_GOODS_PRICE_FILTERS %}
	<br /><h4 class="contentTbodyCatalogHeader noBorder">Цена</h4>
	<div class="contentTbodySearchPriceFilterBlock cornerAll">

		<div class="goodsFilterPriceRangePointers"><div class="min">{GOODS_FILTER_MIN_AVAILABLE_PRICE}</div><div class="max">{GOODS_FILTER_MAX_AVAILABLE_PRICE}</div></div>
		<div id="goods-filter-price-slider"></div>

		<div class="goodsFilterPriceInfo">
			от <input id="goods-filter-min-price" type="text" name="form[filter][price][min]" value="{% IF GOODS_FILTER_MIN_PRICE %}{GOODS_FILTER_MIN_PRICE}{% ELSE %}{GOODS_FILTER_MIN_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
			до <input id="goods-filter-max-price" type="text" name="form[filter][price][max]" value="{% IF GOODS_FILTER_MAX_PRICE %}{GOODS_FILTER_MAX_PRICE}{% ELSE %}{GOODS_FILTER_MAX_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
		</div>
		<script type="text/javascript">
			$(function() {
				var
						// Минимальное значение цены для фильтра
						priceFilterMinAvailable = parseInt($('.goodsFilterPriceRangePointers .min').text())
						// Максимальное значение цены для фильтра
						, priceFilterMaxAvailable = parseInt($('.goodsFilterPriceRangePointers .max').text())
						// Максимальное значение цены для фильтра
						, priceSliderBlock = $('#goods-filter-price-slider')
						// Поле ввода текущего значения цены "От"
						, priceInputMin = $("#goods-filter-min-price")
						// Поле ввода текущего значения цены "До"
						, priceInputMax = $("#goods-filter-max-price")
						// Блок с кнопкой, которую есть смысл нажимать только тогда, когда изменялся диапазон цен.
						, priceSubmitButtonBlock = $(".goodsFilterPriceSubmit")
						;

				// Слайдер, который используется для удобства выбора цены
				priceSliderBlock.slider({
					range: true,
					min: priceFilterMinAvailable,
					max: priceFilterMaxAvailable,
					values: [
						parseInt($('#goods-filter-min-price').val())
								, parseInt($('#goods-filter-max-price').val())
					],
					slide: function(event, ui) {
						priceInputMin.val(ui.values[ 0 ]);
						priceInputMax.val(ui.values[ 1 ]);
						priceSubmitButtonBlock.show();
					}
				});

				// При изменении минимального значения цены
				priceInputMin.keyup(function() {
					var newVal = parseInt($(this).val());
					if (newVal < priceFilterMinAvailable) {
						newVal = priceFilterMinAvailable;
					}
					priceSliderBlock.slider("values", 0, newVal);
					priceSubmitButtonBlock.show();
				});

				// При изменении максимального значения цены
				priceInputMax.keyup(function() {
					var newVal = parseInt($(this).val());
					if (newVal > priceFilterMaxAvailable) {
						newVal = priceFilterMaxAvailable;
					}
					priceSliderBlock.slider("values", 1, newVal);
					priceSubmitButtonBlock.show();
				});

			});
		</script>

		<div class="goodsFilterPriceSubmit">
			<input type="submit" value="Показать" />
		</div>
	</div>
	{% ENDIF %}
	<!-- END Если есть возможность фильтрации товаров по ценам -->

</form>
{% ENDIF %}
<!-- END Если в тарифном плане подключен модуль фильтров по товарам -->


#5 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 14:07

вы не поняли) мне нужно оставить мой фильтр, и прикрутить к нему фильтр по цене.
<!-- Если в тарифном плане подключен модуль фильтров по товарам -->
						{% IF TARIFF_FEATURE_GOODS_FILTERS %}
					   
						  <!-- Фильтры по товарам. Появляются только на странице категории и поиска по товарам -->
						  {% IFNOT CATEGORY_NAME=Бренды && SHOW_GOODS_FILTERS %}
								<div class="filters">  
								  <!-- Форма поиска отправляет всегда на ту же страницу, на которой находится пользователь -->
								  <form action="" method="get">
										<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
										{% FOR filter_attr_list %}
										  <div class="filter">
												{filter_attr_list.NAME}:
												<select onchange="$(this).attr('name', $(this).find('option:selected').attr('rel'));this.form.submit();" name="{% FOR values %}{% IF filter_attr_list.values.CHECKED %}form[filter][attr][{filter_attr_list.ID}][{filter_attr_list.values.ID}]{% ENDIF %}{% ENDFOR %}">
												  <option> - все - </option>
												  {% FOR values %}
														<option value="1" rel="form[filter][attr][{filter_attr_list.ID}][{filter_attr_list.values.ID}]" {% IF filter_attr_list.values.CHECKED %}selected="selected"{% ENDIF %}>{filter_attr_list.values.VALUE}</option>
												  {% ENDFOR %}
												</select>
										  </div>
										{% ENDFOR %}
									   
										<!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
										{% FOR filter_prop_list %}
										  <div class="filter">
												{filter_prop_list.NAME}:
												<select onchange="$(this).attr('name', $(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"{% ENDIF %}>{filter_prop_list.values.VALUE}</option>
												  {% ENDFOR %}
												</select>
										  </div>
										{% ENDFOR %}
										<br>
<button type="button" name="reset" onclick="javascript:document.location = document.location.pathname;">Сбросить</button>
										<div class="clear"></div>
								  </form>
								</div>
						  {% ENDIF %}
												 {% IF CATEGORY_NAME=Бренды && SHOW_GOODS_FILTERS%}
												 <div class="filters">
														 <form action="" method="get">
								 <div>
										 <!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд батареи) -->
										 {% FOR filter_attr_list %}
										 {filter_attr_list.NAME}
										 <br>
										 <div class="contentTbodySearchFilterBlockValues" style="padding: 1em 0 2em 1em;">
										 {% FOR values %}
										 <div style="float:left;">
												 <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 style="margin-right: 10px;" for="filterAttrVal{filter_attr_list.values.ID}">{filter_attr_list.values.VALUE} ({filter_attr_list.values.NB_GOODS_FILTERED})</label><br />
										 </div> {% ENDFOR %}
										 </div>
										 {% ENDFOR %}
	   
										 <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
										 {% FOR filter_prop_list %}
										 {filter_prop_list.NAME}
										 <div class="contentTbodySearchFilterBlockValues" style="padding: 1em 0 2em 1em;">
										 {% FOR values %}
										 <div style="float:left;">
												 <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 style="margin-right: 10px;" for="filterPropVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} ({filter_prop_list.values.NB_GOODS_FILTERED})</label><br />
										 </div>								
										 {% ENDFOR %}
										 </div>
										 {% ENDFOR %}
								 </div>
								 </form>
												 </div>
												 {% ENDIF %}
										 {% ENDIF %}
									   
										 <!-- END Если в тарифном плане подключен модуль фильтров по товарам -->
вот мой код фильтра. Мне нужно к нему прикрутить фильтр по цене.

#6 Koderhan

Koderhan

    Активный участник

  • Модератоpы
  • 6 227 сообщений

Отправлено 12 Ноябрь 2013 - 15:53

В файле "Товары".
После кода:
												 </div>
												 {% ENDIF %}
										 {% ENDIF %}
									   
										 <!-- END Если в тарифном плане подключен модуль фильтров по товарам -->
										
Добавить:
{% IF TARIFF_FEATURE_GOODS_FILTERS %}
<form action="" method="get">
		<style>
				.contentTbodySearchPriceFilterBlock {padding: 0 1em 0 1.4em;text-align:center;}
				.goodsFilterPriceInfo {padding:1em 0 0.5em;margin-left:-5px;}
				.goodsFilterPriceInfo input {width:45px;}
				.goodsFilterPriceRangePointers {height: 16px;font-size: 0.9em;color: #CCC;width: 100%;overflow: visible;}
				.goodsFilterPriceRangePointers .min {float: left; margin-left: -7px; }
				.goodsFilterPriceRangePointers .max {float: right; margin-right: -8px;}
				.goodsFilterPriceSubmit {padding: 0.5em 0 0.4em;display:none;}
		</style>
		<!-- Если есть возможность фильтрации товаров по ценам -->
		{% IF SHOW_GOODS_PRICE_FILTERS %}
		<br /><h4 class="contentTbodyCatalogHeader noBorder">Цена</h4>
		<div class="contentTbodySearchPriceFilterBlock cornerAll">
				<div class="goodsFilterPriceRangePointers"><div class="min">{GOODS_FILTER_MIN_AVAILABLE_PRICE}</div><div class="max">{GOODS_FILTER_MAX_AVAILABLE_PRICE}</div></div>
				<div id="goods-filter-price-slider"></div>
				<div class="goodsFilterPriceInfo">
						от <input id="goods-filter-min-price" type="text" name="form[filter][price][min]" value="{% IF GOODS_FILTER_MIN_PRICE %}{GOODS_FILTER_MIN_PRICE}{% ELSE %}{GOODS_FILTER_MIN_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
						до <input id="goods-filter-max-price" type="text" name="form[filter][price][max]" value="{% IF GOODS_FILTER_MAX_PRICE %}{GOODS_FILTER_MAX_PRICE}{% ELSE %}{GOODS_FILTER_MAX_AVAILABLE_PRICE}{% ENDIF %}" autocomplete="off" />
				</div>
				<script type="text/javascript">
						$(function() {
								var
												// Минимальное значение цены для фильтра
												priceFilterMinAvailable = parseInt($('.goodsFilterPriceRangePointers .min').text())
												// Максимальное значение цены для фильтра
												, priceFilterMaxAvailable = parseInt($('.goodsFilterPriceRangePointers .max').text())
												// Максимальное значение цены для фильтра
												, priceSliderBlock = $('#goods-filter-price-slider')
												// Поле ввода текущего значения цены "От"
												, priceInputMin = $("#goods-filter-min-price")
												// Поле ввода текущего значения цены "До"
												, priceInputMax = $("#goods-filter-max-price")
												// Блок с кнопкой, которую есть смысл нажимать только тогда, когда изменялся диапазон цен.
												, priceSubmitButtonBlock = $(".goodsFilterPriceSubmit")
												;
								// Слайдер, который используется для удобства выбора цены
								priceSliderBlock.slider({
										range: true,
										min: priceFilterMinAvailable,
										max: priceFilterMaxAvailable,
										values: [
												parseInt($('#goods-filter-min-price').val())
																, parseInt($('#goods-filter-max-price').val())
										],
										slide: function(event, ui) {
												priceInputMin.val(ui.values[ 0 ]);
												priceInputMax.val(ui.values[ 1 ]);
												priceSubmitButtonBlock.show();
										}
								});
								// При изменении минимального значения цены
								priceInputMin.keyup(function() {
										var newVal = parseInt($(this).val());
										if (newVal < priceFilterMinAvailable) {
												newVal = priceFilterMinAvailable;
										}
										priceSliderBlock.slider("values", 0, newVal);
										priceSubmitButtonBlock.show();
								});
								// При изменении максимального значения цены
								priceInputMax.keyup(function() {
										var newVal = parseInt($(this).val());
										if (newVal > priceFilterMaxAvailable) {
												newVal = priceFilterMaxAvailable;
										}
										priceSliderBlock.slider("values", 1, newVal);
										priceSubmitButtonBlock.show();
								});
						});
				</script>
				<div class="goodsFilterPriceSubmit">
						<input type="submit" value="Показать" />
				</div>
		</div>
		{% ENDIF %}
		<!-- END Если есть возможность фильтрации товаров по ценам -->
</form>
{% ENDIF %}
<!-- END Если в тарифном плане подключен модуль фильтров по товарам -->


#7 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 16:01

Спасибо:)

#8 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 16:16

А как убрать фильтр по цене с этой странице?http://al-ver.ru/catalog/Brendy

#9 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 12 Ноябрь 2013 - 21:33

Koderhan  не подскажите?

#10 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 13 Ноябрь 2013 - 01:37

Найдите в шаблоне "Товары" строку

<!-- Если есть возможность фильтрации товаров по ценам -->

и замените её на

<!-- Если есть возможность фильтрации товаров по ценам -->
{%IFNOT CATEGORY_NAME=Бренды%}

далее найдите строку

<!-- END Если есть возможность фильтрации товаров по ценам -->

и замените её на

{%ENDIF%}
<!-- END Если есть возможность фильтрации товаров по ценам -->


#11 borisovd

borisovd

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 370 сообщений

Отправлено 13 Ноябрь 2013 - 01:42

Спасибо! получилось!) Не поможете вот с этой темой еще? http://forum.storela...сь/page__st__40

#12 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 13 Ноябрь 2013 - 03:16

На данный вопрос вам ответили в указанной вами теме форума.




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных