Jump to content

Блок Многоуровневой навигации (blocklayered)


Recommended Posts

Коллеги!

 

Подскажите, кто пользовался блоком многоуровневой навигации?

 

При использовании возникло два вопроса:

1. В настройках Свойства (Features) указываю, что свойство "Индексируемый", что согласно подсказки означает "Использовать этот атрибут при генерации URL в блоке многоуровневой навигации". Однако при настройке самого блока, это свойство для выбора недоступно (его там попросту нет). Атрибуты товара есть, а свойств нет. Где что нужно допилить?

2. Как управлять визуализацией в этом самом блоке многоуровневой навигации? Если свойство товара я указываю целое число, то хотелось бы в фильтре видеть ползунок, а не список всех значений с чекбоксом.

 

Каких то внятных топиков по этому поводу не нашел :mellow:

 

Спасибо!

 

P.S. Использую PrestaShop 1.5.3.1, blocklayered 1.8.9, мультимагазин отключен.

Link to comment
Share on other sites

1. В настройках Свойства (Features) указываю, что свойство "Индексируемый", что согласно подсказки означает "Использовать этот атрибут при генерации URL в блоке многоуровневой навигации". Однако при настройке самого блока, это свойство для выбора недоступно (его там попросту нет). Атрибуты товара есть, а свойств нет. Где что нужно допилить?

 

Заметил, что свойство попадает в фильтрацию, если оно обладает предопределенными значениями. Если же значение свойство указывать в поле "другое значение", то оно в фильтрацию не попадает. Кто эту проблему решал?

Link to comment
Share on other sites

Судя по тому, как пишете, Вы грамотный и внимательный к мелочам человек. И что, настройку шаблона фильтрации не заметили? Там Вы можете выбрать и сохранить все атрибуты, свойства, а также производителей, поставщиков, цены — всё, что хотите использовать в фильтрации.

 

Кстати, для посетителей лучше бы называть этот блок каким-нибудь немутным именем. Например, «фильтры поиска по каталогу». Слишком технично? Зато сразу понятно, для чего он нужен. «Блок многоуровневой навигации» — это, конечно, романтично, но непонятно.

Link to comment
Share on other sites

И что, настройку шаблона фильтрации не заметили?

Безусловно заметил. Без настройки этот блок вообще не работает. Вопрос то в другом.

 

Есть свойство "Мощность", которое может содержать число. Допустим целое число. Если для Свойства (Features) добавить список предопределенных значений, то все прекрасно работает. Но угадать все допустимые значения попросту невозможно, поскольку для каждого продукта это значение уникально и повторяется редко. Следовательно в блоке многоуровневой навигации это свойство следовало бы отображать аналогично цене. Вопрос в том, как это сделать?

 

А по поводу наименования, то "Блок фасетной фильтрации" максимально подходит для этого, на мой взгляд :rolleyes:

Link to comment
Share on other sites

Боюсь, от такого названия будут и вовсе шарахаться. Всё непонятное — страшно. Это ж, как бы самому под фасетную фильтрацию не угодить!..

 

Понял, в чём проблема. Но ПрестаШоп запрограммирован работать с добавленными значениями. Если они не подлежат ранжированию и фиксации, как системы размеров обуви или одежды, например, то может быть для них сделать то, что работает с весом и ценами?.. Но это надо программистов озадачивать.

Link to comment
Share on other sites

В файле blocklayered.php убрал все проверки на кастомность свойства. Просто удалил проверки

AND (fv.custom IS NULL OR fv.custom = 0)

Можете закидывать меня тапками за такой подход, но судя по структуре базы данных, кастомное значение и предустановленное хранятся абсолютно одинаково, а следовательно можно предположить, что флаг "custom" влияет только на способ администрирования свойства.

Теперь в блоке многоуровневой навигации стали отображаться в т.ч. и не предустановленные значения и что более важно, фильтрация по ним работает :)

 

Однако вопрос с способом отображения фильтра остается открыт. Как сделать фильтрацию в виде слайдера (как по цене)?

Link to comment
Share on other sites

С SQL я хоть чуть чуть знаком, JavaScript одним глазком видел, но с PHP вообще не знаком. Так что ковырять код для меня будет не быстро, хотя должен отметить, что структура БД и код самого движка достаточно читабелен.

Однако может тут есть дружелюбные программисты, которые подскажут как решить эту задачу? :unsure:

Link to comment
Share on other sites

  • 1 month later...

В файле blocklayered.php убрал все проверки на кастомность свойства. Просто удалил проверки

AND (fv.custom IS NULL OR fv.custom = 0)

Можете закидывать меня тапками за такой подход, но судя по структуре базы данных, кастомное значение и предустановленное хранятся абсолютно одинаково, а следовательно можно предположить, что флаг "custom" влияет только на способ администрирования свойства.

Теперь в блоке многоуровневой навигации стали отображаться в т.ч. и не предустановленные значения и что более важно, фильтрация по ним работает :)

 

Однако вопрос с способом отображения фильтра остается открыт. Как сделать фильтрацию в виде слайдера (как по цене)?

Спасибо!Очень помогли!!!

Link to comment
Share on other sites

Спасибо!Очень помогли!!!

 

Только есть подводный камень. Если Вы укажите одинаковые кастомные значения для одной характеристики, то в модуле многоуровневой навигации это будет два разных значения. Поэтому на практике этот вариант оказался практически бесполезным. Нужно капать чуть глубже и анализировать значения характеристик, но до этого у меня руки не дошли пока.

Link to comment
Share on other sites

Только есть подводный камень. Если Вы укажите одинаковые кастомные значения для одной характеристики, то в модуле многоуровневой навигации это будет два разных значения. Поэтому на практике этот вариант оказался практически бесполезным. Нужно капать чуть глубже и анализировать значения характеристик, но до этого у меня руки не дошли пока.

Точно,у меня в голове пока 1 идея крутится,переделать вес упаковки в нужный мне параметр,тупо вместо кг поставить м2 например.Это конечно в корне неправильно,но ничего больше не остаётся на данный момент

Link to comment
Share on other sites

переделать вес упаковки в нужный мне параметр,тупо вместо кг поставить м2 например.

На весе завязана доставка, не думаю что это хорошее направление для размышлений :)

Но если смотреть на код, то скопировать логику работы веса на свою характеристику несложно. Другой вопрос, что это нужно на уровне кода делать, что не есть красиво. Надо допиливать этот модуль, что б появился новый тип характеристики.

Link to comment
Share on other sites

Я заменил весь процесс оформления заказа,мне вес и модуль доставки в общем не нужен.Да и навыков маловато модуль допиливать.Я столкнулся с другой проблемой переделав вес,результат вылезает в рублях почему-то О_о

post-403938-0-41950500-1361898463_thumb.jpg

Link to comment
Share on other sites

Я столкнулся с другой проблемой переделав вес,результат вылезает в рублях почему-то О_о

Эта проблема возникает на базовом функционале. Значит не в Ваших допиливаниях проблема.

Link to comment
Share on other sites

На скорую руку поглядел где формируется вывод для этой части.

Файл blocklayered.tpl

Код

{if $filter.format}
		 {displayPrice price=$filter.values[0]} -
		 {displayPrice price=$filter.values[1]}
	    {else}
		 {$filter.values[0]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'} -
		 {$filter.values[1]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'}
	    {/if}

 

Условие срабатывает Истенно. Исключительно методом научного тыка проверил, что если бы условие было Ложь, то сработала бы вторая часть вывода и отобразились бы Кг. Зачем это условие и на что влияет не знаю, но если Вы замените этот код на просто

{$filter.values[0]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'} - {$filter.values[1]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'}

 

то это хотя бы можно использовать для поиска корня зла :)

Link to comment
Share on other sites

На скорую руку поглядел где формируется вывод для этой части.

Файл blocklayered.tpl

Код

{if $filter.format}
		 {displayPrice price=$filter.values[0]} -
		 {displayPrice price=$filter.values[1]}
		{else}
		 {$filter.values[0]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'} -
		 {$filter.values[1]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'}
		{/if}

 

Условие срабатывает Истенно. Исключительно методом научного тыка проверил, что если бы условие было Ложь, то сработала бы вторая часть вывода и отобразились бы Кг. Зачем это условие и на что влияет не знаю, но если Вы замените этот код на просто

{$filter.values[0]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'} - {$filter.values[1]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'}

 

то это хотя бы можно использовать для поиска корня зла :)

Спасибо,завтра буду разбираться.В такие моменты хочется перейти на какой-нибудь bitrix,ей богу,зачастую presta дико неповоротлива

Link to comment
Share on other sites

Еще чуть повмыкав на код становится понятно, что первая часть условия должна сработать только для цены, но срабатывает для всего. А поскольку слайдер может быть только у цены и веса, то условие можно безболезненно убирать.

Если модуль дорабатывать до нормального, то эту часть вывода тоже придется переделывать.

Link to comment
Share on other sites

Спасибо,завтра буду разбираться.В такие моменты хочется перейти на какой-нибудь bitrix,ей богу,зачастую presta дико неповоротлива

 

Сейчас знакомые делают магазин на маженте...

С фильтрами-слайдерами там в базовой поставке дела обстоят не лучше.

А битрикс это тот же конструктор к которому надо подходить с молотком и напильником, только Вы еще и денег за него заплатите.

 

Под престу можете взять платный модуль фильтрации и за 100-150 у.е. получите нормальный функционал.

  • Like 1
Link to comment
Share on other sites

Сейчас знакомые делают магазин на маженте...

С фильтрами-слайдерами там в базовой поставке дела обстоят не лучше.

А битрикс это тот же конструктор к которому надо подходить с молотком и напильником, только Вы еще и денег за него заплатите.

 

Под престу можете взять платный модуль фильтрации и за 100-150 у.е. получите нормальный функционал.

100-150 круто больно,я не для себя делаю.Пощупав bitrix,мне показалось,что движок именно законченный и готов к работе,а вот в престе на каждом шагу некая сырость.но и стоит бюджет выделять нужно конечно совсем иной,спору нет.

Link to comment
Share on other sites

  • 3 months later...

Сейчас знакомые делают магазин на маженте...

С фильтрами-слайдерами там в базовой поставке дела обстоят не лучше.

А битрикс это тот же конструктор к которому надо подходить с молотком и напильником, только Вы еще и денег за него заплатите.

 

Под престу можете взять платный модуль фильтрации и за 100-150 у.е. получите нормальный функционал.

А как этот модуль называется? Хочу купить.

Link to comment
Share on other sites

А чем Вам стандартный фильтр в престе не нравится? Сколько сайтов не делал, не было не чего такого с чем бы этот фильтр не мог справиться пока.

Link to comment
Share on other sites

Стандартный модуль великолепен.

Но есть у товара специфический атрибут - высота. Я могу ввести сразу все высоты - от 1 метра до 5 с шагом в 10 см., но выведутся все варианты в фильтре в виде чекбокосов. А я хочу в виде слайдера, как например сделано с ценой.

Вот и вопрос: есть такой универсальный модуль, позволяющий любой из атрибутов выводить в виде слайдера?

Готов оплатить разработку.

Edited by litos (see edit history)
Link to comment
Share on other sites

Нет, не готов (

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

Link to comment
Share on other sites

  • 4 months later...

Я готова продать разработку, стучите в скайп )

 

вот пример реализации

https://www.diigo.com/item/image/3svco/386d

 

Я так понимаю, http://glavclimat.ru/7-wall - Ваше творчество?

Если "да", вопрос - почему при нажатии "Скрыть фильтр" , а затем "Показать" исчезает половина фильтров?

И еще. Правильно ли я понимаю, что Ваш алгоритм работы с фильтрами предполагает их ручную модификацию (т.е. нет нового типа атрибута, при котором каждый новый элемент характеристики автоматически становится слайдером).

Link to comment
Share on other sites

  • 1 month later...

у кого-нибудь удалось заставить этот модуль на 1.4.11 чтобы он выводил цены?

у меня только по производителям и категориям работает - как только ставишь цены то все тут же перестает работать :(

Link to comment
Share on other sites

  • 3 months later...

У меня вообще пропали все фильтры со страницы, модуль включен и настроен, а на странице его нет. Подскажите что я мог испортить!?

Link to comment
Share on other sites

У меня вообще пропали все фильтры со страницы, модуль включен и настроен, а на странице его нет. Подскажите что я мог испортить!?

 

А слабо адрес сайта выдать?

Есть еще 2 варианта решения:

- сделать бэкап и установить все заново, а потом  поверх залить базу товаров

- просто переписать файловое содержимое

Link to comment
Share on other sites

- сделать бэкап и установить все заново, а потом  поверх залить базу товаров

была такая мысль, отсюда вопрос как называются таблицы с товарами и категориями? толку заливать весь бекап нет, т.к. только что попробовал залить базу которая у меня на локальном компе стоит сразу все блоки появились, но теперь не категорий не товаров... благо магазин просто тестирую..

Link to comment
Share on other sites

была такая мысль, отсюда вопрос как называются таблицы с товарами и категориями? толку заливать весь бекап нет, т.к. только что попробовал залить базу которая у меня на локальном компе стоит сразу все блоки появились, но теперь не категорий не товаров... благо магазин просто тестирую..

А это в зависимости от того, что было введено :
- manufacturer - производители
- attribute,feature - свойства
- product - товары
Link to comment
Share on other sites

  • 2 weeks later...

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

Link to comment
Share on other sites

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

Замечу, что по цене фильтр сохраняет..

Link to comment
Share on other sites

  • 9 months later...

А у меня с фильтром все окей, но выводится он в том браузере, где я авторизирован в админке. Боле никто не может его видеть)) Все облазил, так и не нашел в чем тут дело) Если кто-нибудь сталкивался, подскажите плиз)

