I found out that it happens to all products with more than 4 attributes.
Is it a limit to how many attributes the dynamic filter can handle to loop through?
I found out that it happens to all products with more than 4 attributes.
Is it a limit to how many attributes the dynamic filter can handle to loop through?
Zen cart installation / maintenance / customisation / hosting
Supported Modules: Dutch language pack, Multi site, Dynamic Price Updater and more.
The attribute in question is a read only attribute. Everything is working fine exept filtering on attributes when there are more than 4 on the product
After more digging, I've found out that its not 4 attributes thats my upper limit, its more randomly than that.
Adding/removing attribute values from a product change if the filter for that particular filter works or not.
An example. A product has 6 attributes with in total 15 attribute values. The filter on attribute "stock" does not work.
I remove one attribute value from one of the other attributes, for instance a color.
Now the filter on attribute "stock" works just fine.
It doesnt matter what attribute value I remove, so its not just one attribute or value which causes this... hmmmmmmm.....
suggestions?
another "fun feature", if I delete the language english, only keeping norwegian, it works as it should.
Zen cart installation / maintenance / customisation / hosting
Supported Modules: Dutch language pack, Multi site, Dynamic Price Updater and more.
Im having exaclty the same problems, very hard to replicate the problem but it appears to only not filter for products with a lot of attributes, i havent tried to delete the english language. but i will give that a try to see if it fixes stuff
Really need a fix for this plugin
I have tried removing the english language, but that still doesnt fix the problems with filtering.
As the person above me i have the error:
Code:[05-Jun-2014 12:15:58 Europe/Amsterdam] PHP Warning: trim() expects parameter 1 to be string, array given in /var/www/vhosts/domain/httpdocs/shop/includes/functions/functions_general.php on line 63 [05-Jun-2014 12:15:58 Europe/Amsterdam] PHP Warning: trim() expects parameter 1 to be string, array given in /var/www/vhosts/domain/httpdocs/shop/includes/functions/functions_general.php on line 63
Here you can see how buggy it is:
http://www.etcoevorden.nl/shop/index...ex&cPath=23_42
This shows a lot of products, but when clicking on the "Discovery 1 1990-1998" Filter on the left side
It doesnt show me any results (in the bottom it shows -> Artikel 1 tot 10 (van 18 artikelen) (so it should have at least 1 result)
If you check one of the products in this category -> http://www.etcoevorden.nl/shop/index...&products_id=8
It does show Attribute -> "Discovery 1 1990-1998" in the bottom so it should be able to find it ?
Im currently running Zencart 1.5.1 and i have tried to add the fixes posted by dr blyte
This is on line 63 in functions_general:
My PHP version is 5.3.23Code:function zen_parse_input_field_data($data, $parse) { return strtr(trim($data), $parse); }
Zencart 1.5.1
I found the language code I have added to the filter to show multiple languages.
in includes\templates\YOUR_TEMPLATE\sideboxes\tpl_dynamic_filter.php find
and replace withCode:$categories = $db->Execute("SELECT categories_id, categories_name, IF(categories_id IN (" . implode(',', $filteredCategories) . "), 'Y', 'N') as flag" . " FROM " . TABLE_CATEGORIES_DESCRIPTION . " WHERE categories_id IN (" . implode(',', $unfilteredCategories) . ")" . " ORDER BY categories_name");
Code:$categories = $db->Execute("SELECT categories_id, categories_name, IF(categories_id IN (" . implode(',', $filteredCategories) . "), 'Y', 'N') as flag" . " FROM " . TABLE_CATEGORIES_DESCRIPTION . " WHERE categories_id IN (" . implode(',', $unfilteredCategories) . ")" . " AND language_id=" . (int)$_SESSION['languages_id'] . " ORDER BY categories_name");
Zen cart installation / maintenance / customisation / hosting
Supported Modules: Dutch language pack, Multi site, Dynamic Price Updater and more.
Bookmarks