Искать  
 
   
 
Кто и как создает магазины?
Отправлено: 18 Октябрь 2012 12:29 P.M.   [ Игнорировать ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

Интересно мнение опытных разработчиков.
Для магазина выбран Expresso Store. А как лучше поступить с такими полезными фичами как “фильтр товаров” и последние “просмотренные товары” (особенно для неавторизованных покупателей)? Например такой фильтр: http://fotos.ua/shop/88/ - здесь при выборе некоторых опций, другие, не пересекающиеся опции становятся неактивными, чтобы не путать покупателя. Может есть какие готовые разработки, в том числе платные, чтобы не изобретать заново?

Профиль
 
 
Отправлено: 18 Октябрь 2012 04:40 P.M.   [ Игнорировать ]   [ # 1 ]
Sr. Member
Avatar
RankRankRankRank
Всего сообщений:  463
Зарегистрирован  2009-08-07

“фильтр товаров” и последние “просмотренные товары”

Вполне реализуется средствами ЕЕ

здесь при выборе некоторых опций, другие, не пересекающиеся опции становятся неактивными

Реализуется на JS.. ничего сверхсложного..

В цело скорее придется делать.. готового всего перечисленного не видел.

 Подпись 

Ум - как бюст: надо иметь, но выпячивать не стоит
SSD Cloud Hosting

Профиль
 
 
Отправлено: 18 Октябрь 2012 05:31 P.M.   [ Игнорировать ]   [ # 2 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13
Николай - 18 Октябрь 2012 04:40 P.M.

Вполне реализуется средствами ЕЕ

А есть примеры такой реализации? Я например, не нашел как средствами ЕЕ можно сделать “просмотренные записи” для каждого неавторизованного пользователя. Имеется ввиду не просто самые последние просмотры, из всех записей. А вот есть необходимость сделать так, чтобы у каждого покупателя отображались например, 5-10 просмотренных только им позиций, даже если он неавторизован.

Также, относительно фильтров - я понимаю как можно сделать некоторые пункты неактивными средствами JS. Но меня интересует, как например оптимальнее можно выполнить пересчет товаров с определенными значениями в заказных полях, относительно уже выбранных опций в фильтре? Т.е. если мы выбираем, например только четырехкамерные холодильники, то отпадают все опции, которые отсутствуют для четырехкамерных холодильников, а затем если мы выбираем еще какие либо опции, то становятся неактивными еще какие-то опции и т.д. Как бы сужая вариации выбора. Можно глянуть в приведенном мной примере.

Спасибо за любую инфу.

Профиль
 
 
Отправлено: 18 Октябрь 2012 05:56 P.M.   [ Игнорировать ]   [ # 3 ]
Sr. Member
Avatar
RankRankRankRank
Всего сообщений:  463
Зарегистрирован  2009-08-07
artics - 18 Октябрь 2012 05:31 P.M.

А есть примеры такой реализации? Я например, не нашел как средствами ЕЕ можно сделать “просмотренные записи” для каждого неавторизованного пользователя. Имеется ввиду не просто самые последние просмотры, из всех записей. А вот есть необходимость сделать так, чтобы у каждого покупателя отображались например, 5-10 просмотренных только им позиций, даже если он неавторизован.

Это при помощи Session class в ЕЕ, использовать в виде

$current_page $this->EE->session->tracker['0'];
$last_page $this->EE->session->tracker['1'];
$two_pages_ago $this->EE->session->tracker['2']

$this->EE->session->tracker - это массив, который содержит последние просмотренные конкретным пользователем список страниц. Ключи массива от 0 до 5.

artics - 18 Октябрь 2012 05:31 P.M.

Также, относительно фильтров - я понимаю как можно сделать некоторые пункты неактивными средствами JS. Но меня интересует, как например оптимальнее можно выполнить пересчет товаров с определенными значениями в заказных полях, относительно уже выбранных опций в фильтре? Т.е. если мы выбираем, например только четырехкамерные холодильники, то отпадают все опции, которые отсутствуют для четырехкамерных холодильников, а затем если мы выбираем еще какие либо опции, то становятся неактивными еще какие-то опции и т.д. Как бы сужая вариации выбора. Можно глянуть в приведенном мной примере.
Спасибо за любую инфу.

Реализуй на AJAX.. Или на JS, создавай изначально какой-нить глобальный массив со всеми необходимыми параметрами и связями и работай с ним на JS… собственно вариантов много.. для себя придумайте нужный и работайте с ним.. готового решения врядли найдете..

 Подпись 

Ум - как бюст: надо иметь, но выпячивать не стоит
SSD Cloud Hosting

Профиль
 
 
Отправлено: 20 Ноябрь 2012 04:05 P.M.   [ Игнорировать ]   [ # 4 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

Никому не приходилось прикручивать какой-нибудь шлюз СМС сообщений к Store для уведомления покупателя и менеджера о заказе?
Думаю над реализацией, не знаю за что зацепиться можно в этом модуле... Там есть статусы заказов, в идеале конечно было бы к ним привязываться. Но как и в каком месте, пока ума не приложу.

Профиль
 
 
Отправлено: 21 Ноябрь 2012 12:09 P.M.   [ Игнорировать ]   [ # 5 ]
Sr. Member
Avatar
RankRankRankRank
Всего сообщений:  463
Зарегистрирован  2009-08-07

На royalrose.ru сделали так.
Обратись к администрации - может подскажут..

 Подпись 

Ум - как бюст: надо иметь, но выпячивать не стоит
SSD Cloud Hosting

Профиль
 
 
Отправлено: 21 Ноябрь 2012 03:16 P.M.   [ Игнорировать ]   [ # 6 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13
Николай - 21 Ноябрь 2012 12:09 P.M.

На royalrose.ru сделали так.
Обратись к администрации - может подскажут..

Спасибо, попробуем...

Профиль
 
 
Отправлено: 27 Ноябрь 2012 03:31 P.M.   [ Игнорировать ]   [ # 7 ]
Member
RankRankRank
Всего сообщений:  191
Зарегистрирован  2009-03-17

прикручивать какой-нибудь шлюз СМС сообщений

я прикручивал отправку СМС по мотивам этой статьи:
Отправляем SMS со своего номера Мегафон без GSM-аппарата (http://habrahabr.ru/post/115037/)

Профиль
 
 
Отправлено: 04 Декабрь 2012 10:01 P.M.   [ Игнорировать ]   [ # 8 ]
Sr. Member
RankRankRankRank
Всего сообщений:  987
Зарегистрирован  2008-09-27

C sms также помогу чем смогу
Прикручиваю обычно это) http://smsc.ru

Профиль
 
 
Отправлено: 14 Декабрь 2012 06:08 P.M.   [ Игнорировать ]   [ # 9 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

Основательно задался вопросом построения рабочей в перспективе схемы для “крупного” универсального магазина на ЕЕ. К сожалению, на просторах официального форума Эллисов и разработчиков модулей магазинов (Store, CartThrob, BrilliantRetail), не нашел достойных примеров крупных магазинов которые, были бы построены на ЕЕ.

Что же я подразумеваю под словом крупный магазин? Великое множество товарных групп (от столовых приборов до бытовой техники и от отдельных комплектующих до компьютеров), огромное количество различных свойств товаров (заказные поля) и более 15000 самих товаров (записей). Возможность умной фильтрации по свойствам, сравнение родственных товаров, массовый экспорт/импорт товаров. Также важно, чтобы менеджера смогли распределенно управлять только отдельными группами товаров.

На данный момент возникла такая масштабируемая идея (в примере только одна товарная группа, но можно создавать сколько угодно):

1. Товарная группа (например, Компьютерная техника)
-> Группа категорий “Компьютерная и офисная техника”.
  -> Категории и подкатегории: Компьютеры, Мониторы, Все для игр, Портативная техника (Ноутбуки, Планшеты, Электронные книги и т.д), Комплектующие (Процессоры, Видеокарты, Жесткие диски и т.п.), Периферия, Офисное оборудование.

2. Родственные товары или логические товарные единицы
-> Каналы (например, “Процессоры”, “Видеокарты”, “Жесткие диски” и подобное). По моим скромным подсчетам только для группы “Компьютерная техника” нужно 35 каналов.

3. Уникальные свойства товаров, по которым затем будем умно фильтровать.
-> Группы заказных полей для каждого канала (35 каналов = 35 групп). Почему разные группы, если можно сделать одну группу, а затем в шаблонах делать невидимыми некоторые поля? Потому что могут возникнуть коллизии, когда скрыты некоторые обязательные поля - вы не видите ошибку, а запись не сохраняется. Конечно как вариант, можно использовать большой список полей в одной группе без требования обязательного заполнения. Но все равно, неудобно большой список полей может получиться (если полей будет больше 1000 например).

4. Общие свойства товаров (описание, ключевые слова и т.д.). К сожалению, официально не поддерживается прикрепление к каналу более одной группы полей. Здесь можно осторожно использовать сторонние разработки (подробнее http://ellislab.com/forums/viewthread/223624/). Надеюсь в будущем этот вопрос как-то Эллисы доделают.
Такие общие свойства, как SKU, стоимость, количество имеются при подключении поля магазина (тот же Store).

5. Товары
-> Записи каналов.

6. Умная фильтрация и сравнение товаров между собой, вполне логично, выполняется в пределах одного канала.

7. Управление товарами, делается распределенным на уровне доступа групп мемберов.

8. Экспорт/Импорт - есть модуля Importer и DataGrab - даже не знаю что лучше, т.к. еще ни с одним не приходилось работать.

В итоге, если магазин большой, получиться несколько сотен каналов и столько же групп полей. Ну вот как-то так. Только остается вопрос, как затем можно управлять таким количеством каналов и групп полей? Есть ли какие предположения или я вообще выбрал неверное решение данного вопроса?

Интересно знать любое мнение и предложения различных концепций в пределах ЕЕ.

ПС. На данный момент, понимаю что довольно сырая идея - мысли вслух, которые не обязательно станут действующим решением.

Профиль
 
 
Отправлено: 14 Декабрь 2012 07:43 P.M.   [ Игнорировать ]   [ # 10 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27

В настоящее время готовится интернет-магазин на ЕЕ. Так сказать, готовое решение, на тестовом домене. Если есть желание присоединиться к разработке, высказывать свои советы и пожелания, пишите в личку.

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 21 Декабрь 2012 12:54 P.M.   [ Игнорировать ]   [ # 11 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

К тому же, уж очень большая таблица exp_channel_data получается - думаю что столько заказных полей-свойств объектов в ней хранить неэффективно.

Профиль
 
 
Отправлено: 21 Декабрь 2012 04:06 P.M.   [ Игнорировать ]   [ # 12 ]
Member
Avatar
RankRankRank
Всего сообщений:  224
Зарегистрирован  2010-11-20

Однозначно - необходимо кастомное построение всей e-commerce логики,
со своим хранилищем данных, ну... может быть, за исключением базовой
реализации объекта продукта, как нативной записи канала...

Профиль
 
 
Отправлено: 29 Январь 2013 12:21 A.M.   [ Игнорировать ]   [ # 13 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

Кто-нибудь знает как заставить Solspace Super Search делать выборку/сортировку по полю regular_price в Exp:resso Store? По умолчанию Супер Поиск работает только со стандартными полями, но вот нашел здесь http://www.solspace.com/docs/super_search/third_party_support/ и здесь http://gotolow.com/addons/low-search/docs/api некоторую информацию. Получается, что можно поле подставить, но знаний, к сожалению в этой области не достаточно...

Профиль
 
 
Отправлено: 29 Январь 2013 09:17 A.M.   [ Игнорировать ]   [ # 14 ]
Sr. Member
Avatar
RankRankRankRank
Всего сообщений:  463
Зарегистрирован  2009-08-07

Попробуй SQL-запросами сделать необходимую выборку и вывести результат...

 Подпись 

Ум - как бюст: надо иметь, но выпячивать не стоит
SSD Cloud Hosting

Профиль
 
 
Отправлено: 29 Январь 2013 11:51 A.M.   [ Игнорировать ]   [ # 15 ]
Студент
RankRank
Всего сообщений:  100
Зарегистрирован  2009-05-13

Дело в том что я построил под свою задачу смарт-фильтр, работающий с Супер Поиском. Все параметры отбираются даже с Плаей работает, а вот цена, что довольно важно, не работает. Я хочу, чтобы выборка по ценам Сторе обрабатывалась наряду с другими параметрами вместе, а не поотдельности. Надо как-то SQL-запросом выбрать поле regular_price из таблицы exp_store_products и выдать на обработку Супер Серчу наряду с полями из exp_channel_data

Профиль