Перейти к содержанию
Форум поддержки пользователей VamShop

Вывод всех категорий, содержащих данного производител


Рекомендуемые сообщения

Доброго времени суток, не подскажите как сделать следующее или хотя бы с чего начать "копать":

При выборе производителя в боксе "Производители" выводиться список всех товаров данного производителя, а нужно чтоб выводились все категории, содержащие товар выбранного производителя, без показа товаров?

Спасибо за внимание.

Ссылка на сообщение
Поделиться на другие сайты

Так вроде так оно и есть, т.е. если товар от одного производителя в разных категориях, то если выбрать в боксе Производители какую-то запись, то по центру страницы будут категории.

Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответ. Поковырялся, и нашел следующее:

Вообщем, использую шаблон vamshop, заметил следующее, товар при выборе записи в боксе производители, выводится шаблоном product_listing_list.html, насколько я знаю, категории так и отображаются, а вот при вставке кода product_listing_list.html из шаблона vamshop_table, категории начали выводится, в чем может быть дело?

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

Спасибо.

Ссылка на сообщение
Поделиться на другие сайты

Так шаблон сделан.

Попробуйте из шаблона убрать условие {if $CATEGORIES_NAME} и ниже {/if}, тогда наверное и в оригинальном шаблоне будет работать.

Ссылка на сообщение
Поделиться на другие сайты

Спасибо, убрал, категории появились, но при выборе категории с этой страницы, переход осуществляется не в выбранную категорию, а выводятся все категории первого уровня, а ведь должен по идее осуществляться переход на страницу категории?

У всех категорий, ссылка следующего вида, меняется только id, а cat=0 нет. Не пойму почему?

Мой домен/index.php?cat=0&filter_id=33

Ссылка на сообщение
Поделиться на другие сайты

Ну вот наверное как раз потому что это результат поиска, а не просмотр категории.

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

Ссылка на сообщение
Поделиться на другие сайты

Наверное как-то править /includes/modules/default.php

Править строку где там cat=

Значение cat где подставляется.

Ссылка на сообщение
Поделиться на другие сайты

Спасибо за подсказку, переход на нужную категорию сделать удалось, но хотелось бы еще получить вывод изображения категорий, не направите что для этого нужно, а так понимаю сформировать запрос из БД и сделать вывод???

Спасибо за внимание.

Ссылка на сообщение
Поделиться на другие сайты

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

Ссылка на сообщение
Поделиться на другие сайты

Это имеется ввиду в запрос $filterlist_sql добавить categories_image as image, в строку $options[] добавить например 'image' => $image['im'], а уже эту переменную добавить в тэг <img src="'.$image['im'].'"/>, я правильно понимаю?

Ссылка на сообщение
Поделиться на другие сайты
  • 3 weeks later...

Спасибо за подсказку, переход на нужную категорию сделать удалось, но хотелось бы еще получить вывод изображения категорий, не направите что для этого нужно, а так понимаю сформировать запрос из БД и сделать вывод???

Спасибо за внимание.

Zloypups, поделитесь, пожалуйста кодом, на что в файле /includes/modules/default.php

нужно поменять этот кусок:

if (isset ($_GET['manufacturers_id'])) {
    $filterlist_sql = "select distinct p.manufacturers_id, c.categories_id as id, cd.categories_name as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c, ".TABLE_CATEGORIES_DESCRIPTION." cd where p.products_status = '1' and c.categories_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '".(int) $_SESSION['languages_id']."' and p.manufacturers_id = '".(int) $_GET['manufacturers_id']."' order by cd.categories_name";
  } else {
    if (PRODUCT_LIST_RECURSIVE == 'true') {
    $filterlist_sql = "select distinct p.manufacturers_id, m.manufacturers_id as id, m.manufacturers_name as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c,".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and (p2c.categories_id = '".$current_category_id."' AND p2c.categories_id = c.categories_id OR p2c.categories_id = c.categories_id AND c.parent_id = '".$current_category_id."') order by m.manufacturers_name";
    } else {
    $filterlist_sql = "select distinct m.manufacturers_id as id, m.manufacturers_name as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '".$current_category_id."' order by m.manufacturers_name";
    }
  }
  $filterlist_query = vamDBquery($filterlist_sql);
  if (vam_db_num_rows($filterlist_query, true) > 1) {
    $manufacturer_dropdown = vam_draw_form('filter', vam_href_link(FILENAME_DEFAULT, 'cat='.$current_category_id), 'get');
    if (isset ($_GET['manufacturers_id'])) {
    $manufacturer_dropdown .= vam_draw_hidden_field('manufacturers_id', (int)$_GET['manufacturers_id']);
    $options = array (array ('text' => TEXT_ALL_CATEGORIES));
    } else {
    $manufacturer_dropdown .= vam_draw_hidden_field('cat', $_GET['cat']);
    $options = array (array ('text' => TEXT_ALL_MANUFACTURERS));
    }
    $manufacturer_dropdown .= vam_draw_hidden_field('sort', $_GET['sort']);
    $manufacturer_dropdown .= vam_draw_hidden_field(vam_session_name(), vam_session_id());
    global $current_category_id;
    while ($filterlist = vam_db_fetch_array($filterlist_query, true)) {
    $options[] = array ('id' => $filterlist['id'], 'text' => $filterlist['name']);
if (isset($current_category_id)) {
    $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'cat='.$current_category_id.'&filter_id='.$filterlist['id']).'">' . $filterlist['name'] . '</a> ';
    } else {
    $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'filter_id='.$filterlist['id']).'">' . $filterlist['name'] . '</a> ';
    }
    }
    $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'cat='.$current_category_id).'">' . TEXT_ALL_MANUFACTURERS . '</a> ';
    $manufacturer_dropdown .= vam_draw_pull_down_menu('filter_id', $options, $_GET['filter_id'], 'onchange="this.form.submit()"');
    $manufacturer_dropdown .= '</form>'."\n";
  }
  }

  // Get the right image for the top-right
  $image = DIR_WS_IMAGES.'table_background_list.gif';
  if (isset ($_GET['manufacturers_id'])) {
  $image = vamDBquery("select manufacturers_image from ".TABLE_MANUFACTURERS." where manufacturers_id = '".(int) $_GET['manufacturers_id']."'");
  $image = vam_db_fetch_array($image,true);
  $image = $image['manufacturers_image'];
  }
  elseif ($current_category_id) {
  $image = vamDBquery("select categories_image from ".TABLE_CATEGORIES." where categories_id = '".$current_category_id."'");
  $image = vam_db_fetch_array($image,true);
  $image = $image['categories_image'];
  }[/code]

Ссылка на сообщение
Поделиться на другие сайты
  • 1 year later...

По идее, эта ошибка была исправлена.

Возьмите из архива с текущей версией магазина файл /includes/modules/default.php

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...