Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Интеграция Drupal и VaM Shop
osCommerce по-русски. Форум. > Kлоны osCommerce, CMS и osCommerce > CMS и osCommerce
VaM
В данной статье будет рассказано, как связать между собой VaM Shop и Drupal.

Что имеется в виду под интеграцией?
Под интеграцией Drupal и VaM Shop имеется в виду общая авторизация пользователей и синхронизация их учетной и профильной информации.
Интеграция Drupal и VaM Shop - это общая база пользователей и общая авторизация, т.е. входя под своим логином/паролем на Drupal, Вы авторизуетесь и в магазине VaM Shop, также и наоборот.
Главная идея в том, что не нужно два раза регистрироваться (отдельно в Drupal и отдельно в магазине) и входить два раза (сначала в Drupal, затем в магазин), а также два раза менять свои пользовательские данные.

Требования к версиям:
Drupal версии 5 или 6.
VaM Shop версии 1.41 и выше.

Скачать Drupal можно на официальном сайте: http://drupal.org/download
Скачать VaM Shop можно на официальном сайте: http://vamshop.ru/shop/shop_content.php/co...ja-demo-versija

Настройка состоит из двух частей:
Настройки VaM Shop
Настройка Drupal

Настройки VaM Shop

1. Скачайте модуль vamshop_api - http://vamshop.ru/sites/default/files/vamshop_api.zip
2. Переписывайте архив vamshop_api.zip в папку /admin/contributions.
3. В Админке - Модули - Установка модулей устанавливайте модуль vamshop_api.zip.

На этом настройка VaM Shop закончена, переходим к настройке Drupal.

Настройка Drupal

Предположим, что у нас есть сайт на Drupal - http://site.ru
Предположим, что у нас есть магазин на VaM Shop - http://site.ru/shop

Всё дальнейшие действия будут описываться исходя из данного предположения.

Теперь условия, которые должны быть выполнены обязательно, что б всё работало правильно:
1. Drupal и VaM Shop должны быть устновлены в одном домене (например site.ru и site.ru/shop).
2. При установке Drupal и магазина должны быть указаны одинаковые email адрес и пароль для входа в админку друпала и магазина.
3. Drupal и VaM Shop могут быть установлены в разные базы данных, не обязательно всё ставить в одну базу.

Итак, допустим, Вы установили Drupal и магазин.

1. Скачиваем модуль vamshop для друпал - http://vamshop.ru/sites/default/files/drupal-vamshop.zip
2. Переписываем папку vamshop из архива в папку друпала /sites/all/modules.
3. Если у Вас 6 версия друпала, убедитесь, что в файле /sites/all/modules/vamshop/vamshop.module в константе VAMSHOP_DRUPAL_MODULE_VERSION указано 6 (если у Вас друпал 5 версии, поменяйте значение на 5).
4. Теперь нам нужно установить модуль vamshop в друпале, но перед этим откройте в браузере магазин, зайдите (авторизуйтесь) как администратор магазина, т.е. укажите email/пароль справа, в боксе вход.
5. Заходите в админку друпала - модули (/admin/build/modules), устанавливайте модуль vamshop.
6. Заходите в настройки модуля vamshop (/admin/settings/vamshop).
7. В опциях VaM Shop shop root path: и Path to VaM Shop api file: укажите абсолютный (полный) путь до магазина, например /home/site.ru/www/vamshop/.
8. В опции Select master registration system укажите Drupal master.
9. Убедитесь, что у Вас открыт в браузере магазин и Вы авторизованы как админ.
10. Нажмийте в друпале, на странице настроек модуля vamshop кнопку Save configuration.
11. Затем смотрите на странице настроек модуля vamshop в друпале сверху сообщения, если все сообщения зелёные (Successfully), значит всё нормально, Вы всё установили и всё правильно настроили.
Если выводится ошибка - You are not authenticated in VaM Shop now.
или похожая в последней строке. Попробуйте вернуться к магазину, нажать выход и зайти ещё раз в магазин под администраторским паролем.
Затем вернитесь на страницу настроек модуля vamshop в друпале, должно быть зелёное сообщение типа - Successfully authenticated VaM Shop user: vam@test.ru.

12. В настройках блоков, после установки модуля vamshop появится блок VaM Shop: Hidden authentication.
Если вы прошли успешно тест аутентификации в настройках модуля, включите его.

Для настройки синхронизации общих полей пользовательской информации вам надо создать необходимые поля в настройках модуля Профиль.
Имена полей по умолчанию вы можете посмотреть в настройках модуля vamshop. Вы можете изменить их, если у вас уже есть поля с другими именами.

13. Как проверить, работает ли интеграция?!

Выйдите из друпала и магазина (logout).
Зарегистрируйте новый логин в друпале /user/register и зайдите под этим логином.

Теперь просто в браузере откройте магазин http://site.ru/shop, если всё сделано правильно, в магазине Вы тоже будете авторизованы, т.е. сверху будет закладка Выход, это значит что Вы вошли в магазин под своим паролем.

14. Затем откройте конфиг файлы магазина VaM Shop, т.е. файлы:
/includes/configure.php
/admin/includes/configure.php

и в константе DIR_FS_SITE_ROOT укажите абсолютный (полный) путь до корневой папки друпала, примерно так (у Вас конечно свой путь будет):
Код
define('DIR_FS_SITE_ROOT','/home/user/public_html/');


На этом всё!

Предупреждения:

Интеграция Drupal и VaM Shop опробована на нескольких рабочих сайтах Drupal + VaM Shop, т.е. код вполне опробованный и работоспособный.
Однако, нельзя дать никаких гарантий, что на вашем конкретном хостинге и ваших конкретных настройках и действих ваша установка будет работоспособна, а ее работа будет соответствовать вашим ожиданиям.
Вы делаете всё на свой страх и риск, перед любыми манипуляциями делайте резервные копии файлов и базы данных.
Мы рекомендуем вам устанвить модули на тестовой машине и убедиться в их работоспособности, и только потом использовать всё на рабочем сайте.

Если что-то не понятно, не получается, спрашивайте.
bozhenko
Цитата(VaM @ 7.4.2008, 1:16) *
Предупреждения:

Интеграция Drupal и VaM Shop опробована на нескольких рабочих сайтах Drupal + VaM Shop, т.е. код вполне опробованный и работоспособный.
Однако, нельзя дать никаких гарантий, что на вашем конкретном хостинге и ваших конкретных настройках и действих ваша установка будет работоспособна, а ее работа будет соответствовать вашим ожиданиям.
Вы делаете всё на свой страх и риск, перед любыми манипуляциями делайте резервные копии файлов и базы данных.
Мы рекомендуем вам устанвить модули на тестовой машине и убедиться в их работоспособности, и только потом использовать всё на рабочем сайте.

Если что-то не понятно, не получается, спрашивайте.

Вопрос есть. Когда мы устанавливаем патчи на VaMShop - многие наши труды по адаптации слетают, приходится делать заново. Насколько данная штука уязвима в этом плане? придётся ли это делать после каждого патча?
VaM
Перед установкой патча (при обновлении VaM Shop на новую версию), жалательно (патч может и не затронуть изменения vamshop_api, а может и затронуть), в Админке - Модули - Установка модулей удаляете vamshop_api, ставите патч, снова ставите vamshop_api.

Пока что только так, из-за структуры кода магазина, "по-нормальному", что б модули не затрагивали ядро магазина, на данном этапе сделать не получится.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.