Чтобы сделать простой каталог с заказом нам, как минимум, потребуются в наличии на сайте:
- Параметры (не считая стандартных): prod_is (признак продукта), prod_price (цена), prod_basket_id (id корзины)
- Стиль, поддерживающий операции заказа (обычно это стиль "catbas" - "каталог корзина заказ", использующий catbas.xsl)
- Обработчик "catbas" в наличии (обычно он всегда есть, просто следует иметь в виду, что если соответствующий файл catbas.php испорчен или отсутствует, то корзина работать не будет)
Для добавления на сайт каталога товаров с ‘корзиной’ заказов необходимо:
- Сделать корзину заказов. Нужно создать объект, который будет являться на сайте корзиной заказов. Установить настройки для этого объекта:
- Параметр Обработчик (handler) = catbas
- Параметр Конфигурация менеджера (опциональный параметр), допустимые опции для конфигурирования (указываются при установке значения параметра по одной в строке):
"pos" - показывать порядковый номер товара или позицию (параметр prod_pos), '0' или '1', по умолчанию '1'.
"cnt" - если 1 - задавать число заказанных товаров, '0' или '1', по умолчанию '1'
"cntint" - если 1 - только целое число товаров, по умолчанию '0'
"ut" - показывать единицы измерения (работает вместе с параметром prod_ut) , '0' или '1', по умолчанию '1'
"price" - показывать цену (работает вместе с параметрами prod_price или prod_price_XX ) , '0' или '1', по умолчанию '1'
"inwords" - показывать сумму прописью, '0' или '1', по умолчанию '1'
"kop" - показывать копейки, '0' или '1', по умолчанию '1'
"print" - показывать печать заказа, '0' или '1', по умолчанию '1'
"rating" - подсчитывать рейтинг (параметр prod_rating), рейтинг = количество заказов данного продукта, '0' или '1', по умолчанию '1'
"xml" - создавать xml-файл с заказом (параметр order_file) , '0' или '1', по умолчанию '0'
"xmlname" - имя xml-файла с заказом, по умолчанию 'order.xml'
"email" - отправлять копию заказа на e-mail заказчика (параметр order_email) , '0' или '1', по умолчанию '0'.
- Параметр Имя формы или параметра - в значении необходимо через запятую перечислить имена параметров из которых будет построена форма заказа (поля формы - имя, адрес доставки и прочее, например: "order_name,order_email,order_address,order_tel,order_text,imagekey", где order_xxxx - параметры группы order (имя, email, почтовый адрес, телефон, комментарий к заказу), imagekey - поле для защиты интерактивной формы от спама).
- Параметр Стиль сообщения (ветви) – нужно выбрать стиль, поддерживающий работу с формой и корзиной заказов, например «Каталог / корзина / заказ».
- Необходимо установить право на добавление для данного объекта (wg (3) если заказ делается только авторизованными пользователями и корзина недоступна на просмотр обычным почетителям или wo (6) в противном случае). Если продукты, доступные к заказу имеют права --- 1--, то права корзины должны быть --- 101.
- Параметр права сообщений со значением в зависимости от прав корзины, таким образом, чтобы указываемые здесь права не позволяли пользователям получить доступ на чтение создаваемых заказов: если корзина общедоступна (в правах корзины указана служебная группа), то 1,1,1,0,0,0 в противном случае: 0,0,0,0,0,0 (администратор, обрабатывающй заказы должен выходить в группу root).
- Параметр email подраздела (опционально, если не задан, то берется общий для сайта) – один или несколько адресов электронной почты, разделенные запятыми, на которые будет высылаться копия заказа при его оформлении на сайте.
- Сделать каталог. Создать объект, который будет корнем каталога продукции на вашем сайте. Параметры:
- Прежде всего, чтобы создать каталог продукции с корзиной Параметр Обработчик (handler) = catbas
- Параметр Стиль ветви – нужно выбрать стиль, поддерживающий работу с формой и корзиной заказов, например «Каталог / корзина / заказ».
- В корне сайта или каталога продукции нужно добавить параметр id корзины указав id объекта, являющегося корзиной на сайте. При использовании нескольких разных корзин на сайте параметр «id корзины» нужно задавать в корне ветви, для которой выбранная корзина является актуальной. Т.е. каталог работает всегда с той корзиной, id которой он получает из действующего значения параметра «id корзины» на текущей странице каталога. Если корзин на сайте несколько, товары, добавленные в одну, будут доступны также и во всех остальных заказов, вам потребуется создать два объекта - сам каталог и корзину заказов.
- Во все продукты нужно добавить параметр продукт (prod_is)
- При желании можно настроить внещний вид каталога и корзины заказов с помощью параметров из группы «оформление» и css классов.
- При желании можно создать блок, отображающий текущее состояние корзины заказов
- Необходимо здать в блоке параметр функция выбора (block_where_func) со значением «корзина» (func_basket).
- В условии показа блока можно использовать выражение '$PARAMS[basket_count]'>0 – показ блока, только когда в корзине что-то есть.
Для быстрого добавления нужных параметров на ваш сайт через импорт (в JM) можете использовать:
обязательные параметры:
name;description;priority;longdescription;type;value;required;storage;group_name
prod;ПРОДУКТ;1300;;;;;;
prod_is;Продукт;1070;;check;;0;1;prod
prod_price;Цена, руб;1030;;number;;0;1;prod
prod_basket_id;id корзины;1000;;text;;0;1;prod
форма заказа:
name;description;priority;longdescription;type;value;required;storage;group_name
order;ФОРМА ЗАКАЗ;1030;;;;;;
order_name;Фамилия, имя;1060;"selected=$USER[name]";text;;1;1;order
order_email;E-mail;1050;"selected=$USER[email]";text;;0;1;order
order_address;Адрес;1040;"selected=$USER[user_address]";text;;1;1;order
order_tel;Телефон;1030;"selected=$USER[user_tel]";text;;1;1;order
order_text;Примечания;1020;"";textarea;;0;1;order
order_prod;Заказанная продукция;1010;;textarea;;0;1;order
дополнительные параметры продуктов:
name;description;priority;longdescription;type;value;required;storage;group_name
prod_rating;рейтинг;1010;;text;;0;1;prod
prod_new;Новинка;1050;;check;;0;1;prod
prod_brand;Производитель;1040;;text;;0;1;prod
После импорта сделайте отдельными полями: параметр prod_is и (если требуется) другие параметры, которые поанируете использовать для выборок.
После создания каталога с заказом, дополнительно вам могут потребоваться параметры для управления мультивалютным магазином (например, если вам нужно задавать цены в долларах, но магазин при этом, для посетиетелей должен работать в рублях), а также дополнительные параметры цен и единиц измерений, в случае, если у одного и того же товара может быть несколько цен в зависимости от выбранной опции (например: одна цена - за канистру, другая - за цистерну одного и того же продукта).
Пример для импорта корзины заказов
mess_header;site_home_page;handler;view_block;view_get_childs;view_menu_child_no;view_conf;form_name;form_header;form_submit;form_text_ok;form_rights;jmanager_conf
#заголовок;#домашняя страница;#обработчик;#стиль ветви;#получение дочерних;#не включать дочерние в меню;#настройки отображения;#имя формы или параметра;#заголовок формы;#кнопка submit;#текст при записи;#права сообщений x,x,x,y,y,y;#настройки менеджера
Заказ;basket;catbas;catbas;2;1;#showimg=1\nmodekey=2\ncolors=,,,\nkeywidth=0\nkeyheight=0;order,imagekey;Оформление заказа;Заказать;Спасибо, заказ получен. Мы свяжемся с вами в течение суток. Номер заказа:;1,1,1,0,0,0;ajax=1\nupdateblocks[]=418\n#updateblocks[]=792\n#updateblocks[]=793\ncompare=1\npos=0\ncnt=1\ncntint=1\nut=1\nprice=1\ninwords=1\nkop=0\nprint=1\nrating=1\nxml=1\nxmlname=order.xml\nemail=0
| |