Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

12 лет назад
--- Satori
--- Satori 
Украина
12 лет в сервисе
Был онлайн 10 лет назад
12 лет назад

Есть интернет-магазин на ShopCMS. В нем продаются карты городов.
Нужно на сайте сделать блок, в котором будет отображаться какой-то 1 товар, в зависимости от ip пользователя. Например, пользователю из Москвы будет отображаться карта Москвы.
Но жесткого списка вроде "ip - 1 товар", не будет, на один город может быть несколько товаров. Например, для московских ip может быть задано 10 различных московских карт. Также нужно будет сделать "вероятности" показа какой-то карты. Например, московская карта1 будет показана с вероятностью 55%, остальные 9 по 5%.

И всё это дело должно управляться с админки. Т.е., захожу я в админку, открываю список ip, выбираю, к примеру, Москву и привязываю к ней 10 карт. А также задаю процент вероятности для каждой.

И ещё, самое сложное. Посещаемость магазина около 2к уников в день, нагрузка на сервер уже сейчас не маленькая. Список GeoIP весит 100 МБ (ну пусть очистим от ненужного, останется 10) + в БД будут довольно немаленькие списки привязок "ip - карты". Это я к тому, что тупо каждый раз сканировать файл с ip и запрашивать из БД список нельзя, сервер просто не выдержит. Нужен какой-то кэш или более умный подход.

Как видно, задача не из простых. Нужно написать довольно серьезный функционал, да ещё и грамотно встроить его в ShopCMS. По этому прошу обращаться только тех, кто знает ShopCMS на уровне кода. Подозреваю что многое можно сделать на основе стандартного функционала, а не писать всё заново.

Стоимость этого дела не знаю, предлагайте сами.

  1. Прием заявок
  2. Выбор исполнителя
  3. Выполнение заказа
  4. Обмен отзывами

Нет заявок

Другие заказы в категории «Веб-программирование»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.