buddha 0 Опубликовано 6 сентября, 2015 Жалоба Share Опубликовано 6 сентября, 2015 Скажите, пожалуйста, как сделать так, чтобы фильтры товаров выводились посередине страницы не только в тех категориях, где есть товары, но и в тех где только подкатегории? Получается, что в шаблонах product_listing фильтры работают, а в шаблонах categorie_listing - нет. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 6 сентября, 2015 Жалоба Share Опубликовано 6 сентября, 2015 По идее - никак. Ведь фильтр привязывается к конкретной категории. Ссылка на сообщение Поделиться на другие сайты
buddha 0 Опубликовано 6 сентября, 2015 Автор Жалоба Share Опубликовано 6 сентября, 2015 По идее - никак. Ведь фильтр привязывается к конкретной категории. Тогда я не очень понимаю логику: 1. Создаем группу спецификаций. 2. Прикрепляем её к каталогу, в котором нет товаров, но указываем: Включая все подкатегории 3. Создаем фильтр к спецификации. И опять-таки указываем: Фильтры подкатегорий И в итоге мы получаем:"Стабильный" фильтр в БОКСЕ фильтров (в левой колонке)и "Мигающий" фильтр в основном окне посередине сайта (в зависимости от типа категории). Задам вопрос по другому. где формируется метка {$FILTERS}, используемая в файле product_listing_list.html Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 6 сентября, 2015 Жалоба Share Опубликовано 6 сентября, 2015 В /includes/modules/product_filter.php Проблема в том, что там sql запрос который ищёт фильтры конкретной категории, он не ищет во всех низлежащих подкатегориях, а только в текущей. Ссылка на сообщение Поделиться на другие сайты
buddha 0 Опубликовано 6 сентября, 2015 Автор Жалоба Share Опубликовано 6 сентября, 2015 Проблема в том, что там sql запрос который ищёт фильтры конкретной категории, он не ищет во всех низлежащих подкатегориях, а только в текущей. А в запрос который в боксе ищет получается? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 6 сентября, 2015 Жалоба Share Опубликовано 6 сентября, 2015 (изменено) Можно попробовать в /includes/modules/default.php после: $default->assign('CATEGORIES_DESCRIPTION', $category['categories_description']); добавить: include (DIR_WS_MODULES.'products_filter1.php'); В /templates/шаблон/module/categories_listing/ шаблон добавить: {$FILTERS} и взять файл /includes/modules/product_filter1.php Но не знаю, видимо, не будет работать. products_filter1.php Поставьте метку бокса фильтры в /templates/шаблон/index.html сразу над {$main_content} Тогда, по идее, будут фильтры над основным содержимым, а не слева. Изменено 6 сентября, 2015 пользователем VaM Ссылка на сообщение Поделиться на другие сайты
buddha 0 Опубликовано 6 сентября, 2015 Автор Жалоба Share Опубликовано 6 сентября, 2015 Можно попробовать в /includes/modules/default.php после: $default->assign('CATEGORIES_DESCRIPTION', $category['categories_description']); добавить: include (DIR_WS_MODULES.'products_filter1.php'); В /templates/шаблон/module/categories_listing/ шаблон добавить: {$FILTERS} и взять файл /includes/modules/product_filter1.php Но не знаю, видимо, не будет работать. products_filter1.php Сделал. вроде работает. Вот здесь: http://biser.su/index.php?cat=1054 А вот это : Поставьте метку бокса фильтры в /templates/шаблон/index.html сразу над {$main_content} Тогда, по идее, будут фильтры над основным содержимым, а не слева. ... пока не делал. Пока не понял для чего это нужно. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 6 сентября, 2015 Жалоба Share Опубликовано 6 сентября, 2015 (изменено) Хорошо, раз работает. Вынес в раздел faq это решение. Изменено 6 сентября, 2015 пользователем VaM Ссылка на сообщение Поделиться на другие сайты
buddha 0 Опубликовано 6 сентября, 2015 Автор Жалоба Share Опубликовано 6 сентября, 2015 Спасибо за помощь. И раз уж тема про фильтры. Подскажи, пожалуйста, как сделать так чтобы можно посмотреть не только первую страницу отфильтрованных товаров? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 7 сентября, 2015 Жалоба Share Опубликовано 7 сентября, 2015 Да вроде все страницы должны быть. Ради эксперимента, попробуйте удалить вот этот код внизу в /includes/application_top.php: $url = vam_href_link(basename($PHP_SELF), vam_get_all_get_params(array ('page', 'cPath', 'info', 'x', 'y'))); if ($cID && PRODUCT_LIST_RECURSIVE == 'false') { $listing_sql = "select p.products_fsk18, p.products_shippingtime, p.products_model, p.products_ean, pd.products_name, m.manufacturers_name, p.products_quantity, p.products_image, p.products_weight, pd.products_short_description, pd.products_description, p.products_id, p.manufacturers_id, p.products_price, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_discount_allowed, p.products_tax_class_id from products_description pd, products_to_categories p2c, products p left join manufacturers m on p.manufacturers_id = m.manufacturers_id left join specials s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '1' and p2c.categories_id = '".$cID."' ORDER BY p.products_price DESC"; $max_result = MAX_DISPLAY_SEARCH_RESULTS; $listing_split = new splitPageResults($listing_sql, (int)$_GET['page'], $max_result, 'p.products_id'); $number_of_pages = ceil($listing_split->number_of_rows / $max_result); if (SEARCH_ENGINE_FRIENDLY_URLS == 'true') { $end_page_url = $url.'/page/'.$number_of_pages; } else { $end_page_url = $url.'?page='.$number_of_pages; } if($number_of_pages < $_GET['page']){ header("HTTP/1.1 301 Moved Permanently"); header("Location: $end_page_url"); exit(); } } if(trim($_GET['page']) == '1' && $url != ''){ header("HTTP/1.1 301 Moved Permanently"); header("Location: $url"); exit(); } if($_SERVER['REQUEST_URI'] != DIR_WS_CATALOG && $PHP_SELF == DIR_WS_CATALOG.'index.php' && !$_GET ){ header("HTTP/1.1 301 Moved Permanently"); header("Location: ".DIR_WS_CATALOG.""); exit(); } if (strpos($PHP_SELF, FILENAME_PRODUCT_INFO) !== FALSE || strpos($PHP_SELF, FILENAME_PRODUCT_REVIEWS) !== FALSE) { require('includes/modules/headerstatushandler.php'); } Может он мешает. Ссылка на сообщение Поделиться на другие сайты
buddha 0 Опубликовано 7 сентября, 2015 Автор Жалоба Share Опубликовано 7 сентября, 2015 Ради эксперимента, попробуйте удалить вот этот код внизу в /includes/application_top.php: Спасибо. Это помогло. А что этот код должен делать? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 7 сентября, 2015 Жалоба Share Опубликовано 7 сентября, 2015 Вообще, должен редиректы делать с несуществующих страниц, но, видимо, глючный немного ещё код, не до конца отлажен. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения