ABerezin 0 Posted October 31, 2007 Report Share Posted October 31, 2007 Есть атрибуты, а есть технические параметры. Атрибуты имеют семантику, это часть товара, влияющая на стоимость. Товары с разными атрибутами должны учитываться на складе отдельно. Тех.параметры - информационная часть. Это расширенное описание, цель которого - именно стандартизовать часть описания, что даёт возможность сравнивать товары между собой. Да, есть пересечение, вызывающее некоторую сумятицу. К этому просто нужно привыкнуть. Можно представить себе атрибуты используемые только в качестве информации, но система атрибутов сделана так, что тебе придётся не просто ознакомиться с соответствующей характеристикой, а выбрать её, т.к. это активный элемент. В этом смысл атрибутов. Пример из базы тестовых товаров. Видеокарта Matrox G200 MMS. Три варианта набивки: 4, 8, 16мб и две модели Value и Premium. Ты можешь создать 6 товаров, а можешь 1 и предложить покупателю выбрать память и модель. Второй вариант удобнее. Для футболки это, например, цвет, размер, рукав, нанесение, фасон, ворот и т.д. Конечно можно сравнить две разные карты по объёму памяти. Но, например, вводить такой атрибут как вес или габариты для видео-карты нет смысла - ты их не можешь изменить, это просто описание. Но сравнивать те же две карты по таким характеристикам можно. Также как и по частотам, глубине цвета и т.п. характеристикам (параметрам). Другое дело, что систему сравнения наверное стоило-бы дополнить сравнением атрибутов. Вопрос не простой, требует существенной проработки. P.S. А ещё есть дополнительные поля товара :) Link to post Share on other sites
alpha 0 Posted October 31, 2007 Report Share Posted October 31, 2007 Ну вобщем-то запутывает название атрибуты и там и там. ИМХО, те атрибуты что в компаре - они - лучше, т.к. устанавливаются на всю категорию целиком. Хотя я смотрю по исходникам что в advanced_search.php и advanced_search_result.php есть сортировка по атрибутам. а у нас ее нету. вобщем будем думать. Пока сделал расширений поиск по атрибутам что из компаре, но очень время жмет, поэтому как всегда через жж. Link to post Share on other sites
ABerezin 0 Posted October 31, 2007 Report Share Posted October 31, 2007 Ты не понял. Они не могут быть лучше или хуже - это "две большие разницы". Их нельзя сравнивать. А поиск должен быть и по тем и по другим. Как это делается можно посмотреть на http://oscommerce.com/community/contributions Link to post Share on other sites
alpha 0 Posted October 31, 2007 Report Share Posted October 31, 2007 Я уже понял что это 2 большие разницы, но они ж блин и там и мат АТРИБУТЫ. и только когда я сделал поиск по одним, я увидел что не подтягиваются другие. Потом смотр исходники, а это 2 разные сущности. Теперь не могу понять как идеологически правильно сделать поиск по техническим параметрам. Ведь они ж бывают у разных категорий одинакове. Опять надо делать джойны между всеми товарами категории, products_options, products_options_values, products_options_values_to_products_options, что не есть хорошо. Я и так немножко в шоке с EXPLAIN'ов некоторых запросов. ЗЫ. Если не тяжело, можно ссылку на магазин, где реализован поиск и там. А то не пойму как его построить. Ведь характеристики товара должны содержатся в атрибутах всей категории. Т.е. насчет видеокарты: атрибуты: память 256, 512, 620 шина ..... а характеристики одной видеокарты - 512, 620 и все(т.е. шина не указана, она в арибутах идет). Допустим человек хочет выбрать с такой-то шиной(из атрибутов), памятью 256(из характеристик). Link to post Share on other sites
support 446 Posted October 31, 2007 Author Report Share Posted October 31, 2007 чего то не получается, не могу найти itemneproducts, ты наверное не понял, нужно чтобы при выводе товаров, например когда выводишь категорию- там ведь выводится несколько товаров, так вот если смотреть твой шаблон, то каждый товар находится как бы на карточке другого цвета со скруглёнными углами., я не могу понять как это в моём случае поменять! Я имел в виду itemNewProducts. Пришли мне свой stylesheet.css, посмотрю. Link to post Share on other sites
evk 0 Posted October 31, 2007 Report Share Posted October 31, 2007 отправил Link to post Share on other sites
support 446 Posted October 31, 2007 Author Report Share Posted October 31, 2007 ответил Link to post Share on other sites
alpha 0 Posted December 4, 2007 Report Share Posted December 4, 2007 Найден замечательный бок в Сравнение товаров. При переносе товара из одно категории в другую, его характеристики не убиваются. тоесть если товар занесли не в ту диру и заполнили ему характеристики mp3 плееров, а потом перенесли в телики, то у телевизора остаются характеристики плеера. лечится добавлением строк #MY# vam_db_query("DELETE FROM " . TABLE_PRODUCTS_COMPARE_PARAMETERS2PRODUCTS . " WHERE products_id = '".vam_db_input($product_id)."'"); #MY# в соответствующии функции в файле admin/includes/classes/categories.php. То же самое при копировании категории. И при удалении товара, и при удалении категории. Тоесть таблица все засоряется и засоряется Link to post Share on other sites
support 446 Posted December 5, 2007 Author Report Share Posted December 5, 2007 alpha Спасибо, а можно чуть подробнее, куда конкретно в /admin/includes/classes/categories.php добавить? А то вставлю не туда. Link to post Share on other sites
alpha 0 Posted December 12, 2007 Report Share Posted December 12, 2007 изиняюсь что долго отвечал, видимо сообщение об ответе либо не ушло отсюда, либо попало в спам ко мне и было счастливо удалено. Как тут прикрепить файл? Link to post Share on other sites
support 446 Posted December 12, 2007 Author Report Share Posted December 12, 2007 А там при добавлении ответа ниже самого отвеча можно файлы добавлять. Либо просто выложи где-нибудь я скачаю, например на ifolder.ru , dump.ru Link to post Share on other sites
alpha 0 Posted December 12, 2007 Report Share Posted December 12, 2007 Ну вот собсна правки. Все правки выделены в #MY#, за правильность не ручаюсь :) + найден баг в quick_updates.php. При выборе категории изменяется количество товара, соотно изменяется количество страниц на которые можно перейти. Например всего товара на 32 страницы. Выбираем товар - ноуты. всего страниц - 8. Выбираю 3ю - попадаю на 3ю страницу всех товаров, т.е. на 3 из 32, а не на 3ю из 8. Вроде исправил, но не разбирался правильно ли. categories.php quick_updates.php Link to post Share on other sites
support 446 Posted December 12, 2007 Author Report Share Posted December 12, 2007 Спасибо большое Link to post Share on other sites
support 446 Posted December 12, 2007 Author Report Share Posted December 12, 2007 Архив с модулем сравнения поправил (исправил файл install.xml с инструкциями для установщика модулей и readme.txt), а исправления в quick_updates.php добавил в код VaM Shop, исправления будет в следующем патче. Link to post Share on other sites
alpha 0 Posted December 12, 2007 Report Share Posted December 12, 2007 Но насчет правильности я еще раз оговорюсь - ненаю. Просто этот магазин я уже сдал и забыл :). И каждый день вылазят какие-то очень мелкие бока, которые я б при тесте никогда не нашел, а отрываться от работы, и изучать что где вылезет после каждой правки - очень долго, т.к. уже не помню что и к чему. :(. Поэтому уже делаю абы как. Link to post Share on other sites
support 446 Posted December 12, 2007 Author Report Share Posted December 12, 2007 Понятно, спасибо, что написал о найденных багах. Я тоже стараюсь отлавливать баги, спасибо, что помог :) Link to post Share on other sites
DaRkIcE 0 Posted January 14, 2008 Report Share Posted January 14, 2008 Подскажите пожалуйста, а как сделать так, чтобы Тех.характеристики из этого модуля выводились в версии для печати? По аналогии с модулем tpt сделать не получается... Кстати, если после установки этого модуля, если попробовать удалить категорию в каталоге вылетает ошибка базы... Я чуть чуть подредактировал запрос в admin/includes/classes/categories.php. Вот исправленный запрос: vam_db_query("DELETE ".TABLE_PRODUCTS_COMPARE_PARAMETERS2PRODUCTS." pp2p FROM ".TABLE_PRODUCTS_COMPARE_PARAMETERS2PRODUCTS." pp2p JOIN ".TABLE_PRODUCTS_COMPARE_PARAMETERS." AS pp USING(products_parameters_id) WHERE categories_id = '".vam_db_input($category_id)."'"); Link to post Share on other sites
support 446 Posted January 14, 2008 Author Report Share Posted January 14, 2008 Спасибо, архив с модулем поправил. По поповду страницы для печати. Смысл в том, что б подключить файл /includes/modules/compare.php на страницу /print_product_info.php Как это делается момжно посмотреть в /includes/modules/product_info.php И поправить шаблон страницы для печати /templates/шаблон/module/print_product_info.html аналогично /templates/шаблон/module/product_info/product_info_v1.html Такой вариант не работает?! Link to post Share on other sites
DaRkIcE 0 Posted January 14, 2008 Report Share Posted January 14, 2008 Да вот не работает... Что делал: 1. В /templates/шаблон/module/print_product_info.html добавил {if $MODULE_tpt != ''} {$MODULE_tpt}<br /> {/if} После: <strong>{if $module_content !=''}{#options#}<br /> </strong> {foreach name=aussen item=module_data from=$module_content} {$module_data.GROUP}: {$module_data.NAME}<br /> {/foreach} <br /> <br />{/if} 2. В /print_product_info.php добавил include (DIR_WS_MODULES . 'compare.php'); После: $discount = 0.00; 3. При попытке вывести информацию дла печати получаю ошибку: Fatal error: Call to a member function assign() on a non-object in \www\includes\modules\compare.php on line 137 Строка 137 в файле compare.php: $info->assign('MODULE_tpt',$product_info); Что может быть не так? Link to post Share on other sites
support 446 Posted January 15, 2008 Author Report Share Posted January 15, 2008 Сейчас попробую сделать и скажу, что и как. Link to post Share on other sites
support 446 Posted January 15, 2008 Author Report Share Posted January 15, 2008 Попробуй этот прикреплённый файл /includes/modules/compare_print.php к себе в магазин положить. А в шаблоне страницы версия для печати - /templates/шаблон/module/print_product_info.html После: <p>{$PRODUCTS_DESCRIPTION}</p>[/code] добавить: [code]{$MODULE_tpt} А также в /print_product_info.php добавить: include (DIR_WS_MODULES . 'compare_print.php');[/code] например после: [code]$discount = 0.00; У меня вроде бы работает, т.е. в popup окне выводятся характеристики товара. compare_print.php Link to post Share on other sites
DaRkIcE 0 Posted January 15, 2008 Report Share Posted January 15, 2008 Во! Теперь работает!!! Спасибо!!! Link to post Share on other sites
support 446 Posted January 15, 2008 Author Report Share Posted January 15, 2008 Не за что, удачи с магазином. Link to post Share on other sites
PlazaUA 0 Posted February 26, 2008 Report Share Posted February 26, 2008 Вот такое http://delotehniki.com.ua/advanced_search_result.php?cat=15&vvalue%5B0%5D%5B44%5D=1&spec_search=1&search_cat_id=15&vvalue%5B211%5D%5B2022%5D=1&spec_search=1&search_cat_id=15 реализуется спомощью данного модуля, обсуждаемого здесь? или это что-то другое? Link to post Share on other sites
support 446 Posted February 26, 2008 Author Report Share Posted February 26, 2008 Да, это как раз модуль сравнения товаров. А вортировка сделана по faq - http://vamshop.ru/support/modules/smartfaq/faq.php?faqid=55 Link to post Share on other sites
Recommended Posts