Link to comment
Share on other sites

  • 6 months later...

Уважаемые знатоки подскажите по такому вопросу. У меня сайт на локальном хосте Prestashop 1.6.0.14, пользуюсь стандартным модулем многоуровневой навигации работает всё прекрасно, но есть один момент в его работе, который мне не очень нравится. А именно: при фильтрации по какому нибудь свойству, в результатах поиска в заголовке выводится не просто название категории, а:

 

Мета-заголовок категории > название значения св-ва товара

 

может для продвижения такая подача и хорошо, но для клиента на мой взгляд такая подача излишня. Подскажите в каком файле .tpl или где это выводится?

Не могу найти.

 

Сейчас выводит так:

 

Мета-заголовок категории > название значения св-ва товара

 

Пример

 

Ноутбуки купить харьков > Диагональ 15.6"

 

Хочу сделать чтоб выводилось так:

 

Название категории > название значения св-ва товара

 

 Ноутбуки > Диагональ 15.6"

Link to comment
Share on other sites

  • 6 months later...

Всем привет.

Про не работающие фильтры уже задавал вопрос. Ответа ноль. Может в этой ветке кто подскажет....

Не работает должным образом модуль многоуровневой навигации (фильтра).

И модуль blocklayered удалял, и переинсталировал его.

Индексацию делал.

И какой глюк заметил.

Вычистишь кэшь весь. И ляпота, все фильтры (и цена в т.ч.) видны и работают. И сортировка по цене (возрастание/убывание) работает.

Закрываешь браузер и загружаешь снова. Фильтр цены пропадает, а остальные фильтра на месте. Но кликай на них, или не кликай. Все равно.

Типа нарисованы а к действию не приводят.

Опять чистим кэшь. И опять все хорошо.

 

Вот кто подскажет, что делать с фильтрами? Включил трекер ошибок - все ок, не ругаеться....

 

Может систему кэширования сменить? или ее как то можно причесать?

Стоит Memcached через PHP::Memcache

Ставил APC, так совсем фигня была.....

Edited by Koldun (see edit history)
Link to comment
Share on other sites

Так. Интересно.

Когда чистку кэша запускаю, притом кэша не на серваке, а в Cache Manager, то фильтры начинают работать. Как только делаю CTRL+F5, опять фильтры отключаются....

Отключил в Cache Manager "Блок многоуровневой навигации". Не помогло. Будем копать дальше....

 

www.bonmonde.com.ua/ru/82-rancy

 

Смена системы кэширования не помогла.

 

Направьте на путь истинный, плз.

Link to comment
Share on other sites

Хм...... отключаю Cache Manager, фильтра в модуле многоуровневой навигации работают.

Остается метод подбора параметров. Cache Manager нужен, в разы ускоряет работу сайта....

 

 

Решение:

в Cache Manager снимаем галочки:

Закладка Global Configuration, нужно отключить кэширование: Central cache for category pages

Закладка Manage Modules Cache, раздел Left column blocks (displayLeftColumn), нужно отключить кэширование:  Блок многоуровневой навигации

 

Фух, все, завертелось.

 

И наступает счастье.

 

Всем спасибо огромное, что помогли, посодействовали, посочувствовали. И, так сказать, всякие по_действия совершали.

 

:-)

 

P.S. Салон мобильной связи.

- добрый день. Есть ли у Вас беспроводные гарнитуры?

- Да есть. Для какой модели смартфона Вам нужно?

- Да мне все равно, какая модель мобильника. У меня справка из психушки, сам с собой разговариваю. А гарнитура нужна, что бы люди не оборачивались на меня. ;-)

Edited by Koldun (see edit history)
  • Like 2
Link to comment
Share on other sites

  • 2 years later...

Здравствуйте! Есть ли готовые модули или решения, что бы при выборе атрибута в блоке многоуровневой навигации изменялись цены товаров согласно этому атрибуту?

Edited by SergeiVK (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...