chelp 0 Опубликовано 12 октября, 2008 Жалоба Share Опубликовано 12 октября, 2008 Как в боксе "Производители" вывести вместо списка вывести иконки всех производителей в столбик? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 12 октября, 2008 Жалоба Share Опубликовано 12 октября, 2008 Нужно в боксе /templates/шаблон/source/boxes/manufacturers.php В sql запрос после manufacturers_name добавить manufacturers_image и ниже, где выводится manufacturers_name добавить manufacturers_image Это будет картинка происходителя. А также в настройках в Админке - Настройки - Основные - Максимальные Там есть опция, что б список производителей был не в виду drop down, а в виде просто ссылок нужно поставить. Ссылка на сообщение Поделиться на другие сайты
chelp 0 Опубликовано 12 октября, 2008 Автор Жалоба Share Опубликовано 12 октября, 2008 Если не сложно, то в каком месте? В этом участке? while ($manufacturers = vam_db_fetch_array($manufacturers_query, true)) { $manufacturers_name = ((utf8_strlen($manufacturers['manufacturers_name']) > MAX_DISPLAY_MANUFACTURER_NAME_LEN) ? utf8_substr($manufacturers['manufacturers_name'], 0, MAX_DISPLAY_MANUFACTURER_NAME_LEN).'..' : $manufacturers['manufacturers_name']); if (isset ($_GET['manufacturers_id']) && ($_GET['manufacturers_id'] == $manufacturers['manufacturers_id'])) $manufacturers_name = '<b>'.$manufacturers_name.'</b>'; $manufacturers_list .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; }[/code] Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 12 октября, 2008 Жалоба Share Опубликовано 12 октября, 2008 $manufacturers_list .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />';[/code] меняй примерно на: [code] $manufacturers_list .= '<img src="'.$manufacturers['manufacturers_image'].'"><a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; Только в sql запрос добавь manufacturers_image Ссылка на сообщение Поделиться на другие сайты
chelp 0 Опубликовано 12 октября, 2008 Автор Жалоба Share Опубликовано 12 октября, 2008 Увы, не работает. Вставил в запрос после m.manufacturers_name m.manufacturers_image и эту ссылку: $manufacturers_list .= '<img src="'.$manufacturers['manufacturers_image'].'"><a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; Ссылка на сообщение Поделиться на другие сайты
chelp 0 Опубликовано 12 октября, 2008 Автор Жалоба Share Опубликовано 12 октября, 2008 Решение найдено! Вместо: $manufacturers_query = "select distinct m.manufacturers_id, m.manufacturers_name from ".TABLE_MANUFACTURERS." as m, ".TABLE_PRODUCTS." as p where m.manufacturers_id=p.manufacturers_id order by m.manufacturers_name"; $manufacturers_query = vamDBquery($manufacturers_query); if (vam_db_num_rows($manufacturers_query, true) <= MAX_DISPLAY_MANUFACTURERS_IN_A_LIST) { // Display a list $manufacturers_list = ''; while ($manufacturers = vam_db_fetch_array($manufacturers_query, true)) { $manufacturers_name = ((utf8_strlen($manufacturers['manufacturers_name']) > MAX_DISPLAY_MANUFACTURER_NAME_LEN) ? utf8_substr($manufacturers['manufacturers_name'], 0, MAX_DISPLAY_MANUFACTURER_NAME_LEN).'..' : $manufacturers['manufacturers_name']); if (isset ($_GET['manufacturers_id']) && ($_GET['manufacturers_id'] == $manufacturers['manufacturers_id'])) $manufacturers_name = '<b>'.$manufacturers_name.'</b>'; $manufacturers_list .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; } $box_content = $manufacturers_list;[/code] Вставляем: [code]$manufacturers_query = "select distinct m.manufacturers_id, m.manufacturers_name, m.manufacturers_image from ".TABLE_MANUFACTURERS." as m, ".TABLE_PRODUCTS." as p where m.manufacturers_id=p.manufacturers_id order by m.manufacturers_name"; $manufacturers_query = vamDBquery($manufacturers_query); if (vam_db_num_rows($manufacturers_query, true) <= MAX_DISPLAY_MANUFACTURERS_IN_A_LIST) { // Display a list $manufacturers_list = ''; $image=''; while ($manufacturers = vam_db_fetch_array($manufacturers_query, true)) { $manufacturers_name = ((utf8_strlen($manufacturers['manufacturers_name']) > MAX_DISPLAY_MANUFACTURER_NAME_LEN) ? utf8_substr($manufacturers['manufacturers_name'], 0, MAX_DISPLAY_MANUFACTURER_NAME_LEN).'..' : $manufacturers['manufacturers_name']); if (isset ($_GET['manufacturers_id']) && ($_GET['manufacturers_id'] == $manufacturers['manufacturers_id'])) $manufacturers_name = '<b>'.$manufacturers_name.'</b>'; $image=DIR_WS_IMAGES . $manufacturers['manufacturers_image']; $manufacturers_list .= '<br/><img src="'.$image.'"><br/><a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; } $box_content = $manufacturers_list; И ВУАЛЯ! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 13 октября, 2008 Жалоба Share Опубликовано 13 октября, 2008 Правильно. Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 14 октября, 2008 Жалоба Share Опубликовано 14 октября, 2008 Мне тоже понравилось - сам бы не сделал... А кто захочет сделать ссылкой "картинку" с альтом категории поменяйте $manufacturers_list .= '<br/><img src="'.$image.'"><br/><a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'">'.$manufacturers_name.'</a><br />'; на $manufacturers_list .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'manufacturers_id='.$manufacturers['manufacturers_id']).'"><img src="'.$image.'" alt="'.$manufacturers_name.'"></a>'.'<br />'; Спасибо. Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 А можно ли вместо $manufacturers_name вывести, например, meta title производителя? Тогда бокс будет мультиязычным. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Наверное можно, нужно только в /templates/шаблон/source/boxes/manufacturers.php править sql запрос: $manufacturers_query = "select distinct m.manufacturers_id, m.manufacturers_name from ".TABLE_MANUFACTURERS." as m, ".TABLE_PRODUCTS." as p where m.manufacturers_id=p.manufacturers_id order by m.manufacturers_name";[/code] на: [code] $manufacturers_query = "select distinct m.manufacturers_id, mi.manufacturers_meta_title, m.manufacturers_name from ".TABLE_MANUFACTURERS." as m left join " . TABLE_MANUFACTURERS_INFO . " mi on (m.manufacturers_id=mi.manufacturers_id), ".TABLE_PRODUCTS." as p where m.manufacturers_id=p.manufacturers_id and mi.languages_id = '" . (int)$_SESSION['languages_id'] . "' order by m.manufacturers_name"; а также заменить: $manufacturers_array[] = array ('id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers_name);[/code] на: [code] $manufacturers_array[] = array ('id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers['manufacturers_meta_title']); Как-то так. Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Спасибо за быстрый ответ... Обнаружилась неисправность в работе "производители" 1. Не отображается метка производитель_инфо 2. "Производители" в виде развёрнутого меню (в настройки-основные-максимальные не переводится в drop-down) и только два. Третий добавился, но не отображается. Чтобы разобраться, перешёл на нетронутый шаблон из сборки - результат тот-же. Для эксперимента удалил всех и начал добавлять производителей - не отображаются вообще. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 1. Она отображается только на странице карточки товара и только у товара, у которого указан производитель. 2. Может просто 3 производитель не связан ни с одним товаром?! Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Спасибо, работает. Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Если я правильно понял, то вторая замена в http://vamshop.ru/forum/index.php?topic=2004.msg17225#msg17225 относится к коду в // Display a drop-down и это ничего у меня не изменило, а как изменить для // Display a list? и ещё обнаружил, что все метатеги производителя выводятся на русском на страницах другого языка (ввод в редактировании проверил) Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Заменить также $manufacturers_name на $manufacturers['manufacturers_meta_title'] Ссылка на сообщение Поделиться на другие сайты
Виталий Мишин 0 Опубликовано 18 октября, 2008 Жалоба Share Опубликовано 18 октября, 2008 Пожалуйста, а что с метатегами? обнаружил, что все метатеги производителя выводятся на русском на страницах другого языка (ввод в редактировании проверил) Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 19 октября, 2008 Жалоба Share Опубликовано 19 октября, 2008 Даже и не знаю, в sql запросе стоит условие, что выводить для текущего языка. А sql кэш в Админке - Настройки - Основные - Кэш не включён случайно?! Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения