Веб магазин на основе csv с данными товаров

Анатолий16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
19.12.2014

У нас есть csv файл с данными о товарах, нам нужно на основе этого файла получить php код, который можно будет загрузить на сервер и который будет показывать эти товары в виде веб магазина. Примеры веб магазинов, которые мы хотим получить в результате:

- http://4homegarden.me/

- http://homegardenlowcost.com/

Обратите внимание, что в качестве первой версии нам нужно получить набор php скриптов, которые будут выводить этот сайт без стилей. Т.е. все элементы должны быть заключены в divы, но стили программировать не нужно будет для этой версии.

Это должно работать примерно так (можно корректировать в ходе работы):

1. Пользователь имеет csv в формате, как показано в приложении.

2. Он на хостинге готовит базу и пользователя под этот сайт.

3. Затем он заливает на хостинг скрипт, который будет импортировать csv файл в базу. Назовем этот скрипт importer.php

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

5. Скрипт на основе введенных данных идет в базу, создает все необходимые таблицы и импортирует данные из csv файла в базу данных.

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

- урлы должны генериться на основе названия товара и SKU

- допустимые символы: a-z, 0-9.

- пробелы заменять на -

- максимальная длина френдли урла в символах: 150 (название + SKU)

- все урлы должны быть уникальными, если есть совпадения, то добавлять -1, -2 и тд.

7. После импорта, этот скрипт должен записать в ту папку где он находится ряд php файлов, которые будут показывать содержимое наших магазинов. Как вариант, учитывая, что эти php файлы практичеки не будут меняться, можно их подготовить 1 раз и копировать на хостинг вместе с importer.php.

8. Пользователь удаляет importer.php

9. После этого все кто зайдет на сайт, который мы залили, должен видеть веб магазин, как показано в примерах.

При этом наш вариант в отличие от примеров должен удовлетворять следующим условиям:

1. На мой взгляд структура файлов должна быть как показано ниже. Я открыт к предложениям по изменению этой структуры, если она с точки зрения программирования не очень правильная:

- index.php - домашняя страница

- header.php - заголовок (чтобы использовать на страницах в виде include)

- footer.php - футер

- config.php - конфигурационный файл, который будет содержать подключение к базе и тп.

- /categories/category.php - страница категории. Должна резолвиться при помощи modrewrite в дружелюбный урл с названием категории.

- /products/sidewall-lace-spool-100yds-3434/ или /products/sidewall-lace-spool-100yds-3434.php - страница товара. Должна резолвиться при помощи modrewrite в дружелюбный урл с названием товара.

- importer.php - страница, на которой мы можем ввести данные базы данных и пользователя, а также загрузить csv файл с товарами и которая в результате должна нам загрузить базу в mysql, прописать в ней дружелюбные урлы и заполнить config.php. Этот файл мы будем удалять после установки.

2. Кнопки добавления в корзину должны вести на buyurl из csv файла.

3. Урлы картинок товаров показаны в csv файле в колонке IMAGEURL. Их на хостинг не нужно будет загружать, просто прописывать на странице, чтобы они показывались с того урла, который указан в IMAGEURL

4. На страницах категорий должен быть пейджинг при количестве товаров больше, чем 16 шт.

5. На страницах товаров должен быть раздел Related Products, в котором нужно выводить 4 случайных товара. Обратите внимание, что эти случайные 4 товара должны быть разными для разных страниц, но всегда одними и теми же для каждой отдельной страницы. Т.е. либо на этапе импорта csv, либо при первом посещении страницы нужно генерировать набор Related Products для данного продукта и записывать его в базу. Чтобы при последующих посещениях этой страницы набор Related Products был всегда одним и тем же.

6. На странице товара должны быть бредкрамбы в виде: Home >> Category >> Product name

7. Должен также генерироваться google xml сайтмап и размещаться в корне сайта.

8. В хедере должна быть навигация по категориям, но не нужно делать навигацию по брендам пока что.

Прошу задавать вопросы по проекту в личку. Оценку проекта прошу указывать в предложениях.

Заявки фрилансеров