Структура партнерского магазина

Функционально, партнерский магазин состоит из:
  • Скриптов, обеспечивающих функционирование интернет-магазина (/*.php)
  • XML-файла, содержащего информацию о товарах aka XML-фид (/products/shop.xml)
  • Страниц с подробным описанием каждого товара (/products/html/*.htm)
  • Статических информационных страниц с информацией о магазине, доставке, контактах и пр. (/pages/*.htm)
  • Шаблона, определяющего внешний вид магазина (/theme/*.tmpl)
  • Переопредлений контента и ассортимента магазина (/custom/*.*)

Скрипты интернет-магазина

Скрипты интернет магазина располагаются в корневом каталоге. Для их корректной работы необходим php версии 4 или 5 с включенным модулем libxml.

index.php - обеспечивает отображение главной страницы. Формирует на основе XML-файла, 2 массива товаров stab и gen, содержащих информацию о стабилизаторах и генераторах соотвественно, и выводит их при помощи шаблона index.tmpl, в котором осуществляется фильтрация товаров по флагу bestseller (1 - товар отображается на главной странице, 0 - не отображается).

config.php - задает конфигурацию партнерского магазина. Наиболее важными константами здесь являются $SITE_ID - идентификатор партнерского сайта, $AFF_ID - идентификатор партнера, и $UPGRADE_INTERVAL - интервал времени (в секундах) для работы системы автоматического обновления. Кроме того, здесь определяется расположение каталога с шаблонами магазина ($TMPL_DIR), а так же файл, содержащий текущую версию магазина ($VERSION_INFO_FILE) и URL-адрес сервера биллинга ($BILLING_SERVER)

cat.php - отображает список товаров в соотвествии с заданной категорией. Каждая категория определяется своим кодом и передается скрипту в качестве параметра cat (например: /cat.php?cat=stab). При отображении категории товаров используется шаблон cat.tmpl. Базовые категории товаров определяются в скрипте массивом $nav и могут быть переопределены в файле /custom/custom_cat.php

product.php - отображает подробное описание товара, код которого передается параметром product (например, http://xxxx.ru/product.php?product=svc-500). Описание товара берется из htm-файла, имя которого соответствует коду товара (например, svc-500.htm). Базовые описания товаров находятся в каталоге /products/html/ и могут быть переопределены одноименным htm-файлом, помещенным в каталог /custom/products/html/. Для отображения страницы, используется шаблон product.tmpl, в который передается содержимое htm-файла с описанием (параметр text), а также все ноды из XML-файла, относящиеся к данному товару.

buy.php - добавляет в корзину товар, код которого передан параметром product (пример: http://xxx.ru/buy.php?product=svc-500). Товары корзины хранятся в php-сессии. В каждой сессионной переменной, имя которой соответствует коду товара, хранится количество этого товара, помещенного в корзину. Таким образом, скрипт либо создает в сессиии переменную с именем кода товара и значением 1, либо увеличивает на единицу значение переменной сессии, имя которой соответствует коду товара.

.....
Документ не окончен. Продолжение следует.