Суть косяка состоит в том, что движком давно поддерживаются слеше-подобные адреса страниц товаров, например http://ваш.сайт/products/telefony/siemens-s35i-silver. А в правилах ретрансляции страничных адресов, что записаны в корневом файле .htaccess, эта особенность оказалась неучтенной в той цепочке правил, которые относятся к странице сравнения.
Косяк незаметен до тех пор, пока принудительно не откорректируем url товара на слеше-подобный или не начнем импортировать на сайт новый товар. В последнем случае система импорта сделает слеше-подобные адреса за нас, копируя с транслитом полный каталоговый путь товара в его адрес страницы, то есть воображаемую строку вида категория/подкатегория/название-товара, если в импортируемой таблице мы не дали свою колонку url.
Когда клиент магазина попробует добавить такой товар в сравнение, то увидит всплывшую и не исчезающую более плашку "Передача данных в сравнение...". Ведь ретранслятор адресов, согласно устаревшим правилам, не реагирует на такой слеше-подобный адрес, как следствие плашка висит на экране бесконечно.
Чтобы исправить проблему, нужно в корневом файле .htaccess найти следующие строки (серым помечены фрагменты, которых нет, если во время установки движка вместо упомянутого файла вы приказали использовать содержимое файла .htaccess2):
# Сравнение товаров RewriteRule ^compare(?:\.class\.php)?/?$ index.php?module=Compare [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/quick/?$ index.php?module=Compare&quickcontent=1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/remove/([^/]+)/?$ index.php?module=Compare&remove_product_url=$1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/([^/]+)/?$ index.php?module=Compare&product_url=$1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/quick/([^/]+)/?$ index.php?module=Compare&product_url=$1&quickcontent=1 [NC,L,QSA]
и заменить их на:
# Сравнение товаров RewriteRule ^compare(?:\.class\.php)?/?$ index.php?module=Compare [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/quick/?$ index.php?module=Compare&quickcontent=1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/remove/([^/]+(/[^/]+)*)/?$ index.php?module=Compare&remove_product_url=$1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/quick/([^/]+(/[^/]+)*)/?$ index.php?module=Compare&product_url=$1&quickcontent=1 [NC,L,QSA] RewriteRule ^compare(?:\.class\.php)?/([^/]+(/[^/]+)*)/?$ index.php?module=Compare&product_url=$1 [NC,L,QSA]
Во-первых, здесь соблюден верный приоритет обработки правил ретрансляции адресов, и во-вторых, что в адресах страниц товаров, добавляемых в сравнение, могут присутствовать символы слеша согласно возможностям движка.
В новых версиях Impera CMS эти правки делать не придется, там исправление уже учтено.