Не работает потому, что:
1. Когда идет перебор фильтров, разбор полетов и присвоение значения переменной "params_plus" начинается с таймерной функции в blocklayered.js и при смене URL разбор отдается в products-comparison.js. А оттуда в ajax.
2. А при перезагрузке страницы в 1-ю очередь вызывается products-comparison.js, а затем - дальше. И о том, что params_plus не должен быть пустым (и должен ли быть вообще, как и current_friendly_url) ему неведомо.
Ошибка связана с любым созданным ручками свойствами. Развернул на отдельной машине PHP/MySQL/PrestaShop 1.5.6 в ее первозданном виде и залил сверху свою базу товаров. Результат тот же.
Есть еще подозрение, что кто-то забыл в переборке свойств или их номеров поставить условие else для Case. Но это неточно. Хотя и не принято не предусматривать наличие других свойств, если есть возможность их создавать.
А на самом деле, все выросло из попытки превратить выбор параметров для свойств Длина/Ширина/Высота в slider. (Механизм, казалось, заложен. Только оказалось, что слишком загадочно - отдельные таблицы/запросы/условия). Проще изменить существующий механизм списка: на экране он дублируется и выбирается верхний/нижний пределы. Вывод - в интервале. Но это пока в будущих планах. А сейчас надо надо исправить этот глюк. Как выдать клиенту ссылку на товар, если она не отрабатывается?
Кстати, надо попробовать, будет ли сие проявляться для другого способа выбора - чекбокса, например.