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


Фильтры По Товарам Не Работают


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

#1 Rosalina

Rosalina

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

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

Отправлено 16 Январь 2017 - 11:30

Добрый день.

Обратила внимание, что не работают фильтры, точнее можно посмотреть в каталоге тут. http://zimaleto-perm...677661]=- все -

Проблема такая, при выборе одного из фильтров, другие становятся неактивные. Помогите.

#2 Rosalina

Rosalina

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

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

Отправлено 18 Январь 2017 - 09:01

Просмотр сообщенияRosalina (16 Январь 2017 - 11:30) писал:

Добрый день.

Обратила внимание, что не работают фильтры, точнее можно посмотреть в каталоге тут. http://zimaleto-perm...677661]=- все -

Проблема такая, при выборе одного из фильтров, другие становятся неактивные. Помогите.

Добрый день!! Мне помогут?

#3 Vaccina

Vaccina

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

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

Отправлено 19 Январь 2017 - 07:03

Здравствуйте.

В этом случае лучше вместо выпадающего списка использовать обычный с галочками.
Зайдите в раздел Сайт - Редактор шаблонов - HTML - найдите:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
				  {% FOR filter_attr_list %}
					<div class="filter">
					  {filter_attr_list.NAME}:<br />
						<select class="inputText" {% FOR values %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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][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 %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_attr_list.values.VALUE}</option>
						  {% ENDFOR %}
						</select>
					</div>
				  {% ENDFOR %}
				  <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
				  {% FOR filter_prop_list %}
					<div class="filter">
					  {filter_prop_list.NAME}:<br />
						<select class="inputText"  {% FOR values %}{% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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"{% ENDIF %} {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE}</option>
						  {% ENDFOR %}
						</select>
					</div>
				  {% ENDFOR %}

замените на:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
										{% FOR filter_attr_list %}
										  <div class="filter">
												<div class="title">{filter_attr_list.NAME}:</div>
												<ul>
												{% FOR values %}
												  <li>
														<input onchange="this.form.submit();" 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} <span class="red">({filter_attr_list.values.NB_GOODS_FILTERED})</span></label>
												  </li>
												{% ENDFOR %}
												</ul>
										  </div>
										{% ENDFOR %}
				  <!-- Фильтры по свойствам товаров -->
										{% FOR filter_prop_list %}
										  <div class="filter">
												<div class="title">{filter_prop_list.NAME}:</div>
												<ul>
												{% FOR values %}
												  <li>
														<input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{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="filterAttrVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} <span class="red">({filter_prop_list.values.NB_GOODS_FILTERED})</span></label>
												  </li>
												{% ENDFOR %}
												</ul>
										  </div>
										{% ENDFOR %}

Чтобы список был не слишком огромен можно добавить скролл, для этого в шаблоне main.css найдите:
.filters .filter {
	margin: 0 0 10px 0;
	color: #333744;
}

после него пропишите:
.filters .filter ul {
	height: 60px;
	overflow-y: scroll;
}


#4 Rosalina

Rosalina

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

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

Отправлено 19 Январь 2017 - 10:26

Просмотр сообщенияVaccina (19 Январь 2017 - 07:03) писал:

Здравствуйте.

В этом случае лучше вместо выпадающего списка использовать обычный с галочками.
Зайдите в раздел Сайт - Редактор шаблонов - HTML - найдите:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
				 {% FOR filter_attr_list %}
				 <div class="filter">
					 {filter_attr_list.NAME}:<br />
					 <select class="inputText" {% FOR values %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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][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 %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_attr_list.values.VALUE}</option>
						 {% ENDFOR %}
					 </select>
				 </div>
				 {% ENDFOR %}
				 <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
				 {% FOR filter_prop_list %}
				 <div class="filter">
					 {filter_prop_list.NAME}:<br />
					 <select class="inputText" {% FOR values %}{% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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"{% ENDIF %} {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE}</option>
						 {% ENDFOR %}
					 </select>
				 </div>
				 {% ENDFOR %}

замените на:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
									 {% FOR filter_attr_list %}
										 <div class="filter">
											 <div class="title">{filter_attr_list.NAME}:</div>
											 <ul>
											 {% FOR values %}
												 <li>
													 <input onchange="this.form.submit();" 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} <span class="red">({filter_attr_list.values.NB_GOODS_FILTERED})</span></label>
												 </li>
											 {% ENDFOR %}
											 </ul>
										 </div>
									 {% ENDFOR %}
				 <!-- Фильтры по свойствам товаров -->
									 {% FOR filter_prop_list %}
										 <div class="filter">
											 <div class="title">{filter_prop_list.NAME}:</div>
											 <ul>
											 {% FOR values %}
												 <li>
													 <input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{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="filterAttrVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} <span class="red">({filter_prop_list.values.NB_GOODS_FILTERED})</span></label>
												 </li>
											 {% ENDFOR %}
											 </ul>
										 </div>
									 {% ENDFOR %}

Чтобы список был не слишком огромен можно добавить скролл, для этого в шаблоне main.css найдите:
.filters .filter {
margin: 0 0 10px 0;
color: #333744;
}

после него пропишите:
.filters .filter ul {
height: 60px;
overflow-y: scroll;
}

Добрый день. Все сделала, но теперь ошибку выдает в каталоге коньков. Там один фильтр по размерам, посмотрите. При нажатии на кнопку весь товар исчезает.  http://zimaleto-perm...rice][max]=2050

#5 Rosalina

Rosalina

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

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

Отправлено 25 Январь 2017 - 08:37

Просмотр сообщенияRosalina (19 Январь 2017 - 10:26) писал:

Добрый день. Все сделала, но теперь ошибку выдает в каталоге коньков. Там один фильтр по размерам, посмотрите. При нажатии на кнопку весь товар исчезает.  http://zimaleto-perm...rice][max]=2050

ПОМОГИТЕ!!!

#6 лиса

лиса

    Продвинутый пользователь

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

Отправлено 23 Март 2017 - 06:03

Просмотр сообщенияVaccina (19 Январь 2017 - 07:03) писал:

Здравствуйте.

В этом случае лучше вместо выпадающего списка использовать обычный с галочками.
Зайдите в раздел Сайт - Редактор шаблонов - HTML - найдите:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
				 {% FOR filter_attr_list %}
				 <div class="filter">
					 {filter_attr_list.NAME}:<br />
					 <select class="inputText" {% FOR values %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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][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 %}{% IF filter_attr_list.values.CHECKED %}checked="checked"{% ELSEIF filter_attr_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_attr_list.values.VALUE}</option>
						 {% ENDFOR %}
					 </select>
				 </div>
				 {% ENDFOR %}
				 <!-- Фильтры по свойствам товарных модификаций (Например: Цвет, размер, модификация) -->
				 {% FOR filter_prop_list %}
				 <div class="filter">
					 {filter_prop_list.NAME}:<br />
					 <select class="inputText" {% FOR values %}{% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}{% ENDFOR %} 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"{% ENDIF %} {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ELSEIF filter_prop_list.values.NB_GOODS_FILTERED=0 %}disabled="disabled"{% ENDIF %}>{filter_prop_list.values.VALUE}</option>
						 {% ENDFOR %}
					 </select>
				 </div>
				 {% ENDFOR %}

замените на:
<!-- Фильтры по характеристикам товаров (Например: Производитель, разрешение экрана, заряд аккомулятора) -->
									 {% FOR filter_attr_list %}
										 <div class="filter">
											 <div class="title">{filter_attr_list.NAME}:</div>
											 <ul>
											 {% FOR values %}
												 <li>
													 <input onchange="this.form.submit();" 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} <span class="red">({filter_attr_list.values.NB_GOODS_FILTERED})</span></label>
												 </li>
											 {% ENDFOR %}
											 </ul>
										 </div>
									 {% ENDFOR %}
				 <!-- Фильтры по свойствам товаров -->
									 {% FOR filter_prop_list %}
										 <div class="filter">
											 <div class="title">{filter_prop_list.NAME}:</div>
											 <ul>
											 {% FOR values %}
												 <li>
													 <input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{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="filterAttrVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} <span class="red">({filter_prop_list.values.NB_GOODS_FILTERED})</span></label>
												 </li>
											 {% ENDFOR %}
											 </ul>
										 </div>
									 {% ENDFOR %}

Чтобы список был не слишком огромен можно добавить скролл, для этого в шаблоне main.css найдите:
.filters .filter {
margin: 0 0 10px 0;
color: #333744;
}

после него пропишите:
.filters .filter ul {
height: 60px;
overflow-y: scroll;
}
Очень здорово :)
А как сделать, чтобы те характеристики, количество которых после фильтрации по другой характеристике стало равно нулю, не становились неактивными, а совсем из списка исчезали?

#7 лиса

лиса

    Продвинутый пользователь

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

Отправлено 23 Март 2017 - 08:57

И сразу еще вопрос -
В категории у некоторых товаров свой набор модификаций, отличный от другого товара этой же категории. При обращении к любому пункту фильтра исчезает весь товар и страница говорит "Нет товаров для выбранных условий".
Плодить в каждом товаре дополнительные ненужные для него модификации полный бред. Как быть?

#8 Ирина345

Ирина345

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

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

Отправлено 23 Март 2017 - 10:35

Просмотр сообщениялиса (23 Март 2017 - 06:03) писал:

Очень здорово :)
А как сделать, чтобы те характеристики, количество которых после фильтрации по другой характеристике стало равно нулю, не становились неактивными, а совсем из списка исчезали?
Здравствуйте, найдите в шаблоне hTML
{% FOR filter_attr_list %}
																				  <div class="filter">
																								<div class="title">{filter_attr_list.NAME}:</div>
																								<ul>
																								{% FOR values %}
																								  <li>
																												<input onchange="this.form.submit();" 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} <span class="red">({filter_attr_list.values.NB_GOODS_FILTERED})</span></label>
																								  </li>
																								{% ENDFOR %}
																								</ul>
																				  </div>
																				{% ENDFOR %}
								  <!-- Фильтры по свойствам товаров -->
																				{% FOR filter_prop_list %}
																				  <div class="filter">
																								<div class="title">{filter_prop_list.NAME}:</div>
																								<ul>
																								{% FOR values %}
																								  <li>
																												<input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{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="filterAttrVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} <span class="red">({filter_prop_list.values.NB_GOODS_FILTERED})</span></label>
																								  </li>
																								{% ENDFOR %}
																								</ul>
																				  </div>
																				{% ENDFOR %}

Просмотр сообщениялиса (23 Март 2017 - 08:57) писал:

И сразу еще вопрос -
В категории у некоторых товаров свой набор модификаций, отличный от другого товара этой же категории. При обращении к любому пункту фильтра исчезает весь товар и страница говорит "Нет товаров для выбранных условий".
Плодить в каждом товаре дополнительные ненужные для него модификации полный бред. Как быть?
Вы можете привести конкретный пример?

замените на
{% FOR filter_attr_list %}
																				  <div class="filter">
																								<div class="title">{filter_attr_list.NAME}:</div>
																								<ul>
																								{% FOR values %}
																								 {%IFNOT filter_attr_list.values.NB_GOODS_FILTERED=0 %} <li>
																												<input onchange="this.form.submit();" 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"{% ENDIF %} />
																												<label for="filterAttrVal{filter_attr_list.values.ID}">{filter_attr_list.values.VALUE} <span class="red">({filter_attr_list.values.NB_GOODS_FILTERED})</span></label>
																								
																								  </li> {% ENDIF %}
																								{% ENDFOR %}
																								</ul>
																				  </div>
																				{% ENDFOR %}
								  <!-- Фильтры по свойствам товаров -->
																				{% FOR filter_prop_list %}
																				  <div class="filter">
																								<div class="title">{filter_prop_list.NAME}:</div>
																								<ul>
																								{% FOR values %}
																								 {%IFNOT filter_prop_list.values.NB_GOODS_FILTERED=0 %} <li>
																												<input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{filter_prop_list.values.ID}" {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ENDIF %} />
																												<label for="filterAttrVal{filter_prop_list.values.ID}">{filter_prop_list.values.VALUE} <span class="red">({filter_prop_list.values.NB_GOODS_FILTERED})</span></label>
																											   
																								  </li>{% ENDIF %}
																								{% ENDFOR %}
																								</ul>
																				  </div>
																				{% ENDFOR %}


#9 лиса

лиса

    Продвинутый пользователь

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

Отправлено 24 Март 2017 - 04:43

Просмотр сообщенияИрина345 (23 Март 2017 - 10:35) писал:

лиса (23 Март 2017 - 08:57) писал:
И сразу еще вопрос -
В категории у некоторых товаров свой набор модификаций, отличный от другого товара этой же категории. При обращении к любому пункту фильтра исчезает весь товар и страница говорит "Нет товаров для выбранных условий".
Плодить в каждом товаре дополнительные ненужные для него модификации полный бред. Как быть?
Вы можете привести конкретный пример?

Конкретный пример. ​Первые три пункта фильтра созданы на основе характеристик, а цвет это модификации. Попробуйте отфильтровать, скажем, по оранжевому цвету (или любому другому). Только прошу вас, не говорите, что для корректной работы фильтра в каждом товаре категории должен присутствовать полный набор перекрестных модификаций! Ясен пень, что добавлять в карточку чехла, который есть только в черном цвете, ещё десять расцветок, в которых представлены другие модели чехлов, мягко говоря, полнейшая чушь.. Я просто уже помню, что это было единственным возможным решением, когда на странице товара не выбиралась часть составных модификаций, и мне пришлось плодить еще целый сонм несуществующих в природе вариантов товара и ставить их остатки в вечный ноль, чтобы выбор полноценно заработал..

#10 лиса

лиса

    Продвинутый пользователь

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

Отправлено 24 Март 2017 - 07:09

Просмотр сообщенияИрина345 (23 Март 2017 - 10:35) писал:

Здравствуйте, найдите в шаблоне hTML
																   
замените на
																   

Спасибо большое!
Но история с модификациями всё портит (( По характеристикам фильтрует прекрасно!

Можно было бы, как вариант, если с модификациями задача нерешаема, продублировать все цвета из модификаций в характеристики по каждому товару и поставить вывод в фильтр характеристику по цвету вместо модификации.. НО на вкладке с характеристиками полная белиберда получится. Может возможно скрыть определенные характеристики от визуального отображения на странице товара? Ну, чтобы они там были, но были невидимы.. Что скажете?

#11 Stasya

Stasya

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

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

Отправлено 28 Март 2017 - 14:50

Просмотр сообщениялиса (24 Март 2017 - 04:43) писал:

[size=4][/font][/color]
Конкретный пример. ​Первые три пункта фильтра созданы на основе характеристик, а цвет это модификации. Попробуйте отфильтровать, скажем, по оранжевому цвету (или любому другому). Только прошу вас, не говорите, что для корректной работы фильтра в каждом товаре категории должен присутствовать полный набор перекрестных модификаций! Ясен пень, что добавлять в карточку чехла, который есть только в черном цвете, ещё десять расцветок, в которых представлены другие модели чехлов, мягко говоря, полнейшая чушь.. Я просто уже помню, что это было единственным возможным решением, когда на странице товара не выбиралась часть составных модификаций, и мне пришлось плодить еще целый сонм несуществующих в природе вариантов товара и ставить их остатки в вечный ноль, чтобы выбор полноценно заработал..
В шаблоне HTML найдите строку
<input onchange="this.form.submit();" 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"{% ENDIF %} />
и замените ее на
<input onchange="this.form.submit();" 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 %} />
Далее найдите строку
<input onchange="this.form.submit();" type="checkbox" name="form[filter][attr][{filter_prop_list.ID}][{filter_prop_list.values.ID}]" value="1" id="filterAttrVal{filter_prop_list.values.ID}" {% IF filter_prop_list.values.CHECKED %}checked="checked"{% ENDIF %} />
и замените ее на
<input onchange="this.form.submit();" 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 %} >





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

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