Еще один фильтр. Теперь на AJAX.
#41
Отправлено 07 August 2014 - 11:33 AM
Возможно добавить ползунок по характеристикам где в текстовых полях указаны цифры?
#42
Отправлено 07 August 2014 - 11:35 AM
Например, с этим:Но почему-то только ползунок с ценой появился, а остальных характеристик нет. С чем это может быть связано?
==============
- Как и предыдущий этот фильтр работает ТОЛЬКО с характеристиками товаров, заданными в виде вариантов характеристик. Т.е. с характеристиками в виде текстовой строки этот фильтр НЕ РАБОТАЕТ.
==============
#43
Отправлено 07 August 2014 - 12:02 PM
Например, с этим:Но почему-то только ползунок с ценой появился, а остальных характеристик нет. С чем это может быть связано?
==============
- Как и предыдущий этот фильтр работает ТОЛЬКО с характеристиками товаров, заданными в виде вариантов характеристик. Т.е. с характеристиками в виде текстовой строки этот фильтр НЕ РАБОТАЕТ.
==============
Возможно добавить ползунок по характеристикам где в текстовых полях указаны цифры?
Подскажите ещё пожалуйста, если использовать "возможные значения" для отображения этих характеристик в фильтре. То как можно сделать, чтобы при "детальном" просмотре товара, чтобы возможно значения были не в виде селекта, а чтобы вообще было скрыто или же возможные значения были б перечислены через запятую?
Нашёл конвертер(ваша разработка-спасибо=))) из текстовых в возможные значения.
но как сделать чтобы не было селекта?
#44
Отправлено 07 August 2014 - 01:00 PM
1. задавать товару ОДНО возможное значение. При одном значении селекта нет, насколько я помню, а просто строка.но как сделать чтобы не было селекта?
2. заменить в шаблоне селект на что-либо другое. Например, на список этих значений.
#45
Отправлено 07 August 2014 - 01:08 PM
1. задавать товару ОДНО возможное значение. При одном значении селекта нет, насколько я помню, а просто строка.но как сделать чтобы не было селекта?
2. заменить в шаблоне селект на что-либо другое. Например, на список этих значений.
1. даже если одно, всеравно селект (
2. можете написать как? Пытался найти на форуме, подобные темы поднимались, но в итоге решения не нашёл.
В product_detailed.tpl.html нашёл кусок кода, подскажите пожалуйста, на что тут нужно изменить.
<form action="index.php?productID={$product_info.productID}" method=post name="MainForm"> {counter name='select_counter' start=0 skip=1 print=false assign='select_counter_var'} {section name=i loop=$product_extra} {if $product_extra[i].option_type eq 0 } {$product_extra[i].name}: <b>{$product_extra[i].option_value}</b><br> {else} {counter name='option_show_times' start=0 skip=1 print=false} {section name=k loop=$product_extra[i].option_show_times} {$product_extra[i].name}{if $product_extra[i].option_show_times > 1 } ({counter name=option_show_times}):{else}:{/if} {counter name=select_counter} {if $product_extra[i].values_to_select_count == 1} <b>{$product_extra[i].values_to_select[0].option_value}</b><br> <input type="hidden" name="option_select_{$select_counter_var}" value='{$product_extra[i].values_to_select[0].price_surplus}:{$product_extra[i].values_to_select[0].variantID}'> {else} {if $smarty.section.k.index == 0} <select name='option_select_{$select_counter_var}' onchange='GetCurrentCurrency();' class="WCHhider"> {section name=j loop=$product_extra[i].values_to_select} <option value='{$product_extra[i].values_to_select[j].price_surplus}:{$product_extra[i].values_to_select[j].variantID}' {if $product_extra[i].values_to_select[j].variantID eq $product_extra[i].variantID}selected{/if}>{$product_extra[i].values_to_select[j].option_value}</option> {/section} </select> <br> {else} <select name='option_select_{$select_counter_var}' onchange='GetCurrentCurrency();' class="WCHhider"> <option value='0:-1'>{$smarty.const.NOT_DEFINED}</option> {section name=j loop=$product_extra[i].values_to_select} <option value='{$product_extra[i].values_to_select[j].price_surplus}:{$product_extra[i].values_to_select[j].variantID}'>{$product_extra[i].values_to_select[j].option_value}</option> {/section} </select> <br> {/if} {/if} {/section} {/if} {/section} {if $select_counter_var != 0} <input type=hidden value="{php}echo(getPriceUnit());{/php}" name="priceUnit"> {/if} </form>
Возможно добавить ползунок по характеристикам где в текстовых полях указаны цифры?
#46
Отправлено 07 August 2014 - 02:11 PM
Не рассказывайте сказки. Вы сами выложили этот код:1. даже если одно, всеравно селект (
{if $product_extra[i].values_to_select_count == 1} <b>{$product_extra[i].values_to_select[0].option_value}</b><br> <input type="hidden" name="option_select_{$select_counter_var}" value='{$product_extra[i].values_to_select[0].price_surplus}:{$product_extra[i].values_to_select[0].variantID}'> {else} ...
Да, конечно. За деньги вообще очень многое возможно .Возможно добавить ползунок по характеристикам где в текстовых полях указаны цифры?
#47
Отправлено 07 August 2014 - 02:22 PM
Не рассказывайте сказки. Вы сами выложили этот код:1. даже если одно, всеравно селект (
{if $product_extra[i].values_to_select_count == 1} <b>{$product_extra[i].values_to_select[0].option_value}</b><br> <input type="hidden" name="option_select_{$select_counter_var}" value='{$product_extra[i].values_to_select[0].price_surplus}:{$product_extra[i].values_to_select[0].variantID}'> {else} ...Да, конечно. За деньги вообще очень многое возможно .Возможно добавить ползунок по характеристикам где в текстовых полях указаны цифры?
Ок, за деньги подумаю, спасибо.
Да действительно, когда одно значение то нормально отображается(без селекта). Подскажите, что нужно поправить, чтобы если более двух возможных значений, то выводилось бы через запятую.
#48
Отправлено 07 August 2014 - 02:52 PM
Поправить нужно HTML-код в приведенном Вам куске между {else} и {/if}.Подскажите, что нужно поправить, чтобы если более двух возможных значений, то выводилось бы через запятую.
http://htmlbook.ru/
http://www.smarty.net/docsv2/ru/
#49
Отправлено 10 November 2014 - 06:30 PM
Другими словами для того чтобы он заработал нужно сначала установить фильтр предыдущей редакции автора и затем подлить файлы от фильтра с аякс?
У меня не получается его заставить работать. На дефолтном движке магазине (с дефолтными папками includes и functions) не выбирает ничего. На варианте магазина на котором был установлен развесистый фильтр без аякса - выводится выборка характеристик, однако не выводятся мин и макс цены. Соответственно фильтр не работает. Выводит постоянно что нет товаров. И при этом пропадают характеристики.
И еще вопрос. Этот фильтр задумывался для поиска по всему сайту или по конкретной категории? Или для того и другого варианта?
#50
Отправлено 10 November 2014 - 07:19 PM
Нет. Этот фильтр не требует предварительной установки каких-либо модулей.Данный фильтр он как автономное решение или это как адд-он к фильтру предыдущего варианта без аякса?
Это странно. Он ставится намного проще, чем "Развесистый фильтр".У меня не получается его заставить работать
И пока мне встретился всего один сайт, где бы он сходу не работал, да и то частично.
Причем разбирался в причине я относительно долго, но причина оказалась банальной.
Кстати, я всегда открыт для коммерческой установки модуля .
Если находимся в категории, то он ищет в текущей и дочерних категориях. Соответственно, и параметры выбора дает только те, которые есть в этих категориях. Если не в категории, то, естественно, по всем товарам. Вам никто не мешает зайти на тестовый сайт в подписи и посмотреть, как фильтр работает.И еще вопрос. Этот фильтр задумывался для поиска по всему сайту или по конкретной категории? Или для того и другого варианта?
PS. Как ни странно (ведь это есть в описании фильтра), но подавляющее большинство проблем "у меня не работает" связано с тем, что пытающиеся установить этот фильтр не понимают отличия характеристик типа "произвольная строка" от характеристик в виде набора вариантов. Фильтр работает ТОЛЬКО с вариантами и (в этой же теме? не помню) я выкладывал конвертер одних характеристик в другие.
(совершенно безотносительно вышенаписанного ответа) UPDATE:
В исходном фильтре (в шапке) список страниц в навигаторе никак не ограничен. На днях мне попался сайт, где при выборке ВСЕХ товаров навигатор состоял из нескольких сотен страниц между "<<пред" и "след>>". Получалось не особо красиво, т.к. полтора экрана занимал навигатор .
Соответственно, апдейт. Теперь навигатор всегда содержит двадцать одну страницу. Десять предыдущих, текущую и десять следующих. Для начальных и конечных страниц соотношение меняется (т.е. для первой - двадцать следующих, для предпоследней - 19 предыдущих и одна следующая), но общее количество всегда 21. Это количество можно изменить в коде (одна переменная).
Прикрепленные файлы
#51
Отправлено 21 November 2014 - 11:21 PM
Есть вопрос к разработчику - насколько реально и накладно будет допилить данный фильтр для того чтобы он работал на странице простого поиска на сайте? Конкретизирую вопрос- сейчас данный фильтр работает на странице простого поиска, но не с тем массивом который отфильтровался условиями поиска а со всем товарами магазина. По коду это логично и правильно работает. Необходима возможность получать параметры и фильтровать по уже найденным товарам из условия поискового запроса.
#52
Отправлено 22 November 2014 - 03:47 PM
Посмотрел код - вполне реально. Надо в запросы, делающие выборку по товарам и характеристикам добавить тот же фильтр, что в простом поиске.насколько реально и накладно будет допилить данный фильтр для того чтобы он работал на странице простого поиска на сайте?
#53
Отправлено 17 January 2015 - 11:48 AM
Например, мне нужно с баннера Новинки на Главной переслать визитора в категорию "Устройства для чтения электронных книг" и показать ему только PocketBook?
#54
Отправлено 18 January 2015 - 04:12 PM
Можно, но не в рамках этой темы и этого фильтра. Т.к. фильтр "аяксовый", то довольно очевидно (как мне кажется), что "сформировать урл", т.е. перейти по какой-то конкретной ссылке и получить отфильтрованный результат не получится.Подскажите, можно ли сформировать урл, после перехода по которому в категории с фильтром отображались какие то определенные "чекнутые" товары?
Включите штатный фильтр ShopCMS и посмотрите, как формируется ссылка на результат работы фильтра. Вот это и есть то, что Вам надо. Там что-то типа
site.ru/index.php?search=1¶m_xx1=yy1¶m_xx2=yy2¶m_xx3=yy3Вот эти xxN это номера характеристик, а yyN это номера вариантов характеристик.
Штатный фильтр довольно убогий, т.к. не позволяет задавать НЕСКОЛЬКО вариантов характеристики (поищите на форуме "развесистый фильтр", он решает эту проблему), но понимание самой идеи формирования ссылки по любому получите. А если Вам фильтрации более, чем по одному варианту характеристики не надо, то и штатных возможностей ShopCMS хватит за глаза для "сформировать урл".
#56
Отправлено 16 February 2015 - 08:36 PM
Появился вопрос. В файле filter.php присутствуют закомментированные строки, связанные с модулем ЧПУ от Трикивеба, а именно:
#$fcat = catCalculatePathToCategory($categoryID); #foreach ($fcat as $key => $val) $fcat[$key]['url'] = '/'.$val['alias'].'/'; #$smarty->assign( "product_category_path", $fcat);а также строка с комментарием:
$row["url"] = $row["alias"].".html"; // строка, нужная только при ЧПУ-модуле от Трикивеба (и выросших из него аналогов).
Являюсь счастливым обладателем модуля ЧПУ от Трикивеба. При использовании дефолтного filter.php в выдаче отфильтрованных товаров правильные ссылки на товары вида: сайт.ру/тапки/модные_тапки_123.html заменяются на ссылки вида сайт.ру/category_35/модные_тапки_123.html
При раскомментировании вышеуказанного кода ничего не меняется.
#57
Отправлено 16 February 2015 - 09:00 PM
Этот код создает иерархическую строку категорий с ЧПУ-ссылками вместо штатных ссылок. В самом верху шаблона категории.В файле filter.php присутствуют закомментированные строки, связанные с модулем ЧПУ от Трикивеба, а именно:
Здесь элементу $row[''url'] задается ЧПУ-ссылка на продукт (товар).а также строка с комментарием:
Вариантов ЧПУ от Трикивеба разной степени переделки весьма не один. Они имеют как разные индексы элементов Smarty-массивов (url, uri), так и разные названия полей в SQL-таблицах, где хранится ЧПУ-ссылка (uri, url,alias). Это из того, что я встречал и помню. Попавшийся когда-то мне у клиента при установке фильтра вариант имел комбинацию url+alias, исходя из этого и написана правка. И у этого клиента в ссылке на товар название категории не используется (отсутствует), т.е. этот момент вообще никак не отслежен.При раскомментировании вышеуказанного кода ничего не меняется.
В общем случае все равно надо править "под себя".
Но, ИМХО, оно весьма не сложно.
Надо посмотреть в используемом фильтром шаблоне (category.tpl.html и инклюдящийся в него product_brief.tpl.html, насколько я помню) какие смарти-элементы выводятся в тех местах, где "получилось неправильно". Ну и создать правильные .
#58
Отправлено 17 February 2015 - 09:45 AM
Похоже что речь идет именно о том модуле, который присутствует у нас на форуме. В нем есть и ЧПУ для категории и ЧПУ для товара. Псевдоним для категории хранится в таблице pwqk_categories в поле uri, а для товара в таблице pwqk_products также в поле uri. А общая ссылка на товар выглядит как сайт.ру/чпу_категории/чпу_товара.htmlВариантов ЧПУ от Трикивеба разной степени переделки весьма не один. Они имеют как разные индексы элементов Smarty-массивов (url, uri), так и разные названия полей в SQL-таблицах, где хранится ЧПУ-ссылка (uri, url,alias).
Упоминаний переменной alias не нашел...
Может подскажите как сделать вывод отфильтрованных товаров вообще без ЧПУ, как в голом shopcms, так сказать универсальный вариант? Или это только отключать ЧПУ в самих настройках надо?
#59
Отправлено 17 February 2015 - 12:17 PM
Насвкидку, умозрительно - положить рядом с category.tpl.html и product_brief.tpl.html аналогичные файлы от шаблона без ЧПУ. Переименовав их как-нибудь типа category_etl.tpl.html и product_brief_etl.tpl.html. Ну и исправить соответствующие ссылки в filter.php на category_etl.tpl.html, а в category_etl.tpl.html на product_brief_etl.tpl.html.Может подскажите как сделать вывод отфильтрованных товаров вообще без ЧПУ, как в голом shopcms, так сказать универсальный вариант? Или это только отключать ЧПУ в самих настройках надо?
Другими словами, сделать так, чтобы для фильтра отрабатывался исходный вариант шаблона категории, который без ЧПУ.
Правда, совершенно не понятно, зачем такие извращения, если можно сделать нормально